* config/tc-ppc.c (ppc_lglobl): Do the right thing.
authorIan Lance Taylor <ian@airs.com>
Wed, 1 Nov 1995 00:00:47 +0000 (00:00 +0000)
committerIan Lance Taylor <ian@airs.com>
Wed, 1 Nov 1995 00:00:47 +0000 (00:00 +0000)
gas/ChangeLog
gas/config/tc-ppc.c

index 7610363e8369980daa866e7a8e6f75085ad15b7b..8f2fee2e4d408080bafb1c463256cd9792f1eb98 100644 (file)
@@ -23,6 +23,8 @@ Tue Oct 31 16:34:28 1995  David Mosberger-Tang  <davidm@azstarnet.com>
 
 Tue Oct 31 13:29:08 1995  Ian Lance Taylor  <ian@cygnus.com>
 
+       * config/tc-ppc.c (ppc_lglobl): Do the right thing.
+
        * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
        (ppc_eb): Likewise.  Set the storage class to C_BLOCK, not C_FCN.
        (ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
index f2d9b22a35e30b17ee945557f6eb478c97981a7c..80e432e9246326b4d60c553ef7d5a6877e653bd1 100644 (file)
@@ -2086,15 +2086,26 @@ ppc_extern (ignore)
   demand_empty_rest_of_line ();
 }
 
-/* The .lglobl pseudo-op.  I think the RS/6000 assembler only needs
-   this because it can't handle undefined symbols.  I think we can
-   just ignore it.  */
+/* The .lglobl pseudo-op.  Keep the symbol in the symbol table.  */
 
 static void
 ppc_lglobl (ignore)
      int ignore;
 {
-  s_ignore (0);
+  char *name;
+  char endc;
+  symbolS *sym;
+
+  name = input_line_pointer;
+  endc = get_symbol_end ();
+
+  sym = symbol_find_or_make (name);
+
+  *input_line_pointer = endc;
+
+  sym->sy_tc.output = 1;
+
+  demand_empty_rest_of_line ();
 }
 
 /* The .rename pseudo-op.  The RS/6000 assembler can rename symbols,