MIPS/LD/testsuite: Fix MIPS16 interlinking test n64 regressions
authorYunQiang Su <yunqiang.su@cipunited.com>
Fri, 28 Jul 2023 05:00:36 +0000 (06:00 +0100)
committerMaciej W. Rozycki <macro@orcam.me.uk>
Fri, 28 Jul 2023 05:00:36 +0000 (06:00 +0100)
commit3c8ed624caf3317b2155a8c00a7af6a8bb6a3c10
tree6ab2b428e1457bd24e077796f74562ecbc8013f7
parentce0077a2e724146285c282037a41c68de6c0608d
MIPS/LD/testsuite: Fix MIPS16 interlinking test n64 regressions

The MIPS16 interlinking test for local functions expects to be assembled
with 32-bit addressing, otherwise causing assembly warnings:

.../ld/testsuite/ld-mips-elf/mips16-local-stubs-1.s: Assembler messages:
.../ld/testsuite/ld-mips-elf/mips16-local-stubs-1.s:16: Warning: la used to load 64-bit address; recommend using dla instead

Use the per-ABI framework then to run the test explicitly for o32 and
n32 ABIs only, replacing the `-mips4' option from the `as' tag with
`.module mips4' pseudo-op within the source itself so as to avoid
assembly errors:

Assembler messages:
Error: -mips4 conflicts with the other architecture options, which imply -mips3

with n32 testing for some targets, and ultimately removing these
regressions:

mips64-openbsd  -FAIL: MIPS16 interlinking for local functions 1
mips64el-openbsd  -FAIL: MIPS16 interlinking for local functions 1

Co-Authored-By: Maciej W. Rozycki <macro@orcam.me.uk>
ld/
* testsuite/ld-mips-elf/mips16-local-stubs-1.d: Remove `-mips4'
from the `as' tag.
* testsuite/ld-mips-elf/mips16-local-stubs-1.s: Add `.module
mips4'.
* testsuite/ld-mips-elf/mips-elf.exp: Run `mips16-local-stubs-1'
for o32 and n32 ABIs only.
ld/testsuite/ld-mips-elf/mips-elf.exp
ld/testsuite/ld-mips-elf/mips16-local-stubs-1.d
ld/testsuite/ld-mips-elf/mips16-local-stubs-1.s