aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-ppc.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1995-11-01 00:00:47 +0000
committerIan Lance Taylor <ian@airs.com>1995-11-01 00:00:47 +0000
commitb629f627675e1328f11f8c40bad9364c6d9958c1 (patch)
tree1cbd17d935191becfdfca1dcfdb11402a81dd6d9 /gas/config/tc-ppc.c
parenta99d0ef1ea9b44d547e0b94e797d18ef70148de4 (diff)
downloadgdb-b629f627675e1328f11f8c40bad9364c6d9958c1.zip
gdb-b629f627675e1328f11f8c40bad9364c6d9958c1.tar.gz
gdb-b629f627675e1328f11f8c40bad9364c6d9958c1.tar.bz2
* config/tc-ppc.c (ppc_lglobl): Do the right thing.
Diffstat (limited to 'gas/config/tc-ppc.c')
-rw-r--r--gas/config/tc-ppc.c19
1 files changed, 15 insertions, 4 deletions
diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
index f2d9b22..80e432e 100644
--- a/gas/config/tc-ppc.c
+++ b/gas/config/tc-ppc.c
@@ -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,