From 3396de367a522c2e10a68389b48fc9e944d7cc04 Mon Sep 17 00:00:00 2001 From: Thiemo Seufer Date: Thu, 26 Sep 2002 09:56:35 +0000 Subject: /gas/ChangeLog * config/tc-mips.c (CPU_HAS_MIPS16): Add mips-lsi-elf as MIPS16 capable configuration. (macro_build): Check for MIPS16 capability, not for actual MIPS16 code generation. (mips_ip): Likewise. /gas/testsuite/ChangeLog * gas/mips/mips-jalx.d: New file, check jalx assembly. * gas/mips/mips-jalx.s: Likewise. * gas/mips/mips-no-jalx.l: Likewise. * gas/mips/mips-no-jalx.s: Likewise. * gas/mips/mips16-jalx.d: Likewise. * gas/mips/mips16-jalx.s: Likewise. * gas/mips/mips.exp: Add new tests. /opcodes/ChangeLog: * mips-dis.c (print_insn_mips): Always allow disassembly of 32-bit jalx opcode. --- gas/testsuite/ChangeLog | 10 ++++++++++ gas/testsuite/gas/mips/mips-jalx.d | 9 +++++++++ gas/testsuite/gas/mips/mips-jalx.s | 3 +++ gas/testsuite/gas/mips/mips-no-jalx.l | 2 ++ gas/testsuite/gas/mips/mips-no-jalx.s | 3 +++ gas/testsuite/gas/mips/mips.exp | 8 +++++++- gas/testsuite/gas/mips/mips16-jalx.d | 10 ++++++++++ gas/testsuite/gas/mips/mips16-jalx.s | 2 ++ 8 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 gas/testsuite/gas/mips/mips-jalx.d create mode 100644 gas/testsuite/gas/mips/mips-jalx.s create mode 100644 gas/testsuite/gas/mips/mips-no-jalx.l create mode 100644 gas/testsuite/gas/mips/mips-no-jalx.s create mode 100644 gas/testsuite/gas/mips/mips16-jalx.d create mode 100644 gas/testsuite/gas/mips/mips16-jalx.s (limited to 'gas/testsuite') diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 159a617..70db49d 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,5 +1,15 @@ 2002-09-26 Thiemo Seufer + * gas/mips/mips-jalx.d: New file, check jalx assembly. + * gas/mips/mips-jalx.s: Likewise. + * gas/mips/mips-no-jalx.l: Likewise. + * gas/mips/mips-no-jalx.s: Likewise. + * gas/mips/mips16-jalx.d: Likewise. + * gas/mips/mips16-jalx.s: Likewise. + * gas/mips/mips.exp: Add new tests. + +2002-09-26 Thiemo Seufer + * gas/mips/jal-range.s: Fix jump overflow check. * gas/mips/jal-range.l: Likewise. diff --git a/gas/testsuite/gas/mips/mips-jalx.d b/gas/testsuite/gas/mips/mips-jalx.d new file mode 100644 index 0000000..38badd6 --- /dev/null +++ b/gas/testsuite/gas/mips/mips-jalx.d @@ -0,0 +1,9 @@ +#objdump: -dr -mmips:4000 +#as: -mips3 -mtune=r4000 -mips16 +#name: mips jalx +.*: file format .* +Disassembly of section .text: +00000000 <.text>: + 0: 74000000 jalx 0x0 + 0: R_MIPS_26 external_label + 4: 00000000 nop diff --git a/gas/testsuite/gas/mips/mips-jalx.s b/gas/testsuite/gas/mips/mips-jalx.s new file mode 100644 index 0000000..84cbafd --- /dev/null +++ b/gas/testsuite/gas/mips/mips-jalx.s @@ -0,0 +1,3 @@ +# Test the generation of jalx opcodes + .set nomips16 + jalx external_label diff --git a/gas/testsuite/gas/mips/mips-no-jalx.l b/gas/testsuite/gas/mips/mips-no-jalx.l new file mode 100644 index 0000000..7c0e2fe --- /dev/null +++ b/gas/testsuite/gas/mips/mips-no-jalx.l @@ -0,0 +1,2 @@ +.*: Assembler messages: +.*:3: Error: opcode not supported at this ISA level \(mips.*\) `jalx external_label' diff --git a/gas/testsuite/gas/mips/mips-no-jalx.s b/gas/testsuite/gas/mips/mips-no-jalx.s new file mode 100644 index 0000000..84cbafd --- /dev/null +++ b/gas/testsuite/gas/mips/mips-no-jalx.s @@ -0,0 +1,3 @@ +# Test the generation of jalx opcodes + .set nomips16 + jalx external_label diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp index 7a05ee6..aef1908 100644 --- a/gas/testsuite/gas/mips/mips.exp +++ b/gas/testsuite/gas/mips/mips.exp @@ -141,7 +141,13 @@ if { [istarget mips*-*-*] } then { } # The mips16 test can only be run on ELF, because only ELF # supports the necessary mips16 reloc. - if { $elf && !$no_mips16 } { run_dump_test "mips16" } + if { $elf && !$no_mips16 } { + run_dump_test "mips16" + # Check jalx handling + run_dump_test "mips16-jalx" + run_dump_test "mips-jalx" + } + run_list_test "mips-no-jalx" "" run_dump_test "delay" run_dump_test "nodelay" run_dump_test "mips4010" diff --git a/gas/testsuite/gas/mips/mips16-jalx.d b/gas/testsuite/gas/mips/mips16-jalx.d new file mode 100644 index 0000000..cb1cfac --- /dev/null +++ b/gas/testsuite/gas/mips/mips16-jalx.d @@ -0,0 +1,10 @@ +#objdump: -dr -mmips:4000 -mmips:16 +#as: -mips3 -mtune=r4000 -mips16 +#name: mips16 jalx +.*: file format .* +Disassembly of section .text: +00000000 <.text>: + 0: 1c00 0000 jalx 0x0 + 0: R_MIPS16_26 external_label + 4: 6500 nop + 6: 6500 nop diff --git a/gas/testsuite/gas/mips/mips16-jalx.s b/gas/testsuite/gas/mips/mips16-jalx.s new file mode 100644 index 0000000..3665df6 --- /dev/null +++ b/gas/testsuite/gas/mips/mips16-jalx.s @@ -0,0 +1,2 @@ +# Test the generation of jalx opcodes + jalx external_label -- cgit v1.1