Similarly to commit
86b24e15c45b ("MIPS/LD/testsuite: Correct
comm-data.exp test ABI/emul/endian arrangement") update the mips-elf.exp
test script to:
- correctly select emulations for targets using non-traditional MIPS
emulations,
- correctly select ABIs for targets that do not support all of them,
- use the default endianness selection where possible to benefit targets
that support only one,
- simplify test invocation by providing ABI-specific `run_dump_test'
wrappers, specifically `run_dump_test_o32', `run_dump_test_n32',
`run_dump_test_n64' and `run_dump_test_eabi', which remove the need to
use conditionals across the Expect script or to repeat ABI-specific
GAS and LD flags with each invocation,
removing numerous test failures for `mips-sgi-irix6', `mips64-openbsd',
`mips64el-openbsd' and `mips64el-ps2-elf' targets and broadening
coverage for several MIPS targets.
There are some new failures for the `mips64el-ps2-elf' target with tests
that were not previously run for that target:
FAIL: MIPS16 link branch to absolute expression (n32)
FAIL: MIPS16 link branch to absolute expression 1 (n32)
FAIL: MIPS16 link branch to absolute expression 2 (n32)
FAIL: microMIPS link branch to absolute expression (n32)
FAIL: MIPS ELF got reloc n32
FAIL: MIPS ELF xgot reloc n32
FAIL: undefined weak symbol overflow (n32)
FAIL: R_MIPS16_HI16 and R_MIPS16_LO16 relocs n32
FAIL: ld-mips-elf/attr-gnu-4-0-n32-ph
FAIL: ld-mips-elf/attr-gnu-4-1-n32-ph
FAIL: ld-mips-elf/attr-gnu-4-2-n32-ph
FAIL: ld-mips-elf/attr-gnu-4-3-n32-ph
FAIL: MIPSr6 JALR reloc unaligned/cross-mode link test (n32)
which are mostly due to dump discrepancies caused by mapping differences
coming from the default linker scripts used by these test cases, or
sometimes because of the specific MIPS processor architecture recorded
in the ELF file taking precedence over the general MIPS ISA level also
recorded. Finally, the R_MIPS16_HI16/R_MIPS16_LO16 relocation test
failure is a preexisting issue with the IRIX style emulation.
These failures will have to be addressed separately.
ld/
* testsuite/ld-mips-elf/mips-elf.exp (run_dump_test_abi)
(run_dump_test_o32, run_dump_test_n32, run_dump_test_n64)
(run_dump_test_eabi): New procedures.
(has_newabi, has_elf32): Remove variables.
(has_abi): New associative array variable.
(abi_asflags, abi_ldflags): Update settings across targets.
(irixemul): New variable.
Replace `run_dump_test' calls where applicable throughout with
`run_dump_test_o32', `run_dump_test_n32', `run_dump_test_n64'
and `run_dump_test_eabi' as appropriate. Remove explicit
passing of `abi_asflags' and `abi_ldflags'. Use `noarch' for
tests that require their own architecture setting. Force the
big endianness for tests that require it. Select the endianness
required for `objdump invocation with the `reloc-2' test.
Conditionalize tests run via `run_ld_link_tests' on the ABI
required and use the ABI list from the `has_abi' array where
appropriate.
* testsuite/ld-mips-elf/attr-gnu-4-0-n32-ph.d: Remove ABI and
endianness selection options from `ld' and `source' tags. Relax
output format matching.
* testsuite/ld-mips-elf/attr-gnu-4-0-n64-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-1-n32-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-1-n64-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-2-n32-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-2-n64-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-3-n32-ph.d: Likewise.
* testsuite/ld-mips-elf/attr-gnu-4-3-n64-ph.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend-micromips-n32.d: Remove
ABI and endianness selection options from `as', `ld', `source'
tags, and also the `-march=from-abi' option. Remove the `as'
tag where it would become empty.
* testsuite/ld-mips-elf/bal-jalx-addend-micromips-n64.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend-micromips.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-addend.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-micromips-n32.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-micromips-n64.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-micromips.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-local-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-local.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n32.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n64.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips.d:
Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-ignore.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-micromips.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-n32.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic-n64.d: Likewise.
* testsuite/ld-mips-elf/bal-jalx-pic.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-addend-n32.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-addend-n64.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-addend.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-n32.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute-n64.d: Likewise.
* testsuite/ld-mips-elf/branch-absolute.d: Likewise.
* testsuite/ld-mips-elf/dyn-sec64.d: Likewise.
* testsuite/ld-mips-elf/eh-frame1-n32.d: Likewise.
* testsuite/ld-mips-elf/eh-frame1-n64.d: Likewise.
* testsuite/ld-mips-elf/eh-frame2-n32.d: Likewise.
* testsuite/ld-mips-elf/eh-frame2-n64.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n32-embed.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n32.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n64-embed.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n64-irix.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-got-n64.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n64-irix.d: Likewise.
* testsuite/ld-mips-elf/elf-rel-xgot-n64.d: Likewise.
* testsuite/ld-mips-elf/emit-relocs-1.d: Likewise.
* testsuite/ld-mips-elf/got-dump-2.d: Likewise.
* testsuite/ld-mips-elf/got-page-2.d: Likewise.
* testsuite/ld-mips-elf/jal-global-overflow-0.d: Likewise.
* testsuite/ld-mips-elf/jal-global-overflow-1.d: Likewise.
* testsuite/ld-mips-elf/jal-local-overflow-0.d: Likewise.
* testsuite/ld-mips-elf/jal-local-overflow-1.d: Likewise.
* testsuite/ld-mips-elf/jalbal.d: Likewise.
* testsuite/ld-mips-elf/jalx-addend-n32.d: Likewise.
* testsuite/ld-mips-elf/jalx-addend-n64.d: Likewise.
* testsuite/ld-mips-elf/jalx-addend.d: Likewise.
* testsuite/ld-mips-elf/jalx-local-n32.d: Likewise.
* testsuite/ld-mips-elf/jalx-local-n64.d: Likewise.
* testsuite/ld-mips-elf/jalx-local.d: Likewise.
* testsuite/ld-mips-elf/jr-to-b-1.d: Likewise.
* testsuite/ld-mips-elf/jr-to-b-2.d: Likewise.
* testsuite/ld-mips-elf/lsi-4010-isa.d: Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-addend-n32.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-addend-n64.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-addend.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-n32.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute-n64.d:
Likewise.
* testsuite/ld-mips-elf/micromips-branch-absolute.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-2.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-3.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-1.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-2.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-addend.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n32-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n32-2.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n32.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n64-1.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n64-2.d:
Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute-n64.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-absolute.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-addend-2.d: Likewise.
* testsuite/ld-mips-elf/mips16-branch-addend-3.d: Likewise.
* testsuite/ld-mips-elf/mips16-hilo-n32.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-0.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-1.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-addend-2.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-addend-6.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-n32-0.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-n32-1.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-0.d: Likewise.
* testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-1.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-0.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-1.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-addend-2.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-addend-6.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-n32-0.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-n32-1.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-0.d: Likewise.
* testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-1.d: Likewise.
* testsuite/ld-mips-elf/multi-got-1.d: Likewise.
* testsuite/ld-mips-elf/multi-got-hidden-1.d: Likewise.
* testsuite/ld-mips-elf/multi-got-hidden-2.d: Likewise.
* testsuite/ld-mips-elf/multi-got-no-shared.d: Likewise.
* testsuite/ld-mips-elf/no-shared-1-n32.d: Likewise.
* testsuite/ld-mips-elf/no-shared-1-n64.d: Likewise.
* testsuite/ld-mips-elf/no-shared-1-o32.d: Likewise.
* testsuite/ld-mips-elf/pic-and-nonpic-2.d: Likewise.
* testsuite/ld-mips-elf/pic-and-nonpic-3-error.d: Likewise.
* testsuite/ld-mips-elf/pic-and-nonpic-4-error.d: Likewise.
* testsuite/ld-mips-elf/pie-n32.d: Likewise.
* testsuite/ld-mips-elf/pie-n64.d: Likewise.
* testsuite/ld-mips-elf/pie-o32.d: Likewise.
* testsuite/ld-mips-elf/rel32-n32.d: Likewise.
* testsuite/ld-mips-elf/rel32-o32.d: Likewise.
* testsuite/ld-mips-elf/rel64.d: Likewise.
* testsuite/ld-mips-elf/relax-jalr-n32.d: Likewise.
* testsuite/ld-mips-elf/reloc-1-n32.d: Likewise.
* testsuite/ld-mips-elf/reloc-1-n64.d: Likewise.
* testsuite/ld-mips-elf/reloc-2.d: Likewise.
* testsuite/ld-mips-elf/reloc-3-n32.d: Likewise.
* testsuite/ld-mips-elf/reloc-local-overflow.d: Likewise.
* testsuite/ld-mips-elf/textrel-1.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-2.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-branch-micromips.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-mips16.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-r6-1.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch-r6-2.d: Likewise.
* testsuite/ld-mips-elf/unaligned-branch.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-0.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-1.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-2.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-3.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-0.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-0.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d:
Likewise.
* testsuite/ld-mips-elf/unaligned-jump-micromips.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jump-mips16.d: Likewise.
* testsuite/ld-mips-elf/unaligned-jump.d: Likewise.
* testsuite/ld-mips-elf/unaligned-ldpc-0.d: Likewise.
* testsuite/ld-mips-elf/unaligned-ldpc-1.d: Likewise.
* testsuite/ld-mips-elf/unaligned-lwpc-0.d: Likewise.
* testsuite/ld-mips-elf/unaligned-lwpc-1.d: Likewise.
+2018-07-12 Maciej W. Rozycki <macro@mips.com>
+
+ * testsuite/ld-mips-elf/mips-elf.exp (run_dump_test_abi)
+ (run_dump_test_o32, run_dump_test_n32, run_dump_test_n64)
+ (run_dump_test_eabi): New procedures.
+ (has_newabi, has_elf32): Remove variables.
+ (has_abi): New associative array variable.
+ (abi_asflags, abi_ldflags): Update settings across targets.
+ (irixemul): New variable.
+ Replace `run_dump_test' calls where applicable throughout with
+ `run_dump_test_o32', `run_dump_test_n32', `run_dump_test_n64'
+ and `run_dump_test_eabi' as appropriate. Remove explicit
+ passing of `abi_asflags' and `abi_ldflags'. Use `noarch' for
+ tests that require their own architecture setting. Force the
+ big endianness for tests that require it. Select the endianness
+ required for `objdump invocation with the `reloc-2' test.
+ Conditionalize tests run via `run_ld_link_tests' on the ABI
+ required and use the ABI list from the `has_abi' array where
+ appropriate.
+ * testsuite/ld-mips-elf/attr-gnu-4-0-n32-ph.d: Remove ABI and
+ endianness selection options from `ld' and `source' tags. Relax
+ output format matching.
+ * testsuite/ld-mips-elf/attr-gnu-4-0-n64-ph.d: Likewise.
+ * testsuite/ld-mips-elf/attr-gnu-4-1-n32-ph.d: Likewise.
+ * testsuite/ld-mips-elf/attr-gnu-4-1-n64-ph.d: Likewise.
+ * testsuite/ld-mips-elf/attr-gnu-4-2-n32-ph.d: Likewise.
+ * testsuite/ld-mips-elf/attr-gnu-4-2-n64-ph.d: Likewise.
+ * testsuite/ld-mips-elf/attr-gnu-4-3-n32-ph.d: Likewise.
+ * testsuite/ld-mips-elf/attr-gnu-4-3-n64-ph.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-addend-micromips-n32.d: Remove
+ ABI and endianness selection options from `as', `ld', `source'
+ tags, and also the `-march=from-abi' option. Remove the `as'
+ tag where it would become empty.
+ * testsuite/ld-mips-elf/bal-jalx-addend-micromips-n64.d:
+ Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-addend-micromips.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-addend-n32.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-addend-n64.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-addend.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-local-micromips-n32.d:
+ Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-local-micromips-n64.d:
+ Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-local-micromips.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-local-n32.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-local-n64.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-local.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n32.d:
+ Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips-n64.d:
+ Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-ignore-micromips.d:
+ Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-ignore-n32.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-ignore-n64.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-ignore.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n32.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-micromips-n64.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-micromips.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-n32.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic-n64.d: Likewise.
+ * testsuite/ld-mips-elf/bal-jalx-pic.d: Likewise.
+ * testsuite/ld-mips-elf/branch-absolute-addend-n32.d: Likewise.
+ * testsuite/ld-mips-elf/branch-absolute-addend-n64.d: Likewise.
+ * testsuite/ld-mips-elf/branch-absolute-addend.d: Likewise.
+ * testsuite/ld-mips-elf/branch-absolute-n32.d: Likewise.
+ * testsuite/ld-mips-elf/branch-absolute-n64.d: Likewise.
+ * testsuite/ld-mips-elf/branch-absolute.d: Likewise.
+ * testsuite/ld-mips-elf/dyn-sec64.d: Likewise.
+ * testsuite/ld-mips-elf/eh-frame1-n32.d: Likewise.
+ * testsuite/ld-mips-elf/eh-frame1-n64.d: Likewise.
+ * testsuite/ld-mips-elf/eh-frame2-n32.d: Likewise.
+ * testsuite/ld-mips-elf/eh-frame2-n64.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-got-n32-embed.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-got-n32.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-got-n64-embed.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-got-n64-irix.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-got-n64.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-xgot-n64-irix.d: Likewise.
+ * testsuite/ld-mips-elf/elf-rel-xgot-n64.d: Likewise.
+ * testsuite/ld-mips-elf/emit-relocs-1.d: Likewise.
+ * testsuite/ld-mips-elf/got-dump-2.d: Likewise.
+ * testsuite/ld-mips-elf/got-page-2.d: Likewise.
+ * testsuite/ld-mips-elf/jal-global-overflow-0.d: Likewise.
+ * testsuite/ld-mips-elf/jal-global-overflow-1.d: Likewise.
+ * testsuite/ld-mips-elf/jal-local-overflow-0.d: Likewise.
+ * testsuite/ld-mips-elf/jal-local-overflow-1.d: Likewise.
+ * testsuite/ld-mips-elf/jalbal.d: Likewise.
+ * testsuite/ld-mips-elf/jalx-addend-n32.d: Likewise.
+ * testsuite/ld-mips-elf/jalx-addend-n64.d: Likewise.
+ * testsuite/ld-mips-elf/jalx-addend.d: Likewise.
+ * testsuite/ld-mips-elf/jalx-local-n32.d: Likewise.
+ * testsuite/ld-mips-elf/jalx-local-n64.d: Likewise.
+ * testsuite/ld-mips-elf/jalx-local.d: Likewise.
+ * testsuite/ld-mips-elf/jr-to-b-1.d: Likewise.
+ * testsuite/ld-mips-elf/jr-to-b-2.d: Likewise.
+ * testsuite/ld-mips-elf/lsi-4010-isa.d: Likewise.
+ * testsuite/ld-mips-elf/micromips-branch-absolute-addend-n32.d:
+ Likewise.
+ * testsuite/ld-mips-elf/micromips-branch-absolute-addend-n64.d:
+ Likewise.
+ * testsuite/ld-mips-elf/micromips-branch-absolute-addend.d:
+ Likewise.
+ * testsuite/ld-mips-elf/micromips-branch-absolute-n32.d:
+ Likewise.
+ * testsuite/ld-mips-elf/micromips-branch-absolute-n64.d:
+ Likewise.
+ * testsuite/ld-mips-elf/micromips-branch-absolute.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-2.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-3.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-1.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-2.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-addend-1.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32-1.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64-1.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-addend.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-n32-1.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-n32-2.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-n32.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-n64-1.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-n64-2.d:
+ Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute-n64.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-absolute.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-addend-2.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-branch-addend-3.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-hilo-n32.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-pcrel-0.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-pcrel-1.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-pcrel-addend-2.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-pcrel-addend-6.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-pcrel-n32-0.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-pcrel-n32-1.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-0.d: Likewise.
+ * testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-1.d: Likewise.
+ * testsuite/ld-mips-elf/mips16e2-pcrel-0.d: Likewise.
+ * testsuite/ld-mips-elf/mips16e2-pcrel-1.d: Likewise.
+ * testsuite/ld-mips-elf/mips16e2-pcrel-addend-2.d: Likewise.
+ * testsuite/ld-mips-elf/mips16e2-pcrel-addend-6.d: Likewise.
+ * testsuite/ld-mips-elf/mips16e2-pcrel-n32-0.d: Likewise.
+ * testsuite/ld-mips-elf/mips16e2-pcrel-n32-1.d: Likewise.
+ * testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-0.d: Likewise.
+ * testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-1.d: Likewise.
+ * testsuite/ld-mips-elf/multi-got-1.d: Likewise.
+ * testsuite/ld-mips-elf/multi-got-hidden-1.d: Likewise.
+ * testsuite/ld-mips-elf/multi-got-hidden-2.d: Likewise.
+ * testsuite/ld-mips-elf/multi-got-no-shared.d: Likewise.
+ * testsuite/ld-mips-elf/no-shared-1-n32.d: Likewise.
+ * testsuite/ld-mips-elf/no-shared-1-n64.d: Likewise.
+ * testsuite/ld-mips-elf/no-shared-1-o32.d: Likewise.
+ * testsuite/ld-mips-elf/pic-and-nonpic-2.d: Likewise.
+ * testsuite/ld-mips-elf/pic-and-nonpic-3-error.d: Likewise.
+ * testsuite/ld-mips-elf/pic-and-nonpic-4-error.d: Likewise.
+ * testsuite/ld-mips-elf/pie-n32.d: Likewise.
+ * testsuite/ld-mips-elf/pie-n64.d: Likewise.
+ * testsuite/ld-mips-elf/pie-o32.d: Likewise.
+ * testsuite/ld-mips-elf/rel32-n32.d: Likewise.
+ * testsuite/ld-mips-elf/rel32-o32.d: Likewise.
+ * testsuite/ld-mips-elf/rel64.d: Likewise.
+ * testsuite/ld-mips-elf/relax-jalr-n32.d: Likewise.
+ * testsuite/ld-mips-elf/reloc-1-n32.d: Likewise.
+ * testsuite/ld-mips-elf/reloc-1-n64.d: Likewise.
+ * testsuite/ld-mips-elf/reloc-2.d: Likewise.
+ * testsuite/ld-mips-elf/reloc-3-n32.d: Likewise.
+ * testsuite/ld-mips-elf/reloc-local-overflow.d: Likewise.
+ * testsuite/ld-mips-elf/textrel-1.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch-2.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d:
+ Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d:
+ Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d:
+ Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch-micromips.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch-mips16.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch-r6-1.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch-r6-2.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-branch.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-jalx-addend-0.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-jalx-addend-1.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-jalx-addend-2.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-jalx-addend-3.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-0.d:
+ Likewise.
+ * testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d:
+ Likewise.
+ * testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-0.d:
+ Likewise.
+ * testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d:
+ Likewise.
+ * testsuite/ld-mips-elf/unaligned-jump-micromips.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-jump-mips16.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-jump.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-ldpc-0.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-ldpc-1.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-lwpc-0.d: Likewise.
+ * testsuite/ld-mips-elf/unaligned-lwpc-1.d: Likewise.
+
2018-07-12 Maciej W. Rozycki <macro@mips.com>
* testsuite/ld-mips-elf/mips-elf.exp: Limit reloc 6 tests to
-#source: attr-gnu-4-0.s -mips3 -n32 -EB
-#ld: -melf32btsmipn32 -e 0
+#source: attr-gnu-4-0.s -mips3
+#ld: -e 0
#objdump: -p
-[^:]*: file format elf32-ntradbigmips
+[^:]*: file format elf32-n.*mips.*
Program Header:
0x70000003 off 0x000000.. vaddr 0x100000.. paddr 0x100000.. align 2\*\*3
-#source: attr-gnu-4-0.s -mips3 -64 -EB
-#ld: -melf64btsmip -e 0
+#source: attr-gnu-4-0.s -mips3
+#ld: -e 0
#objdump: -p
-[^:]*: file format elf64-tradbigmips
+[^:]*: file format elf64-.*mips.*
Program Header:
0x70000003 off 0x00000000000000b0 vaddr 0x00000001200000b0 paddr 0x00000001200000b0 align 2\*\*3
-#source: empty.s -mips3 -n32 -EB
-#ld: -melf32btsmipn32 -e 0
+#source: empty.s -mips3
+#ld: -e 0
#objdump: -p
-[^:]*: file format elf32-ntradbigmips
+[^:]*: file format elf32-n.*mips.*
Program Header:
0x70000003 off 0x000000.. vaddr 0x100000.. paddr 0x100000.. align 2\*\*3
-#source: empty.s -mips3 -64 -EB
-#ld: -melf64btsmip -e 0
+#source: empty.s -mips3
+#ld: -e 0
#objdump: -p
-[^:]*: file format elf64-tradbigmips
+[^:]*: file format elf64-.*mips.*
Program Header:
0x70000003 off 0x00000000000000b0 vaddr 0x00000001200000b0 paddr 0x00000001200000b0 align 2\*\*3
-#source: empty.s -mips3 -n32 -msingle-float -EB
-#ld: -melf32btsmipn32 -e 0
+#source: empty.s -mips3 -msingle-float
+#ld: -e 0
#objdump: -p
-[^:]*: file format elf32-ntradbigmips
+[^:]*: file format elf32-n.*mips.*
Program Header:
0x70000003 off 0x000000.. vaddr 0x100000.. paddr 0x100000.. align 2\*\*3
-#source: empty.s -mips3 -64 -msingle-float -EB
-#ld: -melf64btsmip -e 0
+#source: empty.s -mips3 -msingle-float
+#ld: -e 0
#objdump: -p
-[^:]*: file format elf64-tradbigmips
+[^:]*: file format elf64-.*mips.*
Program Header:
0x70000003 off 0x00000000000000b0 vaddr 0x00000001200000b0 paddr 0x00000001200000b0 align 2\*\*3
-#source: empty.s -mips3 -n32 -msingle-float -EB
-#ld: -melf32btsmipn32 -e 0
+#source: empty.s -mips3 -msingle-float
+#ld: -e 0
#objdump: -p
-[^:]*: file format elf32-ntradbigmips
+[^:]*: file format elf32-n.*mips.*
Program Header:
0x70000003 off 0x000000.. vaddr 0x100000.. paddr 0x100000.. align 2\*\*3
-#source: empty.s -mips3 -64 -msoft-float -EB
-#ld: -melf64btsmip -e 0
+#source: empty.s -mips3 -msoft-float
+#ld: -e 0
#objdump: -p
-[^:]*: file format elf64-tradbigmips
+[^:]*: file format elf64-.*mips.*
Program Header:
0x70000003 off 0x00000000000000b0 vaddr 0x00000001200000b0 paddr 0x00000001200000b0 align 2\*\*3
#name: microMIPS BAL/JALX addend calculation (n32)
#source: ../../../gas/testsuite/gas/mips/branch-addend-micromips.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: bal-jalx-addend-micromips.d
#name: microMIPS BAL/JALX addend calculation (n64)
#source: ../../../gas/testsuite/gas/mips/branch-addend-micromips.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: bal-jalx-addend-micromips.d
#name: microMIPS BAL/JALX addend calculation
#source: ../../../gas/testsuite/gas/mips/branch-addend-micromips.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: MIPS BAL/JALX addend calculation (n32)
#source: ../../../gas/testsuite/gas/mips/branch-addend.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: bal-jalx-addend.d
#name: MIPS BAL/JALX addend calculation (n64)
#source: ../../../gas/testsuite/gas/mips/branch-addend.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: bal-jalx-addend.d
#name: MIPS BAL/JALX addend calculation
#source: ../../../gas/testsuite/gas/mips/branch-addend.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: microMIPS BAL to JALX conversion for local symbol (n32)
#source: ../../../gas/testsuite/gas/mips/branch-local-7.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: bal-jalx-local-micromips.d
#name: microMIPS BAL to JALX conversion for local symbol (n64)
#source: ../../../gas/testsuite/gas/mips/branch-local-7.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: bal-jalx-local-micromips.d
#name: microMIPS BAL to JALX conversion for local symbol
#source: ../../../gas/testsuite/gas/mips/branch-local-7.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: MIPS BAL to JALX conversion for local symbol (n32)
#source: ../../../gas/testsuite/gas/mips/branch-local-4.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: bal-jalx-local.d
#name: MIPS BAL to JALX conversion for local symbol (n64)
#source: ../../../gas/testsuite/gas/mips/branch-local-4.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: bal-jalx-local.d
#name: MIPS BAL to JALX conversion for local symbol
#source: ../../../gas/testsuite/gas/mips/branch-local-4.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: microMIPS BAL/JALX in PIC mode (ignore branch ISA, n32)
#source: ../../../gas/testsuite/gas/mips/branch-addend-micromips.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
#objdump: -dr --prefix-addresses --show-raw-insn
#target: [check_shared_lib_support]
#dump: bal-jalx-pic-ignore-micromips.d
#name: microMIPS BAL/JALX in PIC mode (ignore branch ISA, n64)
#source: ../../../gas/testsuite/gas/mips/branch-addend-micromips.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
#objdump: -dr --prefix-addresses --show-raw-insn
#target: [check_shared_lib_support]
#dump: bal-jalx-pic-ignore-micromips.d
#name: microMIPS BAL/JALX in PIC mode (ignore branch ISA)
#source: ../../../gas/testsuite/gas/mips/branch-addend-micromips.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
#objdump: -dr --prefix-addresses --show-raw-insn
#target: [check_shared_lib_support]
#name: MIPS BAL/JALX in PIC mode (ignore branch ISA, n32)
#source: ../../../gas/testsuite/gas/mips/branch-addend.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
#objdump: -dr --prefix-addresses --show-raw-insn
#target: [check_shared_lib_support]
#dump: bal-jalx-pic-ignore.d
#name: MIPS BAL/JALX in PIC mode (ignore branch ISA, n64)
#source: ../../../gas/testsuite/gas/mips/branch-addend.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
#objdump: -dr --prefix-addresses --show-raw-insn
#target: [check_shared_lib_support]
#dump: bal-jalx-pic-ignore.d
#name: MIPS BAL/JALX in PIC mode (ignore branch ISA)
#source: ../../../gas/testsuite/gas/mips/branch-addend.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared --ignore-branch-isa
#objdump: -dr --prefix-addresses --show-raw-insn
#target: [check_shared_lib_support]
#name: microMIPS BAL/JALX in PIC mode (n32)
#source: ../../../gas/testsuite/gas/mips/branch-addend-micromips.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared
#target: [check_shared_lib_support]
#error: \A[^\n]*: in function `bar':\n
#error: \(\.text\+0x1014\): unsupported branch between ISA modes\Z
#name: microMIPS BAL/JALX in PIC mode (n64)
#source: ../../../gas/testsuite/gas/mips/branch-addend-micromips.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared
#target: [check_shared_lib_support]
#error: \A[^\n]*: in function `bar':\n
#error: \(\.text\+0x1014\): unsupported branch between ISA modes\Z
#name: microMIPS BAL/JALX in PIC mode
#source: ../../../gas/testsuite/gas/mips/branch-addend-micromips.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared
#target: [check_shared_lib_support]
#error: \A[^\n]*: in function `bar':\n
#error: \(\.text\+0x1014\): unsupported branch between ISA modes\Z
#name: MIPS BAL/JALX in PIC mode (n32)
#source: ../../../gas/testsuite/gas/mips/branch-addend.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared
#target: [check_shared_lib_support]
#error: \A[^\n]*: in function `bar':\n
#error: \(\.text\+0x1014\): unsupported branch between ISA modes\Z
#name: MIPS BAL/JALX in PIC mode (n64)
#source: ../../../gas/testsuite/gas/mips/branch-addend.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared
#target: [check_shared_lib_support]
#error: \A[^\n]*: in function `bar':\n
#error: \(\.text\+0x1014\): unsupported branch between ISA modes\Z
#name: MIPS BAL/JALX in PIC mode
#source: ../../../gas/testsuite/gas/mips/branch-addend.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 -shared
+#ld: -Ttext 0x1c000000 -e 0x1c000000 -shared
#target: [check_shared_lib_support]
#error: \A[^\n]*: in function `bar':\n
#error: \(\.text\+0x1014\): unsupported branch between ISA modes\Z
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS link branch to absolute expression with addend (n32)
#source: ../../../gas/testsuite/gas/mips/branch-absolute-addend.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
#dump: branch-absolute-addend.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS link branch to absolute expression with addend (n64)
#source: ../../../gas/testsuite/gas/mips/branch-absolute-addend.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
#dump: branch-absolute-addend.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS link branch to absolute expression with addend
#source: ../../../gas/testsuite/gas/mips/branch-absolute-addend.s
-#as: -EB -32
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS link branch to absolute expression (n32)
#source: ../../../gas/testsuite/gas/mips/branch-absolute.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS link branch to absolute expression (n64)
#source: ../../../gas/testsuite/gas/mips/branch-absolute.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS link branch to absolute expression
#source: ../../../gas/testsuite/gas/mips/branch-absolute.s
-#as: -EB -32
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
.*: +file format .*mips.*
#name: objdump -p print 64-bit values
#source: dyn-sec64.s
-#as: -mips3 -EB -64
-#ld: -Tdyn-sec64.ld -shared -melf64btsmip
+#as: -mips3
+#ld: -Tdyn-sec64.ld -shared
#objdump: -p
.*: .* file format .*
#name: MIPS eh-frame 1, n32
#source: eh-frame1.s
#source: eh-frame1.s
-#as: -march=from-abi -EB -n32 --defsym alignment=2 --defsym fill=0x40
+#as: --defsym alignment=2 --defsym fill=0x40
#readelf: --relocs -wf
-#ld: -shared -melf32btsmipn32 -Teh-frame1.ld
+#ld: -shared -Teh-frame1.ld
#warning: FDE encoding in.*prevents \.eh_frame_hdr table being created.
Relocation section '\.rel\.dyn' .*:
#name: MIPS eh-frame 1, n64
#source: eh-frame1.s
#source: eh-frame1.s
-#as: -march=from-abi -EB -64 --defsym alignment=3 --defsym fill=0x40
+#as: --defsym alignment=3 --defsym fill=0x40
#readelf: --relocs -wf
-#ld: -shared -melf64btsmip -Teh-frame1.ld
+#ld: -shared -Teh-frame1.ld
#warning: FDE encoding in.*prevents \.eh_frame_hdr table being created.
Relocation section '\.rel\.dyn' .*:
#name: MIPS eh-frame 2, n32
#source: eh-frame1.s
#source: eh-frame1.s
-#as: -march=from-abi -EB -n32 --defsym alignment=2 --defsym fill=0
+#as: --defsym alignment=2 --defsym fill=0
#readelf: --relocs -wf
-#ld: -shared -melf32btsmipn32 -Teh-frame1.ld
+#ld: -shared -Teh-frame1.ld
#warning: FDE encoding in.*prevents \.eh_frame_hdr table being created.
Relocation section '\.rel\.dyn' .*:
#name: MIPS eh-frame 2, n64
#source: eh-frame1.s
#source: eh-frame1.s
-#as: -march=from-abi -EB -64 --defsym alignment=3 --defsym fill=0
+#as: --defsym alignment=3 --defsym fill=0
#readelf: --relocs -wf
-#ld: -shared -melf64btsmip -Teh-frame1.ld
+#ld: -shared -Teh-frame1.ld
#warning: FDE encoding in.*prevents \.eh_frame_hdr table being created.
Relocation section '\.rel\.dyn' .*:
#name: MIPS ELF got reloc n32
-#as: -march=from-abi -EB -n32 -KPIC
+#as: -KPIC
#objcopy_objects: -R .MIPS.abiflags
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n32.s RUN_OBJCOPY
#ld:
#name: MIPS ELF got reloc n32
-#as: -march=from-abi -EB -n32 -KPIC
+#as: -KPIC
#objcopy_objects: -R .MIPS.abiflags -K __start
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n32.s RUN_OBJCOPY
#ld:
#name: MIPS ELF got reloc n64
-#as: -march=from-abi -EB -64 -KPIC
+#as: -KPIC
#objcopy_objects: -R .MIPS.abiflags
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s RUN_OBJCOPY
#ld:
#name: MIPS ELF got reloc n64
-#as: -march=from-abi -EB -64 -KPIC
+#as: -KPIC
#objcopy_objects: -R .MIPS.abiflags
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s RUN_OBJCOPY
#ld:
#name: MIPS ELF got reloc n64
-#as: -march=from-abi -EB -64 -KPIC
+#as: -KPIC
#objcopy_objects: -R .MIPS.abiflags
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s RUN_OBJCOPY
#ld:
#name: MIPS ELF xgot reloc n32
-#as: -march=from-abi -EB -n32 -KPIC -xgot
+#as: -KPIC -xgot
#objcopy_objects: -R .MIPS.abiflags -K __start
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n32.s RUN_OBJCOPY
#ld:
#name: MIPS ELF xgot reloc n32
-#as: -march=from-abi -EB -n32 -KPIC -xgot
+#as: -KPIC -xgot
#objcopy_objects: -R .MIPS.abiflags -K __start
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n32.s RUN_OBJCOPY
#ld:
#name: MIPS ELF xgot reloc n64
-#as: -march=from-abi -EB -64 -KPIC -xgot
+#as: -KPIC -xgot
#objcopy_objects: -R .MIPS.abiflags -K __start
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s RUN_OBJCOPY
#ld:
#name: MIPS ELF xgot reloc n64
-#as: -march=from-abi -EB -64 -KPIC -xgot
+#as: -KPIC -xgot
#objcopy_objects: -R .MIPS.abiflags -K __start
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s RUN_OBJCOPY
#ld:
#name: MIPS ELF xgot reloc n64
-#as: -march=from-abi -EB -64 -KPIC -xgot
+#as: -KPIC -xgot
#objcopy_objects: -R .MIPS.abiflags -K __start
#source: ../../../gas/testsuite/gas/mips/elf-rel-got-n64.s RUN_OBJCOPY
#ld:
#name: Emit relocs 1
-#source: emit-relocs-1a.s -march=from-abi -mabi=n32 -EB
-#source: emit-relocs-1b.s -march=from-abi -mabi=n32 -EB
-#ld: -q -T emit-relocs-1.ld -melf32btsmipn32
+#source: emit-relocs-1a.s
+#source: emit-relocs-1b.s
+#ld: -q -T emit-relocs-1.ld
#objdump: -sr
.*: file format .*
#name: GOT dump (readelf -A) test 2
#source: got-dump-2.s
-#as: -mips3 -EB -64
-#ld: -Tgot-dump-2.ld -shared -melf64btsmip
+#as: -mips3
+#ld: -Tgot-dump-2.ld -shared
#readelf: -A
Primary GOT:
#name: GOT page test 2
#source: got-page-2.s
-#as: -march=from-abi -EB -n32
-#ld: -T got-page-1.ld -shared -melf32btsmipn32
+#ld: -T got-page-1.ld -shared
#readelf: -d
#
# There should be 10 page entries and 2 reserved entries
#name: MIPS JAL to global symbol overflow 0
#source: jal-global-overflow.s
-#as: -EB -32
-#ld: -EB -Ttext 0x20000000 -e 0x20000000
+#ld: -Ttext 0x20000000 -e 0x20000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: MIPS JAL to global symbol overflow 1
#source: jal-global-overflow.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1fffd000 -e 0x1fffd000
+#ld: -Ttext 0x1fffd000 -e 0x1fffd000
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x2000\): relocation truncated to fit: R_MIPS_26 against `abar'\n
#error: [^\n]*: in function `bar':\n
#name: MIPS JAL to local symbol overflow 0
#source: jal-local-overflow.s
-#as: -EB -32
-#ld: -EB -Ttext 0x20000000 -e 0x20000000
+#ld: -Ttext 0x20000000 -e 0x20000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: jal-global-overflow-0.d
#name: MIPS JAL to local symbol overflow 1
#source: jal-local-overflow.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1fffd000 -e 0x1fffd000
+#ld: -Ttext 0x1fffd000 -e 0x1fffd000
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x2000\): relocation truncated to fit: R_MIPS_26 against `.text'\n
#error: [^\n]*: in function `bar':\n
#name: jal to bal
#source: jalbal.s
-#as: -EB -n32 -march=rm9000
-#ld: -EB -e s1 -Ttext 0x200000a0
+#as: -march=rm9000
+#ld: -e s1 -Ttext 0x200000a0
#objdump: -d
.*file format elf.*mips.*
#name: MIPS JAL/JALX addend calculation (n32)
#source: ../../../gas/testsuite/gas/mips/jalx-addend.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: jalx-addend.d
#name: MIPS JAL/JALX addend calculation (n64)
#source: ../../../gas/testsuite/gas/mips/jalx-addend.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: jalx-addend.d
#name: MIPS JAL/JALX addend calculation
#source: ../../../gas/testsuite/gas/mips/jalx-addend.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: MIPS JALX to local symbol (n32)
#source: ../../../gas/testsuite/gas/mips/jalx-local.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: jalx-local.d
#name: MIPS JALX to local symbol (n64)
#source: ../../../gas/testsuite/gas/mips/jalx-local.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: jalx-local.d
#name: MIPS JALX to local symbol
#source: ../../../gas/testsuite/gas/mips/jalx-local.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: jr to b conversion
#source: jr-to-b-1.s
-#as: -32 -mips1 -EB
-#ld: -shared -melf32btsmip
+#as: -mips1
+#ld: -shared
#objdump: -d
.*: file format .*
#name: jr not to b conversion
#source: jr-to-b-2.s
-#as: -32 -mips1 -EB
-#ld: -shared -melf32btsmip
+#as: -mips1
+#ld: -shared
#objdump: -d
.*: file format .*
#readelf: -Ah
#name: LSI 4010 processor ISA level
#source: empty.s
-#as: -EB -32 -m4010
-#ld: -EB -r
+#as: -m4010
+#ld: -r
ELF Header:
#...
#objdump: -dr --prefix-addresses --show-raw-insn
#name: microMIPS link branch to absolute expression with addend (n32)
#source: ../../../gas/testsuite/gas/mips/micromips-branch-absolute-addend.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
#dump: micromips-branch-absolute-addend.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: microMIPS link branch to absolute expression with addend (n64)
#source: ../../../gas/testsuite/gas/mips/micromips-branch-absolute-addend.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
#dump: micromips-branch-absolute-addend.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: microMIPS link branch to absolute expression with addend
#source: ../../../gas/testsuite/gas/mips/micromips-branch-absolute-addend.s
-#as: -EB -32
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: microMIPS link branch to absolute expression (n32)
#source: ../../../gas/testsuite/gas/mips/micromips-branch-absolute.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: micromips-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: microMIPS link branch to absolute expression (n64)
#source: ../../../gas/testsuite/gas/mips/micromips-branch-absolute.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: micromips-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: microMIPS link branch to absolute expression
#source: ../../../gas/testsuite/gas/mips/micromips-branch-absolute.s
-#as: -EB -32
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
.*: +file format .*mips.*
return
}
-set has_newabi [expr [istarget *-*-irix6*] \
- || [istarget mips*-*-linux*] \
- || [istarget mips*-sde-elf*] \
- || [istarget mips*-mti-elf*] \
- || [istarget mips*-img-elf*]]
-set has_elf32 [expr ![istarget *-*-openbsd*]]
+# run_dump_test_abi ABI NAME ARGS
+#
+# Invoke "run_dump_test" for test NAME using ABI if supported by the
+# target used, passing predefined ABI-specific arguments. ARGS are
+# as with "run_dump_test" and are appended to ABI-specific arguments,
+# except for the special "noarch" keyword, which, if present, must
+# appear first and is consumed causing any "-march=" option to be
+# removed from ABI-specific GAS arguments.
+proc run_dump_test_abi { abi name args } {
+ global abi_asflags
+ global abi_ldflags
+ global has_abi
+
+ set args [lindex $args 0]
+ set asflags $abi_asflags($abi)
+ set ldflags $abi_ldflags($abi)
+ if { [lindex $args 0] == "noarch" } {
+ set asflags [regsub -- {-march=[^[:blank:]]*} $asflags {}]
+ set args [lreplace $args 0 0]
+ }
+ if !$has_abi($abi) {
+ lappend args {notarget *-*-*}
+ }
+ if { [llength $args] > 0 } {
+ run_dump_test $name [concat [list [list as $asflags] \
+ [list ld $ldflags]] \
+ $args]
+ } else {
+ run_dump_test $name [list [list as $asflags] [list ld $ldflags]]
+ }
+}
+
+# run_dump_test_o32 NAME ARGS
+#
+# Invoke "run_dump_test_abi" for test NAME using the o32 ABI and
+# passing ARGS.
+proc run_dump_test_o32 { name args } {
+ run_dump_test_abi o32 $name [lindex $args 0]
+}
+
+# run_dump_test_n32 NAME ARGS
+#
+# Invoke "run_dump_test_abi" for test NAME using the n32 ABI and
+# passing ARGS.
+proc run_dump_test_n32 { name args } {
+ run_dump_test_abi n32 $name [lindex $args 0]
+}
+
+# run_dump_test_n64 NAME ARGS
+#
+# Invoke "run_dump_test_abi" for test NAME using the n64 ABI and
+# passing ARGS.
+proc run_dump_test_n64 { name args } {
+ run_dump_test_abi n64 $name [lindex $args 0]
+}
+
+# run_dump_test_eabi NAME ARGS
+#
+# Invoke "run_dump_test_abi" for test NAME using the eabi ABI and
+# passing ARGS.
+proc run_dump_test_eabi { name args } {
+ run_dump_test_abi eabi $name [lindex $args 0]
+}
+
+set has_abi(o32) [expr ![istarget *-*-openbsd*] \
+ && ![istarget mips64*el-ps2-elf*]]
+set has_abi(n32) [expr [istarget *-img-elf*] \
+ || [istarget *-mti-elf*] \
+ || [istarget mips64*el-ps2-elf*] \
+ || [istarget *-sde-elf*] \
+ || [istarget *-*-freebsd*] \
+ || [istarget *-*-irix6*] \
+ || [istarget *-*-kfreebsd*-gnu] \
+ || [istarget *-*-linux*]]
+set has_abi(n64) [expr [istarget *-*-freebsd*] \
+ || [istarget *-*-irix6*] \
+ || [istarget *-*-kfreebsd*-gnu] \
+ || [istarget *-*-linux*] \
+ || [istarget *-*-netbsd*] \
+ || [istarget *-*-openbsd*]]
+set has_abi(eabi) [expr [istarget *-*-elf] \
+ && $has_abi(o32)]
set irix [expr [istarget *-*-irix*]]
set linux_gnu [expr [istarget mips*-*-linux*]]
set embedded_elf [expr [istarget mips*-*-elf]]
# Set defaults.
-set abi_asflags(o32) "-32"
-set abi_asflags(n32) "-march=from-abi -n32 -EB"
-set abi_asflags(n64) "-march=from-abi -64 -EB"
+set abi_asflags(o32) ""
+set abi_asflags(n32) ""
+set abi_asflags(n64) ""
+set abi_asflags(eabi) ""
set abi_ldflags(o32) ""
-set abi_ldflags(n32) -melf32bmipn32
-set abi_ldflags(n64) -melf64bmip
+set abi_ldflags(n32) ""
+set abi_ldflags(n64) ""
+set abi_ldflags(eabi) ""
# Override as needed.
-if { [istarget *-*-irix6*] } {
- set abi_asflags(o32) "-32 -EB"
+if {[istarget *-*-openbsd*] } {
+ set irixemul 0
+} elseif { [istarget mips64*-*-linux*] } {
+ if [istarget *el-*-*] {
+ set abi_asflags(o32) -32
+ set abi_ldflags(o32) -melf32ltsmip
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64ltsmip
+ } else {
+ set abi_asflags(o32) -32
+ set abi_ldflags(o32) -melf32btsmip
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64btsmip
+ }
+ set irixemul 0
+} elseif {[istarget *-*-linux*] } {
+ if [istarget *el-*-*] {
+ set abi_asflags(n32) "-march=from-abi -n32"
+ set abi_ldflags(n32) -melf32ltsmipn32
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64ltsmip
+ } else {
+ set abi_asflags(n32) "-march=from-abi -n32"
+ set abi_ldflags(n32) -melf32btsmipn32
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64btsmip
+ }
+ set irixemul 0
+} elseif {[istarget *-img-elf*] \
+ || [istarget *-mti-elf*] \
+ || [istarget *-sde-elf*] \
+ || [istarget *-*-netbsd*] \
+ || [istarget *-*-linux*] \
+ || [istarget *-*-sysv4*] } {
+ if [istarget *el-*-*] {
+ set abi_asflags(o32) -32
+ set abi_asflags(n32) "-march=from-abi -n32"
+ set abi_ldflags(n32) -melf32ltsmipn32
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64ltsmip
+ } else {
+ set abi_asflags(o32) -32
+ set abi_asflags(n32) "-march=from-abi -n32"
+ set abi_ldflags(n32) -melf32btsmipn32
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64btsmip
+ }
+ set irixemul 0
+} elseif { [istarget mips64*-*-freebsd*] \
+ || [istarget mips64*-*-kfreebsd*-gnu] } {
+ if [istarget *el-*-*] {
+ set abi_asflags(o32) -32
+ set abi_ldflags(o32) -melf32ltsmip_fbsd
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64ltsmip_fbsd
+ } else {
+ set abi_asflags(o32) -32
+ set abi_ldflags(o32) -melf32btsmip_fbsd
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64btsmip_fbsd
+ }
+ set irixemul 0
+} elseif { [istarget *-*-freebsd*] \
+ || [istarget *-*-kfreebsd*-gnu] } {
+ if [istarget *el-*-*] {
+ set abi_asflags(n32) "-march=from-abi -n32"
+ set abi_ldflags(n32) -melf32ltsmipn32_fbsd
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64ltsmip_fbsd
+ } else {
+ set abi_asflags(n32) "-march=from-abi -n32"
+ set abi_ldflags(n32) -melf32btsmipn32_fbsd
+ set abi_asflags(n64) "-march=from-abi -64"
+ set abi_ldflags(n64) -melf64btsmip_fbsd
+ }
+ set irixemul 0
+} elseif { [istarget *vr4100*-*-elf*] \
+ || [istarget *vr4300*-*-elf*] \
+ || [istarget *vr5000*-*-elf*] } {
+ set abi_asflags(o32) -32
+ set irixemul 1
+} elseif { [istarget mips64*el-ps2-elf*] } {
+ set abi_asflags(o32) -32
+ set abi_ldflags(o32) -melf32lr5900
+ set irixemul 1
+} elseif { [istarget *-*-elf*] \
+ || [istarget *-*-rtems*] } {
+ set abi_asflags(o32) -32
+ set irixemul 1
+} elseif { [istarget *-*-irix6*] } {
+ set abi_asflags(o32) -32
+ set abi_asflags(n64) "-march=from-abi -64"
set abi_ldflags(o32) -melf32bsmip
-} elseif { [istarget mips64*-linux*] } {
- set abi_asflags(o32) "-32 -EB"
- set abi_ldflags(o32) -melf32btsmip
-} elseif { [istarget mips64*-*freebsd*] } {
- set abi_asflags(o32) "-32 -EB"
- set abi_ldflags(o32) -melf32btsmip_fbsd
-}
-if { [istarget mips*-*-linux*] || [istarget mips*-sde-elf*]
- || [istarget mips*-mti-elf*] || [istarget mips*-img-elf*]} {
- set abi_ldflags(n32) -melf32btsmipn32
- set abi_ldflags(n64) -melf64btsmip
-} elseif { [istarget mips64*-*freebsd*] } {
- set abi_ldflags(n32) -melf32btsmipn32_fbsd
- set abi_ldflags(n64) -melf64btsmip_fbsd
+ set abi_ldflags(n64) -melf64bmip
+ set irixemul 1
+} else {
+ set abi_asflags(o32) -32
+ set irixemul 1
}
if { $linux_gnu } {
# MIPS branch offset final link checking.
run_dump_test "branch-misc-1"
run_dump_test "branch-misc-2"
-run_dump_test "branch-absolute" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "branch-absolute-addend" [list [list ld $abi_ldflags(o32)]]
-if $has_newabi {
- run_dump_test "branch-absolute-n32" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "branch-absolute-addend-n32" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "branch-absolute-n64" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "branch-absolute-addend-n64" \
- [list [list ld $abi_ldflags(n64)]]
-}
-
-run_dump_test "mips16-pcrel-0" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-pcrel-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16e2-pcrel-0" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16e2-pcrel-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-pcrel-addend-2" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-pcrel-addend-6" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16e2-pcrel-addend-2" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16e2-pcrel-addend-6" [list [list ld $abi_ldflags(o32)]]
-if $has_newabi {
- run_dump_test "mips16-pcrel-n32-0" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "mips16-pcrel-n32-1" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "mips16-pcrel-n64-sym32-0" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "mips16-pcrel-n64-sym32-1" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "mips16e2-pcrel-n32-0" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "mips16e2-pcrel-n32-1" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "mips16e2-pcrel-n64-sym32-0" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "mips16e2-pcrel-n64-sym32-1" \
- [list [list ld $abi_ldflags(n64)]]
-}
-
-run_dump_test "mips16-branch-2" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-branch-3" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-branch-addend-2" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-branch-addend-3" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-branch-absolute" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-branch-absolute-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-branch-absolute-2" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-branch-absolute-addend" \
- [list [list ld $abi_ldflags(o32)]]
-run_dump_test "mips16-branch-absolute-addend-1" \
- [list [list ld $abi_ldflags(o32)]]
-if $has_newabi {
- run_dump_test "mips16-branch-absolute-n32" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "mips16-branch-absolute-n32-1" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "mips16-branch-absolute-n32-2" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "mips16-branch-absolute-addend-n32" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "mips16-branch-absolute-addend-n32-1" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "mips16-branch-absolute-n64" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "mips16-branch-absolute-n64-1" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "mips16-branch-absolute-n64-2" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "mips16-branch-absolute-addend-n64" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "mips16-branch-absolute-addend-n64-1" \
- [list [list ld $abi_ldflags(n64)]]
-}
-
-run_dump_test "micromips-branch-absolute" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "micromips-branch-absolute-addend" \
- [list [list ld $abi_ldflags(o32)]]
-if $has_newabi {
- run_dump_test "micromips-branch-absolute-n32" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "micromips-branch-absolute-addend-n32" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "micromips-branch-absolute-n64" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "micromips-branch-absolute-addend-n64" \
- [list [list ld $abi_ldflags(n64)]]
-}
+run_dump_test_o32 "branch-absolute"
+run_dump_test_o32 "branch-absolute-addend"
+run_dump_test_n32 "branch-absolute-n32"
+run_dump_test_n32 "branch-absolute-addend-n32"
+run_dump_test_n64 "branch-absolute-n64"
+run_dump_test_n64 "branch-absolute-addend-n64"
+
+run_dump_test_o32 "mips16-pcrel-0"
+run_dump_test_o32 "mips16-pcrel-1" noarch
+run_dump_test_o32 "mips16e2-pcrel-0" noarch
+run_dump_test_o32 "mips16e2-pcrel-1" noarch
+run_dump_test_o32 "mips16-pcrel-addend-2"
+run_dump_test_o32 "mips16-pcrel-addend-6"
+run_dump_test_o32 "mips16e2-pcrel-addend-2" noarch
+run_dump_test_o32 "mips16e2-pcrel-addend-6" noarch
+run_dump_test_n32 "mips16-pcrel-n32-0"
+run_dump_test_n32 "mips16-pcrel-n32-1"
+run_dump_test_n64 "mips16-pcrel-n64-sym32-0"
+run_dump_test_n64 "mips16-pcrel-n64-sym32-1"
+run_dump_test_n32 "mips16e2-pcrel-n32-0" noarch
+run_dump_test_n32 "mips16e2-pcrel-n32-1" noarch
+run_dump_test_n64 "mips16e2-pcrel-n64-sym32-0" noarch
+run_dump_test_n64 "mips16e2-pcrel-n64-sym32-1" noarch
+
+run_dump_test_o32 "mips16-branch-2"
+run_dump_test_o32 "mips16-branch-3"
+run_dump_test_o32 "mips16-branch-addend-2"
+run_dump_test_o32 "mips16-branch-addend-3"
+run_dump_test_o32 "mips16-branch-absolute"
+run_dump_test_o32 "mips16-branch-absolute-1"
+run_dump_test_o32 "mips16-branch-absolute-2"
+run_dump_test_o32 "mips16-branch-absolute-addend"
+run_dump_test_o32 "mips16-branch-absolute-addend-1"
+run_dump_test_n32 "mips16-branch-absolute-n32"
+run_dump_test_n32 "mips16-branch-absolute-n32-1"
+run_dump_test_n32 "mips16-branch-absolute-n32-2"
+run_dump_test_n32 "mips16-branch-absolute-addend-n32"
+run_dump_test_n32 "mips16-branch-absolute-addend-n32-1"
+run_dump_test_n64 "mips16-branch-absolute-n64"
+run_dump_test_n64 "mips16-branch-absolute-n64-1"
+run_dump_test_n64 "mips16-branch-absolute-n64-2"
+run_dump_test_n64 "mips16-branch-absolute-addend-n64"
+run_dump_test_n64 "mips16-branch-absolute-addend-n64-1"
+
+run_dump_test_o32 "micromips-branch-absolute"
+run_dump_test_o32 "micromips-branch-absolute-addend"
+run_dump_test_n32 "micromips-branch-absolute-n32"
+run_dump_test_n32 "micromips-branch-absolute-addend-n32"
+run_dump_test_n64 "micromips-branch-absolute-n64"
+run_dump_test_n64 "micromips-branch-absolute-addend-n64"
# Jalx test
run_dump_test "jalx-1"
"jalx-2"]]
}
-run_dump_test "jalx-addend" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "jalx-local" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "bal-jalx-addend" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "bal-jalx-addend-micromips" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "bal-jalx-local" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "bal-jalx-local-micromips" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "bal-jalx-pic" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "bal-jalx-pic-micromips" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "bal-jalx-pic-ignore" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "bal-jalx-pic-ignore-micromips" \
- [list [list ld $abi_ldflags(o32)]]
-if $has_newabi {
- run_dump_test "jalx-addend-n32" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "jalx-local-n32" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "bal-jalx-addend-n32" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "bal-jalx-addend-micromips-n32" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "bal-jalx-local-n32" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "bal-jalx-local-micromips-n32" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "bal-jalx-pic-n32" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "bal-jalx-pic-micromips-n32" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "bal-jalx-pic-ignore-n32" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "bal-jalx-pic-ignore-micromips-n32" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "jalx-addend-n64" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "jalx-local-n64" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "bal-jalx-addend-n64" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "bal-jalx-addend-micromips-n64" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "bal-jalx-local-n64" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "bal-jalx-local-micromips-n64" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "bal-jalx-pic-n64" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "bal-jalx-pic-micromips-n64" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "bal-jalx-pic-ignore-n64" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "bal-jalx-pic-ignore-micromips-n64" \
- [list [list ld $abi_ldflags(n64)]]
-}
+run_dump_test_o32 "jalx-addend"
+run_dump_test_o32 "jalx-local"
+run_dump_test_o32 "bal-jalx-addend"
+run_dump_test_o32 "bal-jalx-addend-micromips"
+run_dump_test_o32 "bal-jalx-local"
+run_dump_test_o32 "bal-jalx-local-micromips"
+run_dump_test_o32 "bal-jalx-pic"
+run_dump_test_o32 "bal-jalx-pic-micromips"
+run_dump_test_o32 "bal-jalx-pic-ignore"
+run_dump_test_o32 "bal-jalx-pic-ignore-micromips"
+run_dump_test_n32 "jalx-addend-n32"
+run_dump_test_n32 "jalx-local-n32"
+run_dump_test_n32 "bal-jalx-addend-n32"
+run_dump_test_n32 "bal-jalx-addend-micromips-n32"
+run_dump_test_n32 "bal-jalx-local-n32"
+run_dump_test_n32 "bal-jalx-local-micromips-n32"
+run_dump_test_n32 "bal-jalx-pic-n32"
+run_dump_test_n32 "bal-jalx-pic-micromips-n32"
+run_dump_test_n32 "bal-jalx-pic-ignore-n32"
+run_dump_test_n32 "bal-jalx-pic-ignore-micromips-n32"
+run_dump_test_n64 "jalx-addend-n64"
+run_dump_test_n64 "jalx-local-n64"
+run_dump_test_n64 "bal-jalx-addend-n64"
+run_dump_test_n64 "bal-jalx-addend-micromips-n64"
+run_dump_test_n64 "bal-jalx-local-n64"
+run_dump_test_n64 "bal-jalx-local-micromips-n64"
+run_dump_test_n64 "bal-jalx-pic-n64"
+run_dump_test_n64 "bal-jalx-pic-micromips-n64"
+run_dump_test_n64 "bal-jalx-pic-ignore-n64"
+run_dump_test_n64 "bal-jalx-pic-ignore-micromips-n64"
run_dump_test "unaligned-jalx-0" [list [list ld $abi_ldflags(o32)]]
run_dump_test "unaligned-jalx-1" [list [list ld $abi_ldflags(o32)]]
run_dump_test "unaligned-jalx-micromips-0" [list [list ld $abi_ldflags(o32)]]
run_dump_test "unaligned-jalx-micromips-1" [list [list ld $abi_ldflags(o32)]]
-if $has_newabi {
- run_dump_test "unaligned-jalx-addend-0" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jalx-addend-1" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jalx-addend-2" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jalx-addend-3" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jalx-addend-mips16-0" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jalx-addend-mips16-1" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jalx-addend-micromips-0" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jalx-addend-micromips-1" \
- [list [list ld $abi_ldflags(n32)]]
-}
-
-run_dump_test "unaligned-branch" [list [list ld $abi_ldflags(o32)]]
-
-if $has_newabi {
- run_dump_test "unaligned-branch-2" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-branch-ignore-2" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-branch-r6-1" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-branch-ignore-r6-1" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-branch-r6-2" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-branch-mips16" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-branch-ignore-mips16" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-branch-micromips" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-branch-ignore-micromips" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jump" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jump-mips16" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "unaligned-jump-micromips" \
- [list [list ld $abi_ldflags(n32)]]
-}
-
-run_dump_test "unaligned-lwpc-0" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-lwpc-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-ldpc-0" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-ldpc-1" [list [list ld $abi_ldflags(o32)]]
+run_dump_test_n32 "unaligned-jalx-addend-0"
+run_dump_test_n32 "unaligned-jalx-addend-1"
+run_dump_test_n32 "unaligned-jalx-addend-2"
+run_dump_test_n32 "unaligned-jalx-addend-3"
+run_dump_test_n32 "unaligned-jalx-addend-mips16-0"
+run_dump_test_n32 "unaligned-jalx-addend-mips16-1"
+run_dump_test_n32 "unaligned-jalx-addend-micromips-0"
+run_dump_test_n32 "unaligned-jalx-addend-micromips-1"
+
+run_dump_test_o32 "unaligned-branch" noarch
+
+run_dump_test_n32 "unaligned-branch-2"
+run_dump_test_n32 "unaligned-branch-ignore-2"
+run_dump_test_n32 "unaligned-branch-r6-1"
+run_dump_test_n32 "unaligned-branch-ignore-r6-1"
+run_dump_test_n32 "unaligned-branch-r6-2" noarch
+run_dump_test_n32 "unaligned-branch-mips16"
+run_dump_test_n32 "unaligned-branch-ignore-mips16"
+run_dump_test_n32 "unaligned-branch-micromips"
+run_dump_test_n32 "unaligned-branch-ignore-micromips"
+run_dump_test_n32 "unaligned-jump"
+run_dump_test_n32 "unaligned-jump-mips16"
+run_dump_test_n32 "unaligned-jump-micromips"
+
+run_dump_test_o32 "unaligned-lwpc-0" noarch
+run_dump_test_o32 "unaligned-lwpc-1" noarch
+run_dump_test_o32 "unaligned-ldpc-0" noarch
+run_dump_test_o32 "unaligned-ldpc-1" noarch
# Test multi-got link. We only do this on GNU/Linux because it requires
# the "traditional" emulations.
if { $linux_gnu } {
- run_dump_test "multi-got-1"
- run_dump_test "multi-got-no-shared"
- run_dump_test "multi-got-hidden-1"
- run_dump_test "multi-got-hidden-2"
+ run_dump_test_o32 "multi-got-1"
+ run_dump_test_o32 "multi-got-no-shared"
+ run_dump_test_o32 "multi-got-hidden-1"
+ run_dump_test_o32 "multi-got-hidden-2"
}
# Test __gnu_local_gp accesses
if { $linux_gnu } {
- run_dump_test "no-shared-1-o32"
- if { $has_newabi } {
- run_dump_test "no-shared-1-n32"
- run_dump_test "no-shared-1-n64"
- }
+ run_dump_test_o32 "no-shared-1-o32"
+ run_dump_test_n32 "no-shared-1-n32"
+ run_dump_test_n64 "no-shared-1-n64" {{as -EB} {ld -EB}}
}
# Test PIE debug dynamic tags
if { $linux_gnu } {
- run_dump_test "pie-o32"
- if { $has_newabi } {
- run_dump_test "pie-n32"
- run_dump_test "pie-n64"
- }
+ run_dump_test_o32 "pie-o32"
+ run_dump_test_n32 "pie-n32"
+ run_dump_test_n64 "pie-n64"
}
-if $has_newabi {
- if { $embedded_elf } {
- run_dump_test "elf-rel-got-n32-embed" \
- [list [list ld $abi_ldflags(n32)]]
- run_dump_test "elf-rel-xgot-n32-embed" \
- [list [list ld $abi_ldflags(n32)]]
- } else {
- run_dump_test "elf-rel-got-n32" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "elf-rel-xgot-n32" [list [list ld $abi_ldflags(n32)]]
- }
- if { $irix } {
- run_dump_test "elf-rel-got-n64-irix" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "elf-rel-xgot-n64-irix" \
- [list [list ld $abi_ldflags(n64)]]
- } elseif { $embedded_elf } {
- run_dump_test "elf-rel-got-n64-embed" \
- [list [list ld $abi_ldflags(n64)]]
- run_dump_test "elf-rel-xgot-n64-embed" \
- [list [list ld $abi_ldflags(n64)]]
- } else {
- run_dump_test "elf-rel-got-n64" [list [list ld $abi_ldflags(n64)]]
- run_dump_test "elf-rel-xgot-n64" [list [list ld $abi_ldflags(n64)]]
- }
-
- run_dump_test "relax-jalr-n32"
- run_dump_test "relax-jalr-n32-shared"
- run_dump_test "relax-jalr-n64"
- run_dump_test "relax-jalr-n64-shared"
+if { $embedded_elf } {
+ run_dump_test_n32 "elf-rel-got-n32-embed" {{as -EB} {ld -EB}}
+ run_dump_test_n32 "elf-rel-xgot-n32-embed" {{as -EB} {ld -EB}}
+} else {
+ run_dump_test_n32 "elf-rel-got-n32" {{as -EB} {ld -EB}}
+ run_dump_test_n32 "elf-rel-xgot-n32" {{as -EB} {ld -EB}}
}
+if { $irix } {
+ run_dump_test_n64 "elf-rel-got-n64-irix"
+ run_dump_test_n64 "elf-rel-xgot-n64-irix"
+} elseif { $embedded_elf } {
+ run_dump_test_n64 "elf-rel-got-n64-embed" {{as -EB} {ld -EB}}
+ run_dump_test_n64 "elf-rel-xgot-n64-embed" {{as -EB} {ld -EB}}
+} else {
+ run_dump_test_n64 "elf-rel-got-n64" {{as -EB} {ld -EB}}
+ run_dump_test_n64 "elf-rel-xgot-n64" {{as -EB} {ld -EB}}
+}
+
+run_dump_test_n32 "relax-jalr-n32" {{as -EB} {ld -EB}}
+run_dump_test_n32 "relax-jalr-n32-shared" {{as -EB} {ld -EB}}
+run_dump_test_n64 "relax-jalr-n64" {{as -EB} {ld -EB}}
+run_dump_test_n64 "relax-jalr-n64-shared" {{as -EB} {ld -EB}}
if { $linux_gnu } {
- run_dump_test "rel32-o32"
- if { $has_newabi } {
- run_dump_test "rel32-n32"
- run_dump_test "rel64"
- }
+ run_dump_test_o32 "rel32-o32" {{as -EB} {ld -EB}}
+ run_dump_test_n32 "rel32-n32" {{as -EB} {ld -EB}}
+ run_dump_test_n64 "rel64" {{as -EB} {ld -EB}}
# The first test checks that a mixed PIC/non-PIC relocatable link
# will not introduce any stubs itself, but will flag PIC functions
# for the final link.
{readelf --symbols pic-and-nonpic-1-micromips.nd}}
"pic-and-nonpic-1-micromips-static2.o"}
}
- run_dump_test "pic-and-nonpic-2"
+ run_dump_test_o32 "pic-and-nonpic-2"
run_ld_link_tests {
{"PIC and non-PIC test 3 (shared library)"
"-melf32btsmip -shared -Tpic-and-nonpic-3a.ld" ""
{readelf -d pic-and-nonpic-3b.ad}}
"pic-and-nonpic-3b"}
}
- run_dump_test "pic-and-nonpic-3-error"
+ run_dump_test_o32 "pic-and-nonpic-3-error" {noarch {as -EB} {ld -EB}}
run_ld_link_tests {
{"PIC and non-PIC test 4 (shared library)"
"-melf32btsmip -shared -Tpic-and-nonpic-3a.ld" ""
{readelf -d pic-and-nonpic-4b.ad}}
"pic-and-nonpic-4b"}
}
- run_dump_test "pic-and-nonpic-4-error"
+ run_dump_test_o32 "pic-and-nonpic-4-error" {noarch {as -EB} {ld -EB}}
run_ld_link_tests {
{"PIC and non-PIC test 5 (executable)"
"-melf32btsmip -Tpic-and-nonpic-5b.ld tmpdir/pic-and-nonpic-3a.so tmpdir/pic-and-nonpic-4a.so" ""
{readelf -d pic-and-nonpic-5b.ad}}
"pic-and-nonpic-5b"}
}
- set abis { o32 -32 elf32btsmip }
- if $has_newabi {
+ set abis {}
+ if $has_abi(o32) {
+ lappend abis o32 -32 elf32btsmip
+ }
+ if $has_abi(n32) {
lappend abis n32 -n32 elf32btsmipn32
+ }
+ if $has_abi(n64) {
lappend abis n64 -64 elf64btsmip
}
foreach { abi flag emul } $abis {
}
}
-if { $embedded_elf } {
- run_dump_test "region1"
-}
+run_dump_test_eabi "region1"
-if $embedded_elf {
- # This could work on other targets too, but would need the appropriate
- # ld -m switch.
- run_dump_test "reloc-1-rel"
-}
-if $has_newabi {
- run_dump_test "reloc-1-n32" [list [list ld $abi_ldflags(n32)]]
- run_dump_test "reloc-1-n64" [list [list ld $abi_ldflags(n64)]]
-}
-run_dump_test "reloc-2"
+run_dump_test_o32 "reloc-1-rel"
+run_dump_test_n32 "reloc-1-n32"
+run_dump_test_n64 "reloc-1-n64"
+run_dump_test_o32 "reloc-2" [list [list objdump [expr { [istarget *el-*-*] \
+ ? "--endian=little" \
+ : "--endian=big" }]]]
run_dump_test "reloc-merge-lo16"
run_dump_test "reloc-3"
-if {$has_newabi} {
- run_dump_test "reloc-3-n32"
-}
+run_dump_test_n32 "reloc-3-n32" noarch
run_dump_test "reloc-4"
run_dump_test "reloc-5"
-if { $has_newabi && [check_shared_lib_support] } {
+if { $has_abi(n32) && [check_shared_lib_support] } {
run_ld_link_tests [list \
[list \
"reloc test 6a" \
"reloc-6b"]]
}
-run_dump_test "reloc-local-overflow" [list [list ld $abi_ldflags(o32)]]
-run_ld_link_tests [list \
- [list \
- "MIPS link ELF o32 PIC comdat GOT16/LO16 relocation pairing" \
- "$abi_ldflags(o32) -e bar" "" "$abi_asflags(o32) -mno-pdr" \
- "../../../gas/testsuite/gas/mips/comdat-reloc.s" \
- {} \
- "comdat-reloc"]]
-
-if {$has_newabi && $linux_gnu} {
- run_dump_test "eh-frame1-n32"
- run_dump_test "eh-frame1-n64"
- run_dump_test "eh-frame2-n32"
- run_dump_test "eh-frame2-n64"
+run_dump_test_o32 "reloc-local-overflow"
+if { $has_abi(o32) } {
+ run_ld_link_tests [list \
+ [list \
+ "MIPS link ELF o32 PIC comdat GOT16/LO16 relocation pairing" \
+ "$abi_ldflags(o32) -e bar" "" "$abi_asflags(o32) -mno-pdr" \
+ "../../../gas/testsuite/gas/mips/comdat-reloc.s" \
+ {} \
+ "comdat-reloc"]]
}
-if {$embedded_elf} {
- run_dump_test "eh-frame3"
- run_dump_test "eh-frame4"
+
+if {$linux_gnu} {
+ run_dump_test_n32 "eh-frame1-n32"
+ run_dump_test_n64 "eh-frame1-n64"
+ run_dump_test_n32 "eh-frame2-n32"
+ run_dump_test_n64 "eh-frame2-n64"
}
+run_dump_test_eabi "eh-frame3"
+run_dump_test_eabi "eh-frame4"
if {$linux_gnu} {
set eh_frame5_test {
{"MIPS eh-frame 5"
run_dump_test "jaloverflow"
run_dump_test "jaloverflow-2"
-run_dump_test "jal-global-overflow-0" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "jal-global-overflow-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "jal-local-overflow-0" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "jal-local-overflow-1" [list [list ld $abi_ldflags(o32)]]
-
-run_dump_test "undefweak-overflow" [list [list as $abi_asflags(o32)] \
- [list ld $abi_ldflags(o32)]]
-
-if {$has_newabi} {
- run_dump_test "undefweak-overflow" [list [list name (n32)] \
- [list as $abi_asflags(n32)] \
- [list ld $abi_ldflags(n32)]]
- run_dump_test "undefweak-overflow" [list [list name (n64)] \
- [list as $abi_asflags(n64)] \
- [list ld $abi_ldflags(n64)]]
-}
+run_dump_test_o32 "jal-global-overflow-0"
+run_dump_test_o32 "jal-global-overflow-1"
+run_dump_test_o32 "jal-local-overflow-0"
+run_dump_test_o32 "jal-local-overflow-1"
-if {$has_newabi} {
- run_dump_test "jalbal" [list [list ld $abi_ldflags(n32)]]
-}
+run_dump_test_o32 "undefweak-overflow"
+
+run_dump_test_n32 "undefweak-overflow" [list [list name (n32)]]
+run_dump_test_n64 "undefweak-overflow" [list [list name (n64)]]
+
+run_dump_test_n32 "jalbal" noarch
run_dump_test "mode-change-error-1"
-run_dump_test "mips16-hilo"
-if {$has_newabi} {
- run_dump_test "mips16-hilo-n32"
-}
+run_dump_test_o32 "mips16-hilo"
+run_dump_test_n32 "mips16-hilo-n32"
if { $linux_gnu } {
- if { $has_newabi } {
- run_dump_test "textrel-1"
- }
+ run_dump_test_n32 "textrel-1"
run_dump_test "got-page-1"
- if $has_newabi {
- run_dump_test "got-page-2"
- run_dump_test "dyn-sec64"
- }
+ run_dump_test_n32 "got-page-2"
+ run_dump_test_n64 "dyn-sec64" noarch
run_dump_test "got-page-3"
- run_ld_link_tests [subst {
- {"GOT page 4 (one file)" "-shared $abi_ldflags(o32) -T got-page-1.ld"
- "" "$abi_asflags(o32) -mips2" {got-page-4b.s}
- {{objdump -dr got-page-4a.d}
- {readelf -A got-page-4a.got}}
- "got-page-4a.so"}
- {"GOT page 4 (two files)" "-shared $abi_ldflags(o32) -T got-page-1.ld"
- "" "$abi_asflags(o32) -mips2" {got-page-4a.s got-page-4b.s}
- {{objdump -dr got-page-4b.d}
- {readelf -A got-page-4b.got}}
- "got-page-4b.so"}
- }]
- if $has_newabi {
+ if $has_abi(o32) {
+ run_ld_link_tests [subst {
+ {"GOT page 4 (one file)"
+ "-shared $abi_ldflags(o32) -T got-page-1.ld"
+ "" "$abi_asflags(o32) -mips2" {got-page-4b.s}
+ {{objdump -dr got-page-4a.d}
+ {readelf -A got-page-4a.got}}
+ "got-page-4a.so"}
+ {"GOT page 4 (two files)"
+ "-shared $abi_ldflags(o32) -T got-page-1.ld"
+ "" "$abi_asflags(o32) -mips2" {got-page-4a.s got-page-4b.s}
+ {{objdump -dr got-page-4b.d}
+ {readelf -A got-page-4b.got}}
+ "got-page-4b.so"}
+ }]
+ }
+ if $has_abi(n32) {
run_ld_link_tests [subst {
{"GOT page 5" "-shared $abi_ldflags(n32) -T got-page-1.ld"
"" "$abi_asflags(n32)" {got-page-5.s}
}]
}
run_dump_test "got-dump-1"
- if $has_newabi {
- run_dump_test "got-dump-2"
- }
+ run_dump_test_n64 "got-dump-2" noarch
run_dump_test "reloc-estimate-1"
}
-if $has_newabi {
- run_dump_test "emit-relocs-1"
-}
+run_dump_test_n32 "emit-relocs-1" {{as -EB} {ld -EB}}
run_dump_test "hash1a"
run_dump_test "hash1b"
run_dump_test "hash1c"
-if { $linux_gnu } {
+if { $linux_gnu && $has_abi(o32) } {
# The number of symbols that are always included in the symbol table
# for these tests.
# the null symbol entry
"tls-hidden4.so"}
}
-if { $linux_gnu } {
+if { $linux_gnu && $has_abi(o32) } {
run_ld_link_tests $mips_tls_tests
}
{{objdump -dr mips16-call-global.d}} \
"mips16-call-global"]]
-run_ld_link_tests $mips16_call_global_test
+if { $has_abi(o32) } {
+ run_ld_link_tests $mips16_call_global_test
+}
set mips16_intermix_test [list \
[list "Intermixing mips32 and mips16 functions" \
{{objdump -t mips16-intermix.d}} \
"mips16-intermix"]]
-run_ld_link_tests $mips16_intermix_test
+if { $has_abi(o32) } {
+ run_ld_link_tests $mips16_intermix_test
+}
run_dump_test "mips16-local-stubs-1"
{{readelf --debug-dump=frames mips16-fp-stub.d}} \
"mips16-fp-stub"]]
-run_ld_link_tests $mips16_fp_stub_test
-
-set o32flagslist [list [list as $abi_asflags(o32)] [list ld $abi_ldflags(o32)]]
+if { $has_abi(o32) } {
+ run_ld_link_tests $mips16_fp_stub_test
+}
foreach firstfpabi [list 0 1 2 3 4 5 6 7 ] {
foreach secondfpabi [list 4 5 6 7 ] {
- run_dump_test "attr-gnu-4-${firstfpabi}${secondfpabi}" $o32flagslist
+ run_dump_test_o32 "attr-gnu-4-${firstfpabi}${secondfpabi}"
}
}
foreach firstfpabi [list 4 5 6 7 ] {
foreach secondfpabi [list 0 1 2 3 8 9] {
- run_dump_test "attr-gnu-4-${firstfpabi}${secondfpabi}" $o32flagslist
+ run_dump_test_o32 "attr-gnu-4-${firstfpabi}${secondfpabi}"
}
}
foreach firstfpabi [list 0 1 2 3 ] {
run_dump_test "attr-gnu-8-21"
run_dump_test "attr-gnu-8-22"
-run_dump_test "attr-gnu-4-0-ph" $o32flagslist
-run_dump_test "attr-gnu-4-1-ph" $o32flagslist
-run_dump_test "attr-gnu-4-2-ph" $o32flagslist
-run_dump_test "attr-gnu-4-3-ph" $o32flagslist
-run_dump_test "attr-gnu-4-4-ph" $o32flagslist
-run_dump_test "attr-gnu-4-5-ph" $o32flagslist
-run_dump_test "attr-gnu-4-6-ph" $o32flagslist
-run_dump_test "attr-gnu-4-7-ph" $o32flagslist
-
-if $has_newabi {
- run_dump_test "attr-gnu-4-0-n32-ph"
- run_dump_test "attr-gnu-4-1-n32-ph"
- run_dump_test "attr-gnu-4-2-n32-ph"
- run_dump_test "attr-gnu-4-3-n32-ph"
- run_dump_test "attr-gnu-4-0-n64-ph"
- run_dump_test "attr-gnu-4-1-n64-ph"
- run_dump_test "attr-gnu-4-2-n64-ph"
- run_dump_test "attr-gnu-4-3-n64-ph"
-}
-
-run_dump_test "abiflags-strip1-ph" $o32flagslist
-run_dump_test "abiflags-strip2-ph" $o32flagslist
-run_dump_test "abiflags-strip3-ph" $o32flagslist
-run_dump_test "abiflags-strip4-ph" $o32flagslist
-run_dump_test "abiflags-strip5-ph" $o32flagslist
-run_dump_test "abiflags-strip6-ph" $o32flagslist
-run_dump_test "abiflags-strip7-ph" $o32flagslist
-run_dump_test "abiflags-strip8-ph" $o32flagslist
-run_dump_test "abiflags-strip9-ph" $o32flagslist
-run_dump_test "abiflags-strip10-ph" $o32flagslist
+run_dump_test_o32 "attr-gnu-4-0-ph"
+run_dump_test_o32 "attr-gnu-4-1-ph"
+run_dump_test_o32 "attr-gnu-4-2-ph"
+run_dump_test_o32 "attr-gnu-4-3-ph"
+run_dump_test_o32 "attr-gnu-4-4-ph"
+run_dump_test_o32 "attr-gnu-4-5-ph"
+run_dump_test_o32 "attr-gnu-4-6-ph"
+run_dump_test_o32 "attr-gnu-4-7-ph"
+
+run_dump_test_n32 "attr-gnu-4-0-n32-ph" noarch
+run_dump_test_n32 "attr-gnu-4-1-n32-ph" noarch
+run_dump_test_n32 "attr-gnu-4-2-n32-ph" noarch
+run_dump_test_n32 "attr-gnu-4-3-n32-ph" noarch
+run_dump_test_n64 "attr-gnu-4-0-n64-ph" noarch
+run_dump_test_n64 "attr-gnu-4-1-n64-ph" noarch
+run_dump_test_n64 "attr-gnu-4-2-n64-ph" noarch
+run_dump_test_n64 "attr-gnu-4-3-n64-ph" noarch
+
+run_dump_test_o32 "abiflags-strip1-ph"
+run_dump_test_o32 "abiflags-strip2-ph"
+run_dump_test_o32 "abiflags-strip3-ph"
+run_dump_test_o32 "abiflags-strip4-ph"
+run_dump_test_o32 "abiflags-strip5-ph"
+run_dump_test_o32 "abiflags-strip6-ph"
+run_dump_test_o32 "abiflags-strip7-ph"
+run_dump_test_o32 "abiflags-strip8-ph"
+run_dump_test_o32 "abiflags-strip9-ph"
+run_dump_test_o32 "abiflags-strip10-ph"
run_dump_test "nan-legacy"
run_dump_test "nan-2008"
run_dump_test "nan-mixed-1"
run_dump_test "nan-mixed-2"
-if { $linux_gnu } {
+if { $linux_gnu && $has_abi(o32) } {
run_ld_link_tests {
{"GOT and versioning 1"
"-shared -melf32btsmip --version-script got-vers-1.ver" ""
# Test the conversion from jr to b
if { $linux_gnu } {
- run_dump_test "jr-to-b-1"
- run_dump_test "jr-to-b-2"
+ run_dump_test_o32 "jr-to-b-1" noarch
+ run_dump_test_o32 "jr-to-b-2" noarch
}
# MIPS16 and microMIPS interlinking test.
run_dump_test "mips16-and-micromips"
+set abis {}
+if $has_abi(o32) {
+ lappend abis o32
+}
+if $has_abi(n32) {
+ lappend abis n32
+}
+if $has_abi(n64) {
+ lappend abis n64
+}
+
# Export class call relocation tests.
-set abis [concat o32 [expr {$has_newabi ? "n32 n64" : ""}]]
if [check_shared_lib_support] {
foreach { abi } $abis {
set loadaddr [string map \
}
# Magic __ehdr_start symbol tests.
-set abis [concat o32 [expr {$has_newabi ? "n32 n64" : ""}]]
foreach { abi } $abis {
set suff [string map {o32 o32 n32 new n64 new} $abi]
run_ld_link_tests [list \
}
# R_MIPS_JALR reloc tests.
-set abis [concat o32 [expr {$has_newabi ? "n32 n64" : ""}]]
foreach { abi } $abis {
run_ld_link_tests [list \
[list \
[list \
"MIPSr6 JALR reloc unaligned/cross-mode link test ($abi)" \
"$abi_ldflags($abi) -T jalr3.ld" "" \
- [string map \
- [list -32 "-mips32r6 -32" \
- -n32 "-mips64r6 -n32" \
- -64 "-mips64r6 -64"] \
- [regsub -- -march=from-abi $abi_asflags($abi) ""]] \
+ "[string map\
+ [list o32 -mips32r6\
+ n32 -mips64r6\
+ n64 -mips64r6] $abi ]\
+ [regsub -- {-march=[^[:blank:]]*} $abi_asflags($abi) {}]" \
{../../../gas/testsuite/gas/mips/jalr4.s} \
{{objdump {-d --prefix-addresses --show-raw-insn} jalr4-r6.dd}} \
"jalr4-${abi}"]]
$basename]]
}
-if { $linux_gnu } {
+if { $linux_gnu && $has_abi(o32) } {
build_mips_plt_lib o32
run_mips_plt_test "o32 PLTs for standard encoding" o32 104 0 se
run_mips_plt_test "o32 PLTs for standard branches" o32 16 0 branch
o32 109 1 umips-got compressed-plt-1d.s
run_mips_plt_test "o32 PLTs for mixed MIPS and microMIPS with .word" \
o32 109 1 umips-word compressed-plt-1e.s
+}
- if $has_newabi {
- build_mips_plt_lib n32
- run_mips_plt_test "n32 PLTs for mixed MIPS and MIPS16" \
- n32 109 0 mips16
- run_mips_plt_test "n32 PLTs for mixed MIPS and microMIPS" \
- n32 109 1 umips
- }
+if { $linux_gnu && $has_abi(n32) } {
+ build_mips_plt_lib n32
+ run_mips_plt_test "n32 PLTs for mixed MIPS and MIPS16" \
+ n32 109 0 mips16
+ run_mips_plt_test "n32 PLTs for mixed MIPS and microMIPS" \
+ n32 109 1 umips
}
# Verify graceful handling of n64 PLT 32-bit range overflows. Given
# that the alignment of `.got.plt' is 8 the highest usable positive
# address is 0x7fff7ff8 and the lowest usable negative address is
# 0xffffffff7fff8000.
-if { $linux_gnu } {
+if { $linux_gnu && $has_abi(n64) } {
run_ld_link_tests [list \
[list "Shared library for MIPS n64 PLT 32-bit range tests" \
"-shared $abi_ldflags(n64)" "" \
}
# PR ld/19908 export class tests.
-if { $linux_gnu } {
+if { $linux_gnu && $has_abi(o32) } {
run_ld_link_tests [list \
[list "Shared library for MIPS export class symbol reference tests" \
"$abi_ldflags(o32) -shared" "" \
}
# PR ld/21334 GOT relocation in static binary test.
-run_ld_link_tests [list \
- [list \
- "PR ld/21334 MIPS GOT16 relocation in static binary" \
- "$abi_ldflags(o32) -e foo -T pr21334.ld" "" "$abi_asflags(o32)" \
- {pr21334.s} \
- {{objdump {-d --prefix-addresses} pr21334.dd} \
- {readelf -A pr21334.gd}} \
- "pr21334"]]
+if { $has_abi(o32) } {
+ run_ld_link_tests [list \
+ [list \
+ "PR ld/21334 MIPS GOT16 relocation in static binary" \
+ "$abi_ldflags(o32) -e foo -T pr21334.ld" "" "$abi_asflags(o32)" \
+ {pr21334.s} \
+ {{objdump {-d --prefix-addresses} pr21334.dd} \
+ {readelf -A pr21334.gd}} \
+ "pr21334"]]
+}
# Check that the ISA level is consistently II for the LSI 4010.
-run_dump_test "lsi-4010-isa" [list [list ld $abi_ldflags(o32)]]
+run_dump_test_o32 "lsi-4010-isa" noarch
# PIC branch relaxation with offset tests. We need to use our version
# of `prune_warnings' to get rid of GAS branch relaxation noise.
-rename prune_warnings mips_old_prune_warnings
-proc prune_warnings { msg } {
- set msg1 "Assembler messages:"
- set msg2 "Warning: relaxed out-of-range branch into a jump"
- set msgx "(?:$msg1|$msg2)"
- regsub -all "(^|\[\n\r\]*)\[^\n\r\]*: $msgx\[\n\r\]*" $msg "\\1" msg
- return [mips_old_prune_warnings $msg]
+if { $has_abi(o32) } {
+ rename prune_warnings mips_old_prune_warnings
+ proc prune_warnings { msg } {
+ set msg1 "Assembler messages:"
+ set msg2 "Warning: relaxed out-of-range branch into a jump"
+ set msgx "(?:$msg1|$msg2)"
+ regsub -all "(^|\[\n\r\]*)\[^\n\r\]*: $msgx\[\n\r\]*" $msg "\\1" msg
+ return [mips_old_prune_warnings $msg]
+ }
+ run_ld_link_tests [list \
+ [list \
+ "MIPS link PIC branch relaxation with offset" \
+ "$abi_ldflags(o32) -shared -T relax-offset.ld" "" \
+ "$abi_asflags(o32) -relax-branch -mips2" \
+ {../../../gas/testsuite/gas/mips/relax-offset.s} \
+ {{objdump \
+ {-d --prefix-addresses --show-raw-insn} \
+ relax-offset.dd} \
+ {readelf -A relax-offset.gd}} \
+ "relax-offset"] \
+ [list \
+ "microMIPS link PIC branch relaxation with offset" \
+ "$abi_ldflags(o32) -shared -T relax-offset.ld" "" \
+ "$abi_asflags(o32) -relax-branch -mmicromips" \
+ {../../../gas/testsuite/gas/mips/relax-offset.s} \
+ {{objdump \
+ {-d --prefix-addresses --show-raw-insn} \
+ relax-offset-umips.dd} \
+ {readelf -A relax-offset-umips.gd}} \
+ "relax-offset-umips"]]
+ rename prune_warnings ""
+ rename mips_old_prune_warnings prune_warnings
}
-run_ld_link_tests [list \
- [list \
- "MIPS link PIC branch relaxation with offset" \
- "$abi_ldflags(o32) -shared -T relax-offset.ld" "" \
- "$abi_asflags(o32) -relax-branch -mips2" \
- {../../../gas/testsuite/gas/mips/relax-offset.s} \
- {{objdump \
- {-d --prefix-addresses --show-raw-insn} \
- relax-offset.dd} \
- {readelf -A relax-offset.gd}} \
- "relax-offset"] \
- [list \
- "microMIPS link PIC branch relaxation with offset" \
- "$abi_ldflags(o32) -shared -T relax-offset.ld" "" \
- "$abi_asflags(o32) -relax-branch -mmicromips" \
- {../../../gas/testsuite/gas/mips/relax-offset.s} \
- {{objdump \
- {-d --prefix-addresses --show-raw-insn} \
- relax-offset-umips.dd} \
- {readelf -A relax-offset-umips.gd}} \
- "relax-offset-umips"]]
-rename prune_warnings ""
-rename mips_old_prune_warnings prune_warnings
# Verify that we can link ELF input into the `binary' output format.
run_dump_test "binary"
# Verify special section processing.
-if $has_elf32 {
+if { $has_abi(o32) || $has_abi(n32) } {
run_dump_test "reginfo-0"
run_dump_test "reginfo-0r"
run_dump_test "reginfo-1"
run_dump_test "mips-abiflags-2r"
# Test that _gp_disp symbol is not present in symbol tables.
-run_dump_test "gp-disp-sym" [list [list as $abi_asflags(o32)] \
- [list ld $abi_ldflags(o32)]]
+run_dump_test_o32 "gp-disp-sym"
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch 2
#source: ../../../gas/testsuite/gas/mips/mips16-branch-reloc-2.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e bar
+#ld: -Ttext 0x1c000000 -e bar
.*: +file format .*mips.*
#name: MIPS16 link branch 3
#source: mips16-branch.s
#source: ../../../gas/testsuite/gas/mips/mips16-branch-reloc-3.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e bar
+#ld: -Ttext 0x1c000000 -e bar
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression 1
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-1.s
-#as: -EB -32
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: mips16-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression 2
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-2.s
-#as: -EB -32
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: mips16-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression with addend 1
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-addend-1.s
-#as: -EB -32
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
#dump: mips16-branch-absolute-addend.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression with addend 1 (n32)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-addend-1.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
#dump: mips16-branch-absolute-addend.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression with addend (n32)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-addend.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
#dump: mips16-branch-absolute-addend.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression with addend 1 (n64)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-addend-1.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
#dump: mips16-branch-absolute-addend.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression with addend (n64)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-addend.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
#dump: mips16-branch-absolute-addend.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression with addend
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-addend.s
-#as: -EB -32
-#ld: -EB -Ttext 0x12340000 -e foo
+#ld: -Ttext 0x12340000 -e foo
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression 1 (n32)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-1.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: mips16-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression 2 (n32)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-2.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: mips16-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression (n32)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: mips16-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression 1 (n64)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-1.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: mips16-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression 2 (n64)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute-2.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: mips16-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression (n64)
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute.s
-#as: -EB -64 -march=from-abi
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
#dump: mips16-branch-absolute.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch to absolute expression
#source: ../../../gas/testsuite/gas/mips/mips16-branch-absolute.s
-#as: -EB -32
-#ld: -EB -Ttext 0 -e foo
+#ld: -Ttext 0 -e foo
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link branch addend 2
#source: ../../../gas/testsuite/gas/mips/mips16-branch-addend-2.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e bar
+#ld: -Ttext 0x1c000000 -e bar
.*: +file format .*mips.*
#name: MIPS16 link branch addend 3
#source: mips16-branch.s
#source: ../../../gas/testsuite/gas/mips/mips16-branch-addend-3.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e bar
+#ld: -Ttext 0x1c000000 -e bar
.*: +file format .*mips.*
#name: R_MIPS16_HI16 and R_MIPS16_LO16 relocs n32
#source: ../../../gas/testsuite/gas/mips/mips16-hilo.s
#source: mips16-hilo.s
-#as: -march=mips64 -mabi=n32 -EB
#objdump: -mmips:16 --prefix-addresses -tdr --show-raw-insn
-#ld: -Tmips16-hilo.ld -e 0x500000 -N -melf32btsmipn32
+#ld: -Tmips16-hilo.ld -e 0x500000 -N
.*: file format elf.*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link PC-relative operations 0
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-0.s
-#as: -EB -32
-#ld: -EB -Ttext 0 -e 0
+#ld: -Ttext 0 -e 0
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link PC-relative operations 1
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-1.s
-#as: -EB -32 -mips3
-#ld: -EB -Ttext 0 -e 0
+#as: -mips3
+#ld: -Ttext 0 -e 0
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link PC-relative relocation with addend 2
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-addend-2.s
-#as: -EB -32
-#ld: -EB -Ttext 0x43210000 -e 0
+#ld: -Ttext 0x43210000 -e 0
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link PC-relative relocation with addend 6
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-addend-6.s
-#as: -EB -32 -mips3
-#ld: -EB -Ttext 0x43210000 -e 0
+#as: -mips3
+#ld: -Ttext 0x43210000 -e 0
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link PC-relative operations 0 (n32)
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-0.s
-#as: -EB -n32 -mips3
-#ld: -EB -Ttext 0 -e 0
+#ld: -Ttext 0 -e 0
#dump: mips16-pcrel-0.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link PC-relative operations 1 (n32)
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-1.s
-#as: -EB -n32 -mips3
-#ld: -EB -Ttext 0 -e 0
+#ld: -Ttext 0 -e 0
#dump: mips16-pcrel-1.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link PC-relative operations 0 (n64, sym32)
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-0.s
-#as: -EB -64 -msym32 -mips3
-#ld: -EB -Ttext 0 -e 0
+#as: -msym32
+#ld: -Ttext 0 -e 0
#dump: mips16-pcrel-0.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16 link PC-relative operations 1 (n64, sym32)
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-1.s
-#as: -EB -64 -msym32 -mips3
-#ld: -EB -Ttext 0 -e 0
+#as: -msym32
+#ld: -Ttext 0 -e 0
#dump: mips16-pcrel-1.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16e2 link PC-relative operations 0
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-0.s
-#as: -EB -32 -mips32r2 -mmips16e2
-#ld: -EB -Ttext 0 -e 0
+#as: -mips32r2 -mmips16e2
+#ld: -Ttext 0 -e 0
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16e2 link PC-relative operations 1
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-1.s
-#as: -EB -32 -mips64r2 -mmips16e2
-#ld: -EB -Ttext 0 -e 0
+#as: -mips64r2 -mmips16e2
+#ld: -Ttext 0 -e 0
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16e2 link PC-relative relocation with addend 2
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-addend-2.s
-#as: -EB -32 -mips32r2 -mmips16e2
-#ld: -EB -Ttext 0x43210000 -e 0
+#as: -mips32r2 -mmips16e2
+#ld: -Ttext 0x43210000 -e 0
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16e2 link PC-relative relocation with addend 6
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-addend-6.s
-#as: -EB -32 -mips64r2 -mmips16e2
-#ld: -EB -Ttext 0x43210000 -e 0
+#as: -mips64r2 -mmips16e2
+#ld: -Ttext 0x43210000 -e 0
.*: +file format .*mips.*
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16e2 link PC-relative operations 0 (n32)
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-0.s
-#as: -EB -n32 -mips64r2 -mmips16e2
-#ld: -EB -Ttext 0 -e 0
+#as: -mips64r2 -mmips16e2
+#ld: -Ttext 0 -e 0
#dump: mips16e2-pcrel-0.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16e2 link PC-relative operations 1 (n32)
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-1.s
-#as: -EB -n32 -mips64r2 -mmips16e2
-#ld: -EB -Ttext 0 -e 0
+#as: -mips64r2 -mmips16e2
+#ld: -Ttext 0 -e 0
#dump: mips16e2-pcrel-1.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16e2 link PC-relative operations 0 (n64, sym32)
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-0.s
-#as: -EB -64 -msym32 -mips64r2 -mmips16e2
-#ld: -EB -Ttext 0 -e 0
+#as: -msym32 -mips64r2 -mmips16e2
+#ld: -Ttext 0 -e 0
#dump: mips16e2-pcrel-0.d
#objdump: -dr --prefix-addresses --show-raw-insn
#name: MIPS16e2 link PC-relative operations 1 (n64, sym32)
#source: ../../../gas/testsuite/gas/mips/mips16-pcrel-1.s
-#as: -EB -64 -msym32 -mips64r2 -mmips16e2
-#ld: -EB -Ttext 0 -e 0
+#as: -msym32 -mips64r2 -mmips16e2
+#ld: -Ttext 0 -e 0
#dump: mips16e2-pcrel-1.d
#name: MIPS multi-got-1
-#as: -EB -32 -KPIC
+#as: -KPIC
#source: multi-got-1-1.s
#source: multi-got-1-2.s
-#ld: -melf32btsmip -shared
+#ld: -shared
#readelf: -d -r
Dynamic section at offset .* contains 17 entries:
#name: MIPS multi-got-hidden-1
-#as: -EB -32 -KPIC
+#as: -KPIC
#source: multi-got-1-1.s
#source: multi-got-1-2.s
#source: multi-got-hidden-1.s
-#ld: -melf32btsmip -e 0
+#ld: -e 0
#objdump: -dr
#pass
#name: MIPS multi-got-hidden-2
-#as: -EB -32 -KPIC
+#as: -KPIC
#source: multi-got-1-1.s
#source: multi-got-hidden-2.s
-#ld: -melf32btsmip -e 0
+#ld: -e 0
#objdump: -dr
#pass
#name: MIPS multi-got-no-shared
-#as: -EB -32 -KPIC -mno-shared
+#as: -KPIC -mno-shared
#source: multi-got-no-shared-1.s
#source: multi-got-no-shared-2.s
-#ld: -melf32btsmip --entry func1
+#ld: --entry func1
#objdump: -D -j .text --prefix-addresses --show-raw-insn
.*: +file format.*
-#as: -march=from-abi -mabi=n32 -EB
#source: no-shared-1-o32.s
-#ld: -melf32btsmipn32 -T no-shared-1.ld
+#ld: -T no-shared-1.ld
#objdump: -dr -j.text -j.data -j.got
.*
-#as: -march=from-abi -mabi=64 -EB
-#ld: -melf64btsmip -T no-shared-1.ld
+#ld: -T no-shared-1.ld
#objdump: -dr -j.text -j.data -j.got
.*
-#as: -mabi=32 -EB
-#ld: -melf32btsmip -T no-shared-1.ld
+#ld: -T no-shared-1.ld
#objdump: -dr -j.text -j.data -j.got
.*
#source: pic-and-nonpic-2a.s
#source: pic-and-nonpic-2b.s
-#as: -32 -EB
-#ld: -melf32btsmip -Tpic-and-nonpic-1.ld
+#ld: -Tpic-and-nonpic-1.ld
#objdump: -dr
.*
#name: PIC and non-PIC test 3 (error)
#source: pic-and-nonpic-3b.s
-#as: -EB -32 -mips2
-#ld: tmpdir/pic-and-nonpic-3a.so -melf32btsmip -znocopyreloc
+#as: -mips2
+#ld: tmpdir/pic-and-nonpic-3a.so -znocopyreloc
#error: .*: non-dynamic relocations refer to dynamic symbol foo
#name: PIC and non-PIC test 4 (error)
#source: pic-and-nonpic-4b.s
-#as: -EB -32 -mips2
-#ld: tmpdir/pic-and-nonpic-4a.so -melf32btsmip -znocopyreloc
+#as: -mips2
+#ld: tmpdir/pic-and-nonpic-4a.so -znocopyreloc
#error: .*: non-dynamic relocations refer to dynamic symbol obj1
#source: pie.s
-#as: -march=from-abi -mabi=n32 -EB
-#ld: -melf32btsmipn32 -pie
+#ld: -pie
#readelf: -d
Dynamic section at offset 0x180 contains 17 entries:
#source: pie.s
-#as: -march=from-abi -mabi=64 -EB
-#ld: -melf64btsmip -pie
+#ld: -pie
#readelf: -d
Dynamic section at offset 0x208 contains 17 entries:
#source: pie.s
-#as: -mabi=32 -EB
-#ld: -melf32btsmip -pie
+#ld: -pie
#readelf: -d
Dynamic section at offset 0x178 contains 17 entries:
#name: MIPS rel32 n32
#source: rel32.s
-#as: -march=from-abi -KPIC -EB -n32
+#as: -KPIC
#readelf: -x .text -r
-#ld: -shared -melf32btsmipn32
+#ld: -shared
Relocation section '.rel.dyn' at offset .* contains 2 entries:
Offset Info Type Sym.Value Sym. Name
#name: MIPS rel32 o32
#source: rel32.s
-#as: -KPIC -EB -32
+#as: -KPIC
#readelf: -x .text -r
-#ld: -shared -melf32btsmip
+#ld: -shared
Relocation section '.rel.dyn' at offset .* contains 2 entries:
Offset Info Type Sym.Value Sym. Name
#name: MIPS rel64 n64
#source: rel64.s
-#as: -march=from-abi -KPIC -EB -64
+#as: -KPIC
#readelf: -x .text -r
-#ld: -shared -melf64btsmip
+#ld: -shared
Relocation section '.rel.dyn' at offset .* contains 2 entries:
Offset Info Type Sym. Value Sym. Name
#name: MIPS relax-jalr n32
#source: relax-jalr.s
-#as: -march=from-abi -KPIC -n32 -EB
+#as: -KPIC
#objdump: --prefix-addresses -d --show-raw-insn
-#ld: -melf32btsmipn32
+#ld:
.*: file format elf.*mips.*
-#source: reloc-1a.s -march=from-abi -mabi=n32 -EB
-#source: reloc-1b.s -march=from-abi -mabi=n32 -EB
+#source: reloc-1a.s
+#source: reloc-1b.s
#ld: -r
#readelf: --relocs
-#source: reloc-1a.s -march=from-abi -mabi=64 -EB
-#source: reloc-1b.s -march=from-abi -mabi=64 -EB
+#source: reloc-1a.s
+#source: reloc-1b.s
#ld: -r
#readelf: --relocs
-#source: reloc-2a.s -EB -mabi=32
-#source: reloc-2b.s -EB -mabi=32
+#source: reloc-2a.s
+#source: reloc-2b.s
#ld: --oformat=srec -Treloc-2.ld
-#objdump: -D -mmips:4000 --endian=big
+#objdump: -D -mmips:4000
.*: file format .*
#name: R_MIPS16_GPREL reloc n32
#source: ../../../gas/testsuite/gas/mips/elf-rel6.s
-#as: -march=mips64 -mabi=n32 -EB
+#as: -march=mips64
#objdump: --prefix-addresses -tdr --show-raw-insn
-#ld: -Ttext 0x20000000 -e 0x20000000 -N -melf32btsmipn32
+#ld: -Ttext 0x20000000 -e 0x20000000 -N
.*: file format elf.*mips.*
#name: MIPS reloc against local symbol overflow
#source: reloc-local-overflow.s
-#as: -EB -32
-#ld: -EB -Tdata 0x10000 -e 0
+#ld: -Tdata 0x10000 -e 0
#error: \A[^\n]*:\(\.data\+0x1000\): relocation truncated to fit: R_MIPS_16 against `\.data'\Z
# Verify that the section name (`.data') is printed rather than `no symbol'.
#name: MIPS textrel-1
#source: textrel-1.s
-#as: -march=from-abi -EB -n32
-#ld: -shared -melf32btsmipn32
+#ld: -shared
#readelf: -d
Dynamic section at offset .* contains 17 entries:
#name: MIPS link branch to unaligned symbol 2
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#source: ../../../gas/testsuite/gas/mips/unaligned-branch-2.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x101c\): branch to a non-instruction-aligned address\n
#name: MIPS link branch to unaligned symbol 2 (ignore branch ISA)
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 --ignore-branch-isa
#source: ../../../gas/testsuite/gas/mips/unaligned-branch-2.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x101c\): branch to a non-instruction-aligned address\n
#name: microMIPS link branch to unaligned symbol (ignore branch ISA)
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 --ignore-branch-isa
#source: ../../../gas/testsuite/gas/mips/unaligned-branch-micromips-2.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x100a\): cannot convert a branch to JALX for a non-word-aligned address\n
#name: MIPS16 link branch to unaligned symbol (ignore branch ISA)
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 --ignore-branch-isa
#source: ../../../gas/testsuite/gas/mips/unaligned-branch-mips16-2.s
#error: [^\n]*: in function `foo':\n
#error: \(\.text\+0x1008\): cannot convert a branch to JALX for a non-word-aligned address\n
#name: MIPSr6 link branch to unaligned symbol 1 (ignore branch ISA)
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000 --ignore-branch-isa
+#ld: -Ttext 0x1c000000 -e 0x1c000000 --ignore-branch-isa
#source: ../../../gas/testsuite/gas/mips/unaligned-branch-r6-3.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x101c\): branch to a non-instruction-aligned address\n
#name: microMIPS link branch to unaligned symbol
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#source: ../../../gas/testsuite/gas/mips/unaligned-branch-micromips-2.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x100a\): cannot convert a branch to JALX for a non-word-aligned address\n
#name: MIPS16 link branch to unaligned symbol
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#source: ../../../gas/testsuite/gas/mips/unaligned-branch-mips16-2.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x1002\): unsupported branch between ISA modes\n
#name: MIPSr6 link branch to unaligned symbol 1
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#source: ../../../gas/testsuite/gas/mips/unaligned-branch-r6-3.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x101c\): branch to a non-instruction-aligned address\n
#name: MIPSr6 link branch to unaligned symbol 2
-#as: -EB -n32 -mips64r6
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#as: -mips64r6
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#source: ../../../gas/testsuite/gas/mips/unaligned-branch-r6-4.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x101c\): branch to a non-instruction-aligned address\n
#name: MIPS branch to unaligned symbol
#source: unaligned-branch.s
#source: unaligned-text.s
-#as: -EB -32 -mips32r6
-#ld: -EB -Ttext 0x10000000 -e 0x10000000
+#as: -mips32r6
+#ld: -Ttext 0x10000000 -e 0x10000000
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x14\): branch to a non-instruction-aligned address\n
#error: \(\.text\+0x1c\): branch to a non-instruction-aligned address\n
#name: MIPS JALX to unaligned symbol with addend 0
#source: unaligned-jalx-addend-0.s
#source: unaligned-insn.s -mips16
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: MIPS JALX to unaligned symbol with addend 1
#source: unaligned-jalx-addend-1.s
#source: unaligned-insn.s -mips16
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x[0-9a-f]+\): cannot convert a jump to JALX for a non-word-aligned address\n
#error: \(\.text\+0x[0-9a-f]+\): cannot convert a jump to JALX for a non-word-aligned address\n
#name: MIPS JALX to unaligned symbol with addend 2
#source: unaligned-jalx-addend-2.s
#source: unaligned-insn.s -mips16
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#dump: unaligned-jalx-addend-0.d
#name: MIPS JALX to unaligned symbol with addend 3
#source: unaligned-jalx-addend-3.s
#source: unaligned-insn.s -mips16
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x0\): cannot convert a branch to JALX for a non-word-aligned address\n
#error: \(\.text\+0x8\): cannot convert a branch to JALX for a non-word-aligned address\n
#name: microMIPS JALX to unaligned symbol with addend 0
#source: unaligned-jalx-addend-0.s -mmicromips
#source: unaligned-insn.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: microMIPS JALX to unaligned symbol with addend 1
#source: unaligned-jalx-addend-1.s -mmicromips
#source: unaligned-insn.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x[0-9a-f]+\): cannot convert a jump to JALX for a non-word-aligned address\n
#name: MIPS16 JALX to unaligned symbol with addend 0
#source: unaligned-jalx-addend-0.s -mips16
#source: unaligned-insn.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: MIPS16 JALX to unaligned symbol with addend 1
#source: unaligned-jalx-addend-1.s -mips16
#source: unaligned-insn.s
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x[0-9a-f]+\): cannot convert a jump to JALX for a non-word-aligned address\n
#name: microMIPS link jump to unaligned symbol
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#source: ../../../gas/testsuite/gas/mips/unaligned-jump-micromips-2.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x1012\): unsupported jump between ISA modes; consider recompiling with interlinking enabled\n
#name: MIPS16 link jump to unaligned symbol
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#source: ../../../gas/testsuite/gas/mips/unaligned-jump-mips16-2.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x100e\): cannot convert a jump to JALX for a non-word-aligned address\n
#name: MIPS link jump to unaligned symbol
-#as: -EB -n32 -march=from-abi
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
+#ld: -Ttext 0x1c000000 -e 0x1c000000
#source: ../../../gas/testsuite/gas/mips/unaligned-jump-2.s
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x1004\): unsupported JALX to the same ISA mode\n
#name: MIPS LDPC from unaligned symbol 0
#source: unaligned-ldpc-0.s
#source: unaligned-data.s
-#as: -EB -32 -mips64r6
-#ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
+#as: -mips64r6
+#ld: -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: MIPS LDPC from unaligned symbol 1
#source: unaligned-ldpc-1.s
#source: unaligned-data.s
-#as: -EB -32 -mips64r6
-#ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
+#as: -mips64r6
+#ld: -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\n
#error: \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\n
#name: MIPS LWPC from unaligned symbol 0
#source: unaligned-lwpc-0.s
#source: unaligned-data.s
-#as: -EB -32 -mips32r6
-#ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
+#as: -mips32r6
+#ld: -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
#objdump: -dr --prefix-addresses --show-raw-insn
.*: +file format .*mips.*
#name: MIPS LWPC from unaligned symbol 1
#source: unaligned-lwpc-1.s
#source: unaligned-data.s
-#as: -EB -32 -mips32r6
-#ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
+#as: -mips32r6
+#ld: -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
#error: \A[^\n]*: in function `foo':\n
#error: \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\n
#error: \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\Z