diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2002-10-19 00:37:50 +0000 |
---|---|---|
committer | Alexandre Oliva <aoliva@redhat.com> | 2002-10-19 00:37:50 +0000 |
commit | 6fd23dcb040d040a8129016adec94b6ef8f32178 (patch) | |
tree | 450ed2d73c76a9f6fc1750d53be38c4868465640 | |
parent | 147de71d79a2ba77e07845bc0c8d6e73582a2b12 (diff) | |
download | binutils-redhat-6fd23dcb040d040a8129016adec94b6ef8f32178.tar.gz |
* config/tc-mips.c (md_begin): Add $fcc registers to the symbol
table as register names.
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-mips.c | 14 |
2 files changed, 19 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index f3cb90de6b..1c9ee5bab1 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2002-10-18 Alexandre Oliva <aoliva@redhat.com> + + * config/tc-mips.c (md_begin): Add $fcc registers to the symbol + table as register names. + 2002-10-18 Ulrich Weigand <uweigand@de.ibm.com> * config/tc-s390.c (md_parse_option): Set s390_arch_size to 32 diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 5a30e51ab1..de49657b3f 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -1223,6 +1223,20 @@ md_begin () symbol_table_insert (symbol_new ("$pc", reg_section, -1, &zero_address_frag)); + /* If we don't add these register names to the symbol table, they + may end up being added as regular symbols by operand(), and then + make it to the object file as undefined in case they're not + regarded as local symbols. They're local in o32, since `$' is a + local symbol prefix, but not in n32 or n64. */ + for (i = 0; i < 8; i++) + { + char buf[6]; + + sprintf (buf, "$fcc%i", i); + symbol_table_insert (symbol_new (buf, reg_section, -1, + &zero_address_frag)); + } + mips_no_prev_insn (false); mips_gprmask = 0; |