diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2000-06-28 19:06:25 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@redhat.com> | 2000-06-28 19:06:25 +0000 |
commit | 2ae7e77be88be49df7fc287199d2a7a4046f9205 (patch) | |
tree | 6a9562b304cd618831a0c47c8e9bf051eab0835b /gas | |
parent | addd3117d72ac1e1b19b7432f3085f3cb5952d13 (diff) | |
download | gdb-2ae7e77be88be49df7fc287199d2a7a4046f9205.zip gdb-2ae7e77be88be49df7fc287199d2a7a4046f9205.tar.gz gdb-2ae7e77be88be49df7fc287199d2a7a4046f9205.tar.bz2 |
16 bit immediate expr support for mips
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 6 | ||||
-rw-r--r-- | gas/config/tc-mips.c | 12 |
2 files changed, 10 insertions, 8 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 9c694b4..aa8f650 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2000-06-27 Aldy Hernandez <aldyh@redhat.com> + + * config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of + expressions. Ignore the problem when handling 16 bit immediates, + because the assembler will take care of the relocation later. + 2000-06-27 Nick Clifton <nickc@cygnus.com> * config/tc-d30v.c (write_2_short): Do not allow opcodes with diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 1b5c9c8..a4d25bc 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -7746,10 +7746,8 @@ mips_ip (str, ip) if (insn + 1 < &mips_opcodes[NUMOPCODES] && !strcmp (insn->name, insn[1].name)) break; - if (imm_expr.X_op != O_constant - && imm_expr.X_op != O_big) - insn_error = _("absolute expression required"); - else + if (imm_expr.X_op == O_constant + || imm_expr.X_op == O_big) as_bad (_("16 bit expression not in range 0..65535")); } } @@ -7785,10 +7783,8 @@ mips_ip (str, ip) { if (more) break; - if (imm_expr.X_op != O_constant - && imm_expr.X_op != O_big) - insn_error = _("absolute expression required"); - else + if (imm_expr.X_op == O_constant + || imm_expr.X_op == O_big) as_bad (_("16 bit expression not in range -32768..32767")); } } |