This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Testsuite breakage from "[committed] Remove o(b) MIPS macros and use A(b) instead"
- From: Richard Sandiford <rdsandiford at googlemail dot com>
- To: Hans-Peter Nilsson <hans-peter dot nilsson at axis dot com>
- Cc: binutils at sourceware dot org
- Date: Tue, 09 Jul 2013 18:15:54 +0100
- Subject: Re: Testsuite breakage from "[committed] Remove o(b) MIPS macros and use A(b) instead"
- References: <201307091023 dot r69ANkR5011655 at ignucius dot se dot axis dot com>
Hans-Peter Nilsson <hans-peter.nilsson@axis.com> writes:
>> From: Richard Sandiford <rdsandiford@googlemail.com>
>> Sender: "binutils-owner@sourceware.org" <binutils-owner@sourceware.org>
>
>> Date: Sun, 7 Jul 2013 13:38:11 +0200
>> gas/testsuite/
>> * gas/mips/ldstla-32.d: Avoid "lui at,0x0" sequences for
>> truncated constants.
>> * gas/mips/ldstla-32-shared.d: Likewise.
>> * gas/mips/mcu.d: Use ADDIU in preference to LI+ADDU when adding
>> 16-bit constants to the base.
>> * gas/mips/micromips@mcu.d: Likewise.
>> * gas/mips/micromips@cache.d: Likewise.
>> * gas/mips/micromips@pref.d: Likewise.
>> * gas/mips/micromips.d, gas/mips/micromips-insn32.d,
>> gas/mips/micromips-noinsn32.d, gas/mips/micromips-trap.d: Likewise.
>> Allow the full 16-bit offset range to be used for SB, LB and LBU in
>> USH and ULH sequences. Fix the expected output for LD and SD when
>> the two LW and SW offsets need different high parts.
>> * gas/mips/eva.s: Test PREFE with relocation operators.
>> * gas/mips/eva.d: Use ADDIU in preference to LI+ADDU for 16-bit
>> constants. Update after eva.s change.
>> * gas/mips/micromips@eva.d: Likewise.
>> * gas/mips/ld-reloc.s, gas/mips/ld-reloc.d, gas/mips/l_d-reloc.s,
>> gas/mips/l_d-reloc.d, gas/mips/ulw-reloc.s, gas/mips/ulw-reloc.d,
>> gas/mips/micromips@ulw-reloc.d, gas/mips/ulh-reloc.s,
>> gas/mips/ulh-reloc.d: New tests.
>> * gas/mips/mips.exp: Run them.
>
> The mips.exp change references la-reloc.d and dla-reloc.d not
> included in the post or committed, [...]
Sorry, here are the missing pieces.
Richard
gas/testsuite/
* gas/mips/la-reloc.s, gas/mips/la-reloc.d, gas/mips/dla-reloc.s,
gas/mips/dla-reloc.d: Add files missing from earlier commit.
Index: gas/testsuite/gas/mips/la-reloc.s
===================================================================
--- /dev/null 2013-07-07 08:24:27.294569946 +0100
+++ gas/testsuite/gas/mips/la-reloc.s 2013-07-09 18:05:30.060420691 +0100
@@ -0,0 +1,13 @@
+ .ent func
+func:
+ la $4,%lo(foo)
+ la $4,%hi(foo)
+ la $4,%lo(0x12348765)
+ la $4,%hi(0x12348765)
+ la $4,%lo(foo)($5)
+ la $4,%hi(foo)($5)
+ la $4,%lo(0x12348765)($5)
+ la $4,%hi(0x12348765)($5)
+ la $4,%lo(foo+0x12348765)($5)
+ la $4,%hi(foo+0x12348765)($5)
+ .end func
Index: gas/testsuite/gas/mips/la-reloc.d
===================================================================
--- /dev/null 2013-07-07 08:24:27.294569946 +0100
+++ gas/testsuite/gas/mips/la-reloc.d 2013-07-09 18:05:30.060420691 +0100
@@ -0,0 +1,24 @@
+#as: -32
+#objdump: -dr --prefix-addresses
+#name: LA with relocation operators
+
+.*file format.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> li a0,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> li a0,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> li a0,-30875
+[0-9a-f]+ <[^>]*> li a0,4661
+[0-9a-f]+ <[^>]*> addiu a0,a1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> addiu a0,a1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> addiu a0,a1,-30875
+[0-9a-f]+ <[^>]*> addiu a0,a1,4661
+[0-9a-f]+ <[^>]*> addiu a0,a1,-30875
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> addiu a0,a1,4661
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+#pass
Index: gas/testsuite/gas/mips/dla-reloc.s
===================================================================
--- /dev/null 2013-07-07 08:24:27.294569946 +0100
+++ gas/testsuite/gas/mips/dla-reloc.s 2013-07-09 18:05:30.059420682 +0100
@@ -0,0 +1,15 @@
+ .ent func
+func:
+ dla $4,%lo(foo)
+ dla $4,%hi(foo)
+ dla $4,%lo(0x12348765)
+ dla $4,%hi(0x12348765)
+ dla $4,%lo(foo)($5)
+ dla $4,%hi(foo)($5)
+ dla $4,%lo(0x12348765)($5)
+ dla $4,%hi(0x12348765)($5)
+ dla $4,%lo(foo+0x12348765)($5)
+ dla $4,%hi(foo+0x12348765)($5)
+ dla $4,%hi(%neg(%gp_rel(bar)))($5)
+ dla $4,%lo(%neg(%gp_rel(bar)))($5)
+ .end func
Index: gas/testsuite/gas/mips/dla-reloc.d
===================================================================
--- /dev/null 2013-07-07 08:24:27.294569946 +0100
+++ gas/testsuite/gas/mips/dla-reloc.d 2013-07-09 18:05:30.059420682 +0100
@@ -0,0 +1,44 @@
+#as: -64
+#objdump: -dr --prefix-addresses
+#name: DLA with relocation operators
+
+.*file format.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> daddiu a0,zero,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[0-9a-f]+ <[^>]*> daddiu a0,zero,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[0-9a-f]+ <[^>]*> daddiu a0,zero,-30875
+[0-9a-f]+ <[^>]*> daddiu a0,zero,4661
+[0-9a-f]+ <[^>]*> daddiu a0,a1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[0-9a-f]+ <[^>]*> daddiu a0,a1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[0-9a-f]+ <[^>]*> daddiu a0,a1,-30875
+[0-9a-f]+ <[^>]*> daddiu a0,a1,4661
+[0-9a-f]+ <[^>]*> daddiu a0,a1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo\+0x12348765
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[0-9a-f]+ <[^>]*> daddiu a0,a1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo\+0x12348765
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[ ]*[0-9a-f]+: R_MIPS_NONE .*
+[0-9a-f]+ <[^>]*> daddiu a0,a1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 bar
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_SUB \*ABS\*
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 \*ABS\*
+[0-9a-f]+ <[^>]*> daddiu a0,a1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 bar
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_SUB \*ABS\*
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 \*ABS\*
+#pass