* gas/mips/elempic.d: File removed as part of -membedded-pic removal.
* gas/mips/empic.d: Likewise.
* gas/mips/empic.l: Likewise.
* gas/mips/empic.s: Likewise.
* gas/mips/empic2.d: Likewise.
* gas/mips/empic2.s: Likewise.
* gas/mips/empic3_e.d: Likewise.
* gas/mips/empic3_e.s: Likewise.
* gas/mips/empic3_g1.d: Likewise.
* gas/mips/empic3_g1.s: Likewise.
* gas/mips/empic3_g2.d: Likewise.
* gas/mips/empic3_g2.s: Likewise.
* gas/mips/jal-empic-elf-2.d: Likewise.
* gas/mips/jal-empic-elf-2.s: Likewise.
* gas/mips/jal-empic-elf-3.d: Likewise.
* gas/mips/jal-empic-elf-3.s: Likewise.
* gas/mips/jal-empic-elf.d: Likewise.
* gas/mips/jal-empic.d: Likewise.
* gas/mips/la-empic.d: Likewise.
* gas/mips/la-empic.s: Likewise.
* gas/mips/lb-empic.d: Likewise.
* gas/mips/ld-empic.d: Likewise.
* gas/mips/lif-empic.d: Likewise.
* gas/mips/telempic.d: Likewise.
* gas/mips/tempic.d: Likewise.
* gas/mips/ulh-empic.d: Likewise.
* gas/mips/ld-pic.s: Remove code conditional on EMPIC.
* gas/mips/lifloat.s: Likewise.
* gas/mips/mips.exp: Remove -membedded-pic tests and related comments.
+++ /dev/null
-#objdump: -rst -mmips:4000
-#name: MIPS empic
-#as: -mabi=o64 -membedded-pic -mips3
-#source: empic.s
-#stderr: empic.l
-
-# Check GNU-specific embedded relocs, for ELF.
-
-.*: +file format elf.*mips.*
-
-SYMBOL TABLE:
-0+0000000 l d \.text 0+0000000 (|\.text)
-0+0000000 l d \.data 0+0000000 (|\.data)
-0+0000000 l d \.bss 0+0000000 (|\.bss)
-0+0000000 l d \.foo 0+0000000 (|\.foo)
-0+0000000 l d \.reginfo 0+0000000 (|\.reginfo)
-0+0000000 l d \.(mdebug|pdr) 0+0000000 (|\.mdebug|\.pdr)
-0+0000004 l \.text 0+0000000 l2
-0+0000000 \*UND\* 0+0000000 g1
-0+0000000 \*UND\* 0+0000000 g2
-0+0000100 l \.foo 0+0000000 l1
-0+0000034 l \.text 0+0000000 l3
-0+0000098 l \.text 0+0000000 l5
-0+0000004 l \.foo 0+0000000 l4
-
-
-RELOCATION RECORDS FOR \[\.text\]:
-OFFSET [ ]+ TYPE VALUE
-0+0000004 R_MIPS_GNU_REL16_S2 g1
-0+000000c R_MIPS_GNU_REL16_S2 g2
-0+0000014 R_MIPS_GNU_REL16_S2 g2
-0+000001c R_MIPS_GNU_REL16_S2 \.foo
-0+0000024 R_MIPS_GNU_REL16_S2 \.text
-0+000002c R_MIPS_GNU_REL16_S2 \.foo
-0+0000034 R_MIPS_GNU_REL16_S2 \.text
-0+000003c R_MIPS_GNU_REL_HI16 g1
-0+0000040 R_MIPS_GNU_REL_LO16 g1
-0+0000044 R_MIPS_GNU_REL_HI16 \.foo
-0+0000048 R_MIPS_GNU_REL_LO16 \.foo
-0+0000050 R_MIPS_32 g1
-0+0000054 R_MIPS_32 \.foo
-0+0000058 R_MIPS_32 \.text
-0+000005c R_MIPS_PC32 g1
-0+0000060 R_MIPS_PC32 \.foo
-0+0000068 R_MIPS_64 g1
-0+0000070 R_MIPS_64 \.foo
-0+0000078 R_MIPS_64 \.text
-0+0000080 R_MIPS_PC64 g1
-0+0000088 R_MIPS_PC64 \.foo
-0+0000098 R_MIPS_GNU_REL16_S2 \.text
-0+000009c R_MIPS_GNU_REL16_S2 \.text
-0+00000a0 R_MIPS_GNU_REL_HI16 \.text
-0+00000a4 R_MIPS_GNU_REL_LO16 \.text
-0+00000a8 R_MIPS_GNU_REL_HI16 \.text
-0+00000ac R_MIPS_GNU_REL_LO16 \.text
-0+00000b0 R_MIPS_32 \.text
-0+00000b8 R_MIPS_64 \.text
-0+00000cc R_MIPS_GNU_REL16_S2 \.text
-0+00000d0 R_MIPS_GNU_REL16_S2 \.text
-0+00000d4 R_MIPS_GNU_REL_HI16 \.text
-0+00000d8 R_MIPS_GNU_REL_LO16 \.text
-0+00000dc R_MIPS_GNU_REL_HI16 \.text
-0+00000e0 R_MIPS_GNU_REL_LO16 \.text
-0+00000e4 R_MIPS_32 \.text
-0+00000f0 R_MIPS_64 \.text
-
-
-RELOCATION RECORDS FOR \[\.foo\]:
-OFFSET [ ]+ TYPE VALUE
-0+0000004 R_MIPS_GNU_REL_HI16 g1
-0+0000008 R_MIPS_GNU_REL_LO16 g1
-0+000000c R_MIPS_GNU_REL_HI16 \.foo
-0+0000010 R_MIPS_GNU_REL_LO16 \.foo
-0+0000014 R_MIPS_GNU_REL_HI16 \.text
-0+0000018 R_MIPS_GNU_REL_LO16 \.text
-0+000001c R_MIPS_GNU_REL_HI16 g1
-0+0000020 R_MIPS_GNU_REL_LO16 g1
-0+0000024 R_MIPS_GNU_REL_HI16 g1
-0+0000028 R_MIPS_GNU_REL_LO16 g1
-0+000002c R_MIPS_GNU_REL_HI16 \.foo
-0+0000030 R_MIPS_GNU_REL_LO16 \.foo
-0+0000034 R_MIPS_GNU_REL_HI16 \.text
-0+0000038 R_MIPS_GNU_REL_LO16 \.text
-0+000003c R_MIPS_32 g1
-0+0000040 R_MIPS_32 \.foo
-0+0000044 R_MIPS_32 \.text
-0+0000048 R_MIPS_PC32 g1
-0+0000050 R_MIPS_PC32 \.text
-0+0000058 R_MIPS_64 g1
-0+0000060 R_MIPS_64 \.foo
-0+0000068 R_MIPS_64 \.text
-0+0000070 R_MIPS_PC64 g1
-0+0000080 R_MIPS_PC64 \.text
-0+0000088 R_MIPS_GNU_REL_HI16 g1
-0+000008c R_MIPS_GNU_REL_LO16 g1
-0+0000090 R_MIPS_GNU_REL_HI16 \.foo
-0+0000094 R_MIPS_GNU_REL_LO16 \.foo
-0+0000098 R_MIPS_GNU_REL_HI16 \.text
-0+000009c R_MIPS_GNU_REL_LO16 \.text
-0+00000a0 R_MIPS_GNU_REL_HI16 g1
-0+00000a4 R_MIPS_GNU_REL_LO16 g1
-0+00000a8 R_MIPS_GNU_REL_HI16 \.foo
-0+00000ac R_MIPS_GNU_REL_LO16 \.foo
-0+00000b0 R_MIPS_GNU_REL_HI16 \.text
-0+00000b4 R_MIPS_GNU_REL_LO16 \.text
-0+00000b8 R_MIPS_32 g1
-0+00000bc R_MIPS_32 \.foo
-0+00000c0 R_MIPS_32 \.text
-0+00000c4 R_MIPS_PC32 g1
-0+00000cc R_MIPS_PC32 \.text
-0+00000d0 R_MIPS_64 g1
-0+00000d8 R_MIPS_64 \.foo
-0+00000e0 R_MIPS_64 \.text
-0+00000e8 R_MIPS_PC64 g1
-0+00000f8 R_MIPS_PC64 \.text
-
-Contents of section \.text:
- 0000 00000000 ffff1104 00000000 ffff0010 .*
- 0010 00000000 ffff0010 00000000 3f001104 .*
- 0020 00000000 00001104 00000000 41000010 .*
- 0030 00000000 00000010 00000000 0000033c .*
- 0040 0c0063[26]4 0000033c 140163[26]4 d0ff03[26]4 .*
- 0050 00000000 00010000 04000000 28000000 .*
- 0060 2c010000 d0ffffff 00000000 00000000 .*
- 0070 00010000 00000000 04000000 00000000 .*
- 0080 4c000000 00000000 54010000 00000000 .*
- 0090 d0ffffff ffffffff 32000010 33000010 .*
- 00a0 0000033c d80063[26]4 0000033c e80063[26]4 .*
- 00b0 cc000000 34000000 cc000000 00000000 .*
- 00c0 34000000 00000000 00000000 32000010 .*
- 00d0 33000010 0000033c 0c0163[26]4 0000033c .*
- 00e0 1c0163[26]4 cc000000 34000000 00000000 .*
- 00f0 cc000000 00000000 34000000 00000000 .*
-Contents of section \.reginfo:
- 0000 08000080 00000000 00000000 00000000 .*
- 0010 00000000 00000000 .*
-Contents of section \.foo:
- 0000 00000000 0000033c 040063[26]4 0000033c .*
- 0010 0c0163[26]4 0000033c 180063[26]4 0000033c .*
- 0020 1c0063[26]4 0000033c 240063[26]4 0000033c .*
- 0030 2c0163[26]4 0000033c 380063[26]4 00000000 .*
- 0040 00010000 04000000 44000000 fc000000 .*
- 0050 50000000 00000000 00000000 00000000 .*
- 0060 00010000 00000000 04000000 00000000 .*
- 0070 6c000000 00000000 fc000000 00000000 .*
- 0080 80000000 00000000 0000033c 8c0063[26]4 .*
- 0090 0000033c 940163[26]4 0000033c a00063[26]4 .*
- 00a0 0000033c a40063[26]4 0000033c ac0163[26]4 .*
- 00b0 0000033c b80063[26]4 04000000 04010000 .*
- 00c0 08000000 c4000000 00010000 d0000000 .*
- 00d0 04000000 00000000 04010000 00000000 .*
- 00e0 08000000 00000000 e8000000 00000000 .*
- 00f0 00010000 00000000 fc000000 00000000 .*
- 0100 00000000 00000000 00000000 00000000 .*
+++ /dev/null
-#objdump: -rst -mmips:4000
-#name: MIPS empic
-#as: -mabi=o64 -membedded-pic -mips3
-#stderr: empic.l
-
-# Check GNU-specific embedded relocs, for ELF.
-
-.*: +file format elf.*mips.*
-
-SYMBOL TABLE:
-0+0000000 l d \.text 0+0000000 (|\.text)
-0+0000000 l d \.data 0+0000000 (|\.data)
-0+0000000 l d \.bss 0+0000000 (|\.bss)
-0+0000000 l d \.foo 0+0000000 (|\.foo)
-0+0000000 l d \.reginfo 0+0000000 (|\.reginfo)
-0+0000000 l d \.(mdebug|pdr) 0+0000000 (|\.mdebug|\.pdr)
-0+0000004 l \.text 0+0000000 l2
-0+0000000 \*UND\* 0+0000000 g1
-0+0000000 \*UND\* 0+0000000 g2
-0+0000100 l \.foo 0+0000000 l1
-0+0000034 l \.text 0+0000000 l3
-0+0000098 l \.text 0+0000000 l5
-0+0000004 l \.foo 0+0000000 l4
-
-
-RELOCATION RECORDS FOR \[\.text\]:
-OFFSET [ ]+ TYPE VALUE
-0+0000004 R_MIPS_GNU_REL16_S2 g1
-0+000000c R_MIPS_GNU_REL16_S2 g2
-0+0000014 R_MIPS_GNU_REL16_S2 g2
-0+000001c R_MIPS_GNU_REL16_S2 \.foo
-0+0000024 R_MIPS_GNU_REL16_S2 \.text
-0+000002c R_MIPS_GNU_REL16_S2 \.foo
-0+0000034 R_MIPS_GNU_REL16_S2 \.text
-0+000003c R_MIPS_GNU_REL_HI16 g1
-0+0000040 R_MIPS_GNU_REL_LO16 g1
-0+0000044 R_MIPS_GNU_REL_HI16 \.foo
-0+0000048 R_MIPS_GNU_REL_LO16 \.foo
-0+0000050 R_MIPS_32 g1
-0+0000054 R_MIPS_32 \.foo
-0+0000058 R_MIPS_32 \.text
-0+000005c R_MIPS_PC32 g1
-0+0000060 R_MIPS_PC32 \.foo
-0+0000068 R_MIPS_64 g1
-0+0000070 R_MIPS_64 \.foo
-0+0000078 R_MIPS_64 \.text
-0+0000080 R_MIPS_PC64 g1
-0+0000088 R_MIPS_PC64 \.foo
-0+0000098 R_MIPS_GNU_REL16_S2 \.text
-0+000009c R_MIPS_GNU_REL16_S2 \.text
-0+00000a0 R_MIPS_GNU_REL_HI16 \.text
-0+00000a4 R_MIPS_GNU_REL_LO16 \.text
-0+00000a8 R_MIPS_GNU_REL_HI16 \.text
-0+00000ac R_MIPS_GNU_REL_LO16 \.text
-0+00000b0 R_MIPS_32 \.text
-0+00000b8 R_MIPS_64 \.text
-0+00000cc R_MIPS_GNU_REL16_S2 \.text
-0+00000d0 R_MIPS_GNU_REL16_S2 \.text
-0+00000d4 R_MIPS_GNU_REL_HI16 \.text
-0+00000d8 R_MIPS_GNU_REL_LO16 \.text
-0+00000dc R_MIPS_GNU_REL_HI16 \.text
-0+00000e0 R_MIPS_GNU_REL_LO16 \.text
-0+00000e4 R_MIPS_32 \.text
-0+00000f0 R_MIPS_64 \.text
-
-
-RELOCATION RECORDS FOR \[\.foo\]:
-OFFSET [ ]+ TYPE VALUE
-0+0000004 R_MIPS_GNU_REL_HI16 g1
-0+0000008 R_MIPS_GNU_REL_LO16 g1
-0+000000c R_MIPS_GNU_REL_HI16 \.foo
-0+0000010 R_MIPS_GNU_REL_LO16 \.foo
-0+0000014 R_MIPS_GNU_REL_HI16 \.text
-0+0000018 R_MIPS_GNU_REL_LO16 \.text
-0+000001c R_MIPS_GNU_REL_HI16 g1
-0+0000020 R_MIPS_GNU_REL_LO16 g1
-0+0000024 R_MIPS_GNU_REL_HI16 g1
-0+0000028 R_MIPS_GNU_REL_LO16 g1
-0+000002c R_MIPS_GNU_REL_HI16 \.foo
-0+0000030 R_MIPS_GNU_REL_LO16 \.foo
-0+0000034 R_MIPS_GNU_REL_HI16 \.text
-0+0000038 R_MIPS_GNU_REL_LO16 \.text
-0+000003c R_MIPS_32 g1
-0+0000040 R_MIPS_32 \.foo
-0+0000044 R_MIPS_32 \.text
-0+0000048 R_MIPS_PC32 g1
-0+0000050 R_MIPS_PC32 \.text
-0+0000058 R_MIPS_64 g1
-0+0000060 R_MIPS_64 \.foo
-0+0000068 R_MIPS_64 \.text
-0+0000070 R_MIPS_PC64 g1
-0+0000080 R_MIPS_PC64 \.text
-0+0000088 R_MIPS_GNU_REL_HI16 g1
-0+000008c R_MIPS_GNU_REL_LO16 g1
-0+0000090 R_MIPS_GNU_REL_HI16 \.foo
-0+0000094 R_MIPS_GNU_REL_LO16 \.foo
-0+0000098 R_MIPS_GNU_REL_HI16 \.text
-0+000009c R_MIPS_GNU_REL_LO16 \.text
-0+00000a0 R_MIPS_GNU_REL_HI16 g1
-0+00000a4 R_MIPS_GNU_REL_LO16 g1
-0+00000a8 R_MIPS_GNU_REL_HI16 \.foo
-0+00000ac R_MIPS_GNU_REL_LO16 \.foo
-0+00000b0 R_MIPS_GNU_REL_HI16 \.text
-0+00000b4 R_MIPS_GNU_REL_LO16 \.text
-0+00000b8 R_MIPS_32 g1
-0+00000bc R_MIPS_32 \.foo
-0+00000c0 R_MIPS_32 \.text
-0+00000c4 R_MIPS_PC32 g1
-0+00000cc R_MIPS_PC32 \.text
-0+00000d0 R_MIPS_64 g1
-0+00000d8 R_MIPS_64 \.foo
-0+00000e0 R_MIPS_64 \.text
-0+00000e8 R_MIPS_PC64 g1
-0+00000f8 R_MIPS_PC64 \.text
-
-Contents of section \.text:
- 0000 00000000 0411ffff 00000000 1000ffff .*
- 0010 00000000 1000ffff 00000000 0411003f .*
- 0020 00000000 04110000 00000000 10000041 .*
- 0030 00000000 10000000 00000000 3c030000 .*
- 0040 [26]463000c 3c030000 [26]4630114 [26]403ffd0 .*
- 0050 00000000 00000100 00000004 00000028 .*
- 0060 0000012c ffffffd0 00000000 00000000 .*
- 0070 00000000 00000100 00000000 00000004 .*
- 0080 00000000 0000004c 00000000 00000154 .*
- 0090 ffffffff ffffffd0 10000032 10000033 .*
- 00a0 3c030000 [26]46300d8 3c030000 [26]46300e8 .*
- 00b0 000000cc 00000034 00000000 000000cc .*
- 00c0 00000000 00000034 00000000 10000032 .*
- 00d0 10000033 3c030000 [26]463010c 3c030000 .*
- 00e0 [26]463011c 000000cc 00000034 00000000 .*
- 00f0 00000000 000000cc 00000000 00000034 .*
-Contents of section \.reginfo:
- 0000 80000008 00000000 00000000 00000000 .*
- 0010 00000000 00000000 .*
-Contents of section \.foo:
- 0000 00000000 3c030000 [26]4630004 3c030000 .*
- 0010 [26]463010c 3c030000 [26]4630018 3c030000 .*
- 0020 [26]463001c 3c030000 [26]4630024 3c030000 .*
- 0030 [26]463012c 3c030000 [26]4630038 00000000 .*
- 0040 00000100 00000004 00000044 000000fc .*
- 0050 00000050 00000000 00000000 00000000 .*
- 0060 00000000 00000100 00000000 00000004 .*
- 0070 00000000 0000006c 00000000 000000fc .*
- 0080 00000000 00000080 3c030000 [26]463008c .*
- 0090 3c030000 [26]4630194 3c030000 [26]46300a0 .*
- 00a0 3c030000 [26]46300a4 3c030000 [26]46301ac .*
- 00b0 3c030000 [26]46300b8 00000004 00000104 .*
- 00c0 00000008 000000c4 00000100 000000d0 .*
- 00d0 00000000 00000004 00000000 00000104 .*
- 00e0 00000000 00000008 00000000 000000e8 .*
- 00f0 00000000 00000100 00000000 000000fc .*
- 0100 00000000 00000000 00000000 00000000 .*
-
+++ /dev/null
-.*: Assembler messages:
-.*:42: Warning: Macro instruction expanded into multiple instructions in a branch delay slot
-.*:56: Warning: Macro instruction expanded into multiple instructions in a branch delay slot
+++ /dev/null
-# Check GNU-specific embedded relocs, for ELF.
-
- .text
- .set noreorder
- nop
-l2: jal g1 # R_MIPS_GNU_REL16_S2 g1 -1
- nop
- b g2 # R_MIPS_GNU_REL16_S2 g2 -1
- nop
- b g2 # R_MIPS_GNU_REL16_S2 g2 -1
- nop
- jal l1 # R_MIPS_GNU_REL16_S2 .foo 3F
- nop
- jal l2 # R_MIPS_GNU_REL16_S2 .text 0 or -9
- nop
- b l1+8 # R_MIPS_GNU_REL16_S2 .foo 41
- nop
-l3:
- b l2 # R_MIPS_GNU_REL16_S2 .text 0 or -D
- nop
- la $3,g1-l3 # R_MIPS_GNU_REL_HI16 g1 0
- # R_MIPS_GNU_REL_LO16 g1 C
- la $3,l1-l3 # R_MIPS_GNU_REL_HI16 .foo 0
- # R_MIPS_GNU_REL_LO16 .foo 114
- la $3,l2-l3 # -30
- .word g1 # R_MIPS_32 g1 0
- .word l1 # R_MIPS_32 .foo 100
- .word l2 # R_MIPS_32 .text 4
- .word g1-l3 # R_MIPS_PC32 g1 28
- .word l1-l3 # R_MIPS_PC32 .foo 12C
- .word l2-l3 # -30
- .align 3
- .dword g1 # R_MIPS_64 g1 0
- .dword l1 # R_MIPS_64 .foo 100
- .dword l2 # R_MIPS_64 .text 4
- .dword g1-l3 # R_MIPS_PC64 g1 4C
- .dword l1-l3 # R_MIPS_PC64 .foo 154
- .dword l2-l3 # -30
-l5:
- b 2f # R_MIPS_GNU_REL16_S2 .text 32
- b 2f+4 # R_MIPS_GNU_REL16_S2 .text 33
- la $3,2f-l5 # R_MIPS_GNU_REL_HI16 .text 0
- # R_MIPS_GNU_REL_LO16 .text D8
- la $3,2f+8-l5 # R_MIPS_GNU_REL_HI16 .text 0
- # R_MIPS_GNU_REL_LO16 .text E8
-
-
- .word 2f # R_MIPS_32 .text CC
- .word 2f-l5 # R_MIPS_PC32 .text EC or 34
- .dword 2f # R_MIPS_64 .text CC
- .dword 2f-l5 # R_MIPS_PC64 .text F8 or 34
- nop
-2: # at address 0xCC.
- b 2b # R_MIPS_GNU_REL16_S2 .text 32
- b 2b+4 # R_MIPS_GNU_REL16_S2 .text 33
- la $3,2b-l5 # R_MIPS_GNU_REL_HI16 .text 0
- # R_MIPS_GNU_REL_LO16 .text 10C
- la $3,2b+8-l5 # R_MIPS_GNU_REL_HI16 .text 0
- # R_MIPS_GNU_REL_LO16 .text 11C
- .word 2b # R_MIPS_32 .text CC
- .word 2b-l5 # R_MIPS_PC32 .text 11C or 34
- nop
- .dword 2b # R_MIPS_64 .text CC
- .dword 2b-l5 # R_MIPS_PC64 .text 98 or 34
-
-# align section end to 16-byte boundary for easier testing on multiple targets
- .p2align 4
-
- .section ".foo","ax",@progbits
- nop
-l4:
- la $3,g1-l4
- la $3,l1-l4
- la $3,l2-l4
- la $3,g1-l4
-
- dla $3,g1-l4
- dla $3,l1-l4
- dla $3,l2-l4
-
- .word g1
- .word l1
- .word l2
- .word g1-l4
- .word l1-l4
- .word l2-l4
- .dword g1
- .dword l1
- .dword l2
- .dword g1-l4
- .dword l1-l4
- .dword l2-l4
-
- la $3,g1-l4+4
- la $3,l1-l4+4
- la $3,l2-l4+4
-
- dla $3,g1-l4+4
- dla $3,l1-l4+4
- dla $3,l2-l4+4
-
- .word g1+4
- .word l1+4
- .word l2+4
- .word g1-l4+4
- .word l1-l4+4
- .word l2-l4+4
- .dword g1+4
- .dword l1+4
- .dword l2+4
- .dword g1-l4+4
- .dword l1-l4+4
- .dword l2-l4+4
-l1:
-
- nop
-
-# align section end to 16-byte boundary for easier testing on multiple targets
- .p2align 4
+++ /dev/null
-#objdump: --prefix-addresses -dr --show-raw-insn -mmips:4000
-#name: MIPS empic2
-#as: -mabi=o64 -membedded-pic -mips3
-
-# Check assembly of and relocs for -membedded-pic la, lw, ld, sw, sd macros.
-
-.*: +file format elf.*mips.*
-
-Disassembly of section .text:
-0+000000 <[^>]*> 00000000 nop
- ...
- ...
-0+01000c <[^>]*> 3c020000 lui v0,0x0
-[ ]*1000c: R_MIPS_GNU_REL_HI16 .text
-0+010010 <[^>]*> 0044102d daddu v0,v0,a0
-0+010014 <[^>]*> 6442000c daddiu v0,v0,12
-[ ]*10014: R_MIPS_GNU_REL_LO16 .text
-0+010018 <[^>]*> 3c020000 lui v0,0x0
-[ ]*10018: R_MIPS_GNU_REL_HI16 .text
-0+01001c <[^>]*> 0044102d daddu v0,v0,a0
-0+010020 <[^>]*> 64420018 daddiu v0,v0,24
-[ ]*10020: R_MIPS_GNU_REL_LO16 .text
-0+010024 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10024: R_MIPS_GNU_REL_HI16 .text
-0+010028 <[^>]*> 0044102d daddu v0,v0,a0
-0+01002c <[^>]*> 64428028 daddiu v0,v0,-32728
-[ ]*1002c: R_MIPS_GNU_REL_LO16 .text
-0+010030 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10030: R_MIPS_GNU_REL_HI16 .text
-0+010034 <[^>]*> 0044102d daddu v0,v0,a0
-0+010038 <[^>]*> 64428034 daddiu v0,v0,-32716
-[ ]*10038: R_MIPS_GNU_REL_LO16 .text
-0+01003c <[^>]*> 3c020001 lui v0,0x1
-[ ]*1003c: R_MIPS_GNU_REL_HI16 .text
-0+010040 <[^>]*> 0044102d daddu v0,v0,a0
-0+010044 <[^>]*> 644202ac daddiu v0,v0,684
-[ ]*10044: R_MIPS_GNU_REL_LO16 .text
-0+010048 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10048: R_MIPS_GNU_REL_HI16 .text
-0+01004c <[^>]*> 0044102d daddu v0,v0,a0
-0+010050 <[^>]*> 644202b8 daddiu v0,v0,696
-[ ]*10050: R_MIPS_GNU_REL_LO16 .text
-0+010054 <[^>]*> 3c020000 lui v0,0x0
-[ ]*10054: R_MIPS_GNU_REL_HI16 e
-0+010058 <[^>]*> 0044102d daddu v0,v0,a0
-0+01005c <[^>]*> 64420050 daddiu v0,v0,80
-[ ]*1005c: R_MIPS_GNU_REL_LO16 e
-0+010060 <[^>]*> 3c020000 lui v0,0x0
-[ ]*10060: R_MIPS_GNU_REL_HI16 .text
-0+010064 <[^>]*> 0044102d daddu v0,v0,a0
-0+010068 <[^>]*> 64420060 daddiu v0,v0,96
-[ ]*10068: R_MIPS_GNU_REL_LO16 .text
-0+01006c <[^>]*> 3c020000 lui v0,0x0
-[ ]*1006c: R_MIPS_GNU_REL_HI16 .text
-0+010070 <[^>]*> 0044102d daddu v0,v0,a0
-0+010074 <[^>]*> 6442006c daddiu v0,v0,108
-[ ]*10074: R_MIPS_GNU_REL_LO16 .text
-0+010078 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10078: R_MIPS_GNU_REL_HI16 .text
-0+01007c <[^>]*> 0044102d daddu v0,v0,a0
-0+010080 <[^>]*> 6442807c daddiu v0,v0,-32644
-[ ]*10080: R_MIPS_GNU_REL_LO16 .text
-0+010084 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10084: R_MIPS_GNU_REL_HI16 .text
-0+010088 <[^>]*> 0044102d daddu v0,v0,a0
-0+01008c <[^>]*> 64428088 daddiu v0,v0,-32632
-[ ]*1008c: R_MIPS_GNU_REL_LO16 .text
-0+010090 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10090: R_MIPS_GNU_REL_HI16 .text
-0+010094 <[^>]*> 0044102d daddu v0,v0,a0
-0+010098 <[^>]*> 64420300 daddiu v0,v0,768
-[ ]*10098: R_MIPS_GNU_REL_LO16 .text
-0+01009c <[^>]*> 3c020001 lui v0,0x1
-[ ]*1009c: R_MIPS_GNU_REL_HI16 .text
-0+0100a0 <[^>]*> 0044102d daddu v0,v0,a0
-0+0100a4 <[^>]*> 6442030c daddiu v0,v0,780
-[ ]*100a4: R_MIPS_GNU_REL_LO16 .text
-0+0100a8 <[^>]*> 3c020000 lui v0,0x0
-[ ]*100a8: R_MIPS_GNU_REL_HI16 e
-0+0100ac <[^>]*> 0044102d daddu v0,v0,a0
-0+0100b0 <[^>]*> 644200a4 daddiu v0,v0,164
-[ ]*100b0: R_MIPS_GNU_REL_LO16 e
-0+0100b4 <[^>]*> 3c020000 lui v0,0x0
-[ ]*100b4: R_MIPS_GNU_REL_HI16 .text
-0+0100b8 <[^>]*> 644200b0 daddiu v0,v0,176
-[ ]*100b8: R_MIPS_GNU_REL_LO16 .text
-0+0100bc <[^>]*> 3c020000 lui v0,0x0
-[ ]*100bc: R_MIPS_GNU_REL_HI16 .text
-0+0100c0 <[^>]*> 644200b8 daddiu v0,v0,184
-[ ]*100c0: R_MIPS_GNU_REL_LO16 .text
-0+0100c4 <[^>]*> 3c020001 lui v0,0x1
-[ ]*100c4: R_MIPS_GNU_REL_HI16 .text
-0+0100c8 <[^>]*> 644280c4 daddiu v0,v0,-32572
-[ ]*100c8: R_MIPS_GNU_REL_LO16 .text
-0+0100cc <[^>]*> 3c020001 lui v0,0x1
-[ ]*100cc: R_MIPS_GNU_REL_HI16 .text
-0+0100d0 <[^>]*> 644280cc daddiu v0,v0,-32564
-[ ]*100d0: R_MIPS_GNU_REL_LO16 .text
-0+0100d4 <[^>]*> 3c020001 lui v0,0x1
-[ ]*100d4: R_MIPS_GNU_REL_HI16 .text
-0+0100d8 <[^>]*> 64420340 daddiu v0,v0,832
-[ ]*100d8: R_MIPS_GNU_REL_LO16 .text
-0+0100dc <[^>]*> 3c020001 lui v0,0x1
-[ ]*100dc: R_MIPS_GNU_REL_HI16 .text
-0+0100e0 <[^>]*> 64420348 daddiu v0,v0,840
-[ ]*100e0: R_MIPS_GNU_REL_LO16 .text
-0+0100e4 <[^>]*> 3c020000 lui v0,0x0
-[ ]*100e4: R_MIPS_GNU_REL_HI16 e
-0+0100e8 <[^>]*> 644200dc daddiu v0,v0,220
-[ ]*100e8: R_MIPS_GNU_REL_LO16 e
-0+0100ec <[^>]*> 3c020000 lui v0,0x0
-[ ]*100ec: R_MIPS_GNU_REL_HI16 .text
-0+0100f0 <[^>]*> 644200e8 daddiu v0,v0,232
-[ ]*100f0: R_MIPS_GNU_REL_LO16 .text
-0+0100f4 <[^>]*> 3c020000 lui v0,0x0
-[ ]*100f4: R_MIPS_GNU_REL_HI16 .text
-0+0100f8 <[^>]*> 644200f0 daddiu v0,v0,240
-[ ]*100f8: R_MIPS_GNU_REL_LO16 .text
-0+0100fc <[^>]*> 3c020001 lui v0,0x1
-[ ]*100fc: R_MIPS_GNU_REL_HI16 .text
-0+010100 <[^>]*> 644280fc daddiu v0,v0,-32516
-[ ]*10100: R_MIPS_GNU_REL_LO16 .text
-0+010104 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10104: R_MIPS_GNU_REL_HI16 .text
-0+010108 <[^>]*> 64428104 daddiu v0,v0,-32508
-[ ]*10108: R_MIPS_GNU_REL_LO16 .text
-0+01010c <[^>]*> 3c020001 lui v0,0x1
-[ ]*1010c: R_MIPS_GNU_REL_HI16 .text
-0+010110 <[^>]*> 64420378 daddiu v0,v0,888
-[ ]*10110: R_MIPS_GNU_REL_LO16 .text
-0+010114 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10114: R_MIPS_GNU_REL_HI16 .text
-0+010118 <[^>]*> 64420380 daddiu v0,v0,896
-[ ]*10118: R_MIPS_GNU_REL_LO16 .text
-0+01011c <[^>]*> 3c020000 lui v0,0x0
-[ ]*1011c: R_MIPS_GNU_REL_HI16 e
-0+010120 <[^>]*> 64420114 daddiu v0,v0,276
-[ ]*10120: R_MIPS_GNU_REL_LO16 e
-0+010124 <[^>]*> 3c020000 lui v0,0x0
-[ ]*10124: R_MIPS_GNU_REL_HI16 .text
-0+010128 <[^>]*> 0044102d daddu v0,v0,a0
-0+01012c <[^>]*> 8c420124 lw v0,292\(v0\)
-[ ]*1012c: R_MIPS_GNU_REL_LO16 .text
-0+010130 <[^>]*> 3c020000 lui v0,0x0
-[ ]*10130: R_MIPS_GNU_REL_HI16 .text
-0+010134 <[^>]*> 0044102d daddu v0,v0,a0
-0+010138 <[^>]*> 8c420130 lw v0,304\(v0\)
-[ ]*10138: R_MIPS_GNU_REL_LO16 .text
-0+01013c <[^>]*> 3c020001 lui v0,0x1
-[ ]*1013c: R_MIPS_GNU_REL_HI16 .text
-0+010140 <[^>]*> 0044102d daddu v0,v0,a0
-0+010144 <[^>]*> 8c428140 lw v0,-32448\(v0\)
-[ ]*10144: R_MIPS_GNU_REL_LO16 .text
-0+010148 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10148: R_MIPS_GNU_REL_HI16 .text
-0+01014c <[^>]*> 0044102d daddu v0,v0,a0
-0+010150 <[^>]*> 8c42814c lw v0,-32436\(v0\)
-[ ]*10150: R_MIPS_GNU_REL_LO16 .text
-0+010154 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10154: R_MIPS_GNU_REL_HI16 .text
-0+010158 <[^>]*> 0044102d daddu v0,v0,a0
-0+01015c <[^>]*> 8c4203c4 lw v0,964\(v0\)
-[ ]*1015c: R_MIPS_GNU_REL_LO16 .text
-0+010160 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10160: R_MIPS_GNU_REL_HI16 .text
-0+010164 <[^>]*> 0044102d daddu v0,v0,a0
-0+010168 <[^>]*> 8c4203d0 lw v0,976\(v0\)
-[ ]*10168: R_MIPS_GNU_REL_LO16 .text
-0+01016c <[^>]*> 3c020000 lui v0,0x0
-[ ]*1016c: R_MIPS_GNU_REL_HI16 e
-0+010170 <[^>]*> 0044102d daddu v0,v0,a0
-0+010174 <[^>]*> 8c420168 lw v0,360\(v0\)
-[ ]*10174: R_MIPS_GNU_REL_LO16 e
-0+010178 <[^>]*> 3c020000 lui v0,0x0
-[ ]*10178: R_MIPS_GNU_REL_HI16 .text
-0+01017c <[^>]*> 0044102d daddu v0,v0,a0
-0+010180 <[^>]*> dc420178 ld v0,376\(v0\)
-[ ]*10180: R_MIPS_GNU_REL_LO16 .text
-0+010184 <[^>]*> 3c020000 lui v0,0x0
-[ ]*10184: R_MIPS_GNU_REL_HI16 .text
-0+010188 <[^>]*> 0044102d daddu v0,v0,a0
-0+01018c <[^>]*> dc420184 ld v0,388\(v0\)
-[ ]*1018c: R_MIPS_GNU_REL_LO16 .text
-0+010190 <[^>]*> 3c020001 lui v0,0x1
-[ ]*10190: R_MIPS_GNU_REL_HI16 .text
-0+010194 <[^>]*> 0044102d daddu v0,v0,a0
-0+010198 <[^>]*> dc428194 ld v0,-32364\(v0\)
-[ ]*10198: R_MIPS_GNU_REL_LO16 .text
-0+01019c <[^>]*> 3c020001 lui v0,0x1
-[ ]*1019c: R_MIPS_GNU_REL_HI16 .text
-0+0101a0 <[^>]*> 0044102d daddu v0,v0,a0
-0+0101a4 <[^>]*> dc4281a0 ld v0,-32352\(v0\)
-[ ]*101a4: R_MIPS_GNU_REL_LO16 .text
-0+0101a8 <[^>]*> 3c020001 lui v0,0x1
-[ ]*101a8: R_MIPS_GNU_REL_HI16 .text
-0+0101ac <[^>]*> 0044102d daddu v0,v0,a0
-0+0101b0 <[^>]*> dc420418 ld v0,1048\(v0\)
-[ ]*101b0: R_MIPS_GNU_REL_LO16 .text
-0+0101b4 <[^>]*> 3c020001 lui v0,0x1
-[ ]*101b4: R_MIPS_GNU_REL_HI16 .text
-0+0101b8 <[^>]*> 0044102d daddu v0,v0,a0
-0+0101bc <[^>]*> dc420424 ld v0,1060\(v0\)
-[ ]*101bc: R_MIPS_GNU_REL_LO16 .text
-0+0101c0 <[^>]*> 3c020000 lui v0,0x0
-[ ]*101c0: R_MIPS_GNU_REL_HI16 e
-0+0101c4 <[^>]*> 0044102d daddu v0,v0,a0
-0+0101c8 <[^>]*> dc4201bc ld v0,444\(v0\)
-[ ]*101c8: R_MIPS_GNU_REL_LO16 e
-0+0101cc <[^>]*> 3c010000 lui at,0x0
-[ ]*101cc: R_MIPS_GNU_REL_HI16 .text
-0+0101d0 <[^>]*> 0024082d daddu at,at,a0
-0+0101d4 <[^>]*> ac2201cc sw v0,460\(at\)
-[ ]*101d4: R_MIPS_GNU_REL_LO16 .text
-0+0101d8 <[^>]*> 3c010000 lui at,0x0
-[ ]*101d8: R_MIPS_GNU_REL_HI16 .text
-0+0101dc <[^>]*> 0024082d daddu at,at,a0
-0+0101e0 <[^>]*> ac2201d8 sw v0,472\(at\)
-[ ]*101e0: R_MIPS_GNU_REL_LO16 .text
-0+0101e4 <[^>]*> 3c010001 lui at,0x1
-[ ]*101e4: R_MIPS_GNU_REL_HI16 .text
-0+0101e8 <[^>]*> 0024082d daddu at,at,a0
-0+0101ec <[^>]*> ac2281e8 sw v0,-32280\(at\)
-[ ]*101ec: R_MIPS_GNU_REL_LO16 .text
-0+0101f0 <[^>]*> 3c010001 lui at,0x1
-[ ]*101f0: R_MIPS_GNU_REL_HI16 .text
-0+0101f4 <[^>]*> 0024082d daddu at,at,a0
-0+0101f8 <[^>]*> ac2281f4 sw v0,-32268\(at\)
-[ ]*101f8: R_MIPS_GNU_REL_LO16 .text
-0+0101fc <[^>]*> 3c010001 lui at,0x1
-[ ]*101fc: R_MIPS_GNU_REL_HI16 .text
-0+010200 <[^>]*> 0024082d daddu at,at,a0
-0+010204 <[^>]*> ac22046c sw v0,1132\(at\)
-[ ]*10204: R_MIPS_GNU_REL_LO16 .text
-0+010208 <[^>]*> 3c010001 lui at,0x1
-[ ]*10208: R_MIPS_GNU_REL_HI16 .text
-0+01020c <[^>]*> 0024082d daddu at,at,a0
-0+010210 <[^>]*> ac220478 sw v0,1144\(at\)
-[ ]*10210: R_MIPS_GNU_REL_LO16 .text
-0+010214 <[^>]*> 3c010000 lui at,0x0
-[ ]*10214: R_MIPS_GNU_REL_HI16 e
-0+010218 <[^>]*> 0024082d daddu at,at,a0
-0+01021c <[^>]*> ac220210 sw v0,528\(at\)
-[ ]*1021c: R_MIPS_GNU_REL_LO16 e
-0+010220 <[^>]*> 3c010000 lui at,0x0
-[ ]*10220: R_MIPS_GNU_REL_HI16 .text
-0+010224 <[^>]*> 0024082d daddu at,at,a0
-0+010228 <[^>]*> fc220220 sd v0,544\(at\)
-[ ]*10228: R_MIPS_GNU_REL_LO16 .text
-0+01022c <[^>]*> 3c010000 lui at,0x0
-[ ]*1022c: R_MIPS_GNU_REL_HI16 .text
-0+010230 <[^>]*> 0024082d daddu at,at,a0
-0+010234 <[^>]*> fc22022c sd v0,556\(at\)
-[ ]*10234: R_MIPS_GNU_REL_LO16 .text
-0+010238 <[^>]*> 3c010001 lui at,0x1
-[ ]*10238: R_MIPS_GNU_REL_HI16 .text
-0+01023c <[^>]*> 0024082d daddu at,at,a0
-0+010240 <[^>]*> fc22823c sd v0,-32196\(at\)
-[ ]*10240: R_MIPS_GNU_REL_LO16 .text
-0+010244 <[^>]*> 3c010001 lui at,0x1
-[ ]*10244: R_MIPS_GNU_REL_HI16 .text
-0+010248 <[^>]*> 0024082d daddu at,at,a0
-0+01024c <[^>]*> fc228248 sd v0,-32184\(at\)
-[ ]*1024c: R_MIPS_GNU_REL_LO16 .text
-0+010250 <[^>]*> 3c010001 lui at,0x1
-[ ]*10250: R_MIPS_GNU_REL_HI16 .text
-0+010254 <[^>]*> 0024082d daddu at,at,a0
-0+010258 <[^>]*> fc2204c0 sd v0,1216\(at\)
-[ ]*10258: R_MIPS_GNU_REL_LO16 .text
-0+01025c <[^>]*> 3c010001 lui at,0x1
-[ ]*1025c: R_MIPS_GNU_REL_HI16 .text
-0+010260 <[^>]*> 0024082d daddu at,at,a0
-0+010264 <[^>]*> fc2204cc sd v0,1228\(at\)
-[ ]*10264: R_MIPS_GNU_REL_LO16 .text
-0+010268 <[^>]*> 3c010000 lui at,0x0
-[ ]*10268: R_MIPS_GNU_REL_HI16 e
-0+01026c <[^>]*> 0024082d daddu at,at,a0
-0+010270 <[^>]*> fc220264 sd v0,612\(at\)
-[ ]*10270: R_MIPS_GNU_REL_LO16 e
- ...
+++ /dev/null
-# Check assembly of and relocs for -membedded-pic la, lw, ld, sw, sd macros.
-
- .text
- .set noreorder
-
-start:
- nop
-
- .globl g1
- .ent g1
-i1: # 0x00004
-g1:
- .space 0x8000
- nop
- .end g1
-
- .globl g2
- .ent g2
-i2: # 0x08008
-g2:
- .space 0x8000
- nop
- .end g2
-
- .globl g3
- .ent g3
-i3: # 0x1000c
-g3:
-
- la $2, (i1 - i3)($4)
- la $2, (g1 - i3)($4)
- la $2, (i2 - i3)($4)
- la $2, (g2 - i3)($4)
- la $2, (if - i3)($4)
- la $2, (gf - i3)($4)
- la $2, (e - i3)($4)
- la $2, (i1 - g3)($4)
- la $2, (g1 - g3)($4)
- la $2, (i2 - g3)($4)
- la $2, (g2 - g3)($4)
- la $2, (if - g3)($4)
- la $2, (gf - g3)($4)
- la $2, (e - g3)($4)
-
- la $2, (i1 - i3)
- la $2, (g1 - i3)
- la $2, (i2 - i3)
- la $2, (g2 - i3)
- la $2, (if - i3)
- la $2, (gf - i3)
- la $2, (e - i3)
- la $2, (i1 - g3)
- la $2, (g1 - g3)
- la $2, (i2 - g3)
- la $2, (g2 - g3)
- la $2, (if - g3)
- la $2, (gf - g3)
- la $2, (e - g3)
-
- lw $2, (i1 - i3)($4)
- lw $2, (g1 - i3)($4)
- lw $2, (i2 - i3)($4)
- lw $2, (g2 - i3)($4)
- lw $2, (if - i3)($4)
- lw $2, (gf - i3)($4)
- lw $2, (e - i3)($4)
- ld $2, (i1 - g3)($4)
- ld $2, (g1 - g3)($4)
- ld $2, (i2 - g3)($4)
- ld $2, (g2 - g3)($4)
- ld $2, (if - g3)($4)
- ld $2, (gf - g3)($4)
- ld $2, (e - g3)($4)
-
- sw $2, (i1 - i3)($4)
- sw $2, (g1 - i3)($4)
- sw $2, (i2 - i3)($4)
- sw $2, (g2 - i3)($4)
- sw $2, (if - i3)($4)
- sw $2, (gf - i3)($4)
- sw $2, (e - i3)($4)
- sd $2, (i1 - g3)($4)
- sd $2, (g1 - g3)($4)
- sd $2, (i2 - g3)($4)
- sd $2, (g2 - g3)($4)
- sd $2, (if - g3)($4)
- sd $2, (gf - g3)($4)
- sd $2, (e - g3)($4)
-
- .end g3
-
- .globl gf
- .ent gf
-if:
-gf:
- nop
- .end gf
-
-# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
- .space 8
+++ /dev/null
-#objdump: --prefix-addresses -dr --show-raw-insn -mmips:4000
-#name: MIPS empic3 (external)
-#as: -mabi=o64 -membedded-pic -mips3
-
-# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and
-# LO are split over a 32K boundary.
-
-.*: +file format elf.*mips.*
-
-Disassembly of section .text:
- ...
- ...
-0000fffc <[^>]*> 3c020001 lui v0,0x1
-[ ]*fffc: R_MIPS_GNU_REL_HI16 ext
-00010000 <[^>]*> 64428000 daddiu v0,v0,-32768
-[ ]*10000: R_MIPS_GNU_REL_LO16 ext
- ...
-00017ffc <[^>]*> 3c020001 lui v0,0x1
-[ ]*17ffc: R_MIPS_GNU_REL_HI16 ext
-00018000 <[^>]*> 64420000 daddiu v0,v0,0
-[ ]*18000: R_MIPS_GNU_REL_LO16 ext
- ...
-0001fffc <[^>]*> 3c020002 lui v0,0x2
-[ ]*1fffc: R_MIPS_GNU_REL_HI16 ext
-00020000 <[^>]*> 0043102d daddu v0,v0,v1
-00020004 <[^>]*> 64428004 daddiu v0,v0,-32764
-[ ]*20004: R_MIPS_GNU_REL_LO16 ext
- ...
-00027ffc <[^>]*> 3c020002 lui v0,0x2
-[ ]*27ffc: R_MIPS_GNU_REL_HI16 ext
-00028000 <[^>]*> 0043102d daddu v0,v0,v1
-00028004 <[^>]*> 64420004 daddiu v0,v0,4
-[ ]*28004: R_MIPS_GNU_REL_LO16 ext
- ...
-0002fff8 <[^>]*> 3c020003 lui v0,0x3
-[ ]*2fff8: R_MIPS_GNU_REL_HI16 ext
-0002fffc <[^>]*> 0043102d daddu v0,v0,v1
-00030000 <[^>]*> 64428000 daddiu v0,v0,-32768
-[ ]*30000: R_MIPS_GNU_REL_LO16 ext
- ...
-00037ff8 <[^>]*> 3c020003 lui v0,0x3
-[ ]*37ff8: R_MIPS_GNU_REL_HI16 ext
-00037ffc <[^>]*> 0043102d daddu v0,v0,v1
-00038000 <[^>]*> 64420000 daddiu v0,v0,0
-[ ]*38000: R_MIPS_GNU_REL_LO16 ext
- ...
- ...
+++ /dev/null
-# Check PC-relative HI/LO relocs for -membedded-pic when HI and LO are
-# split over a 32K boundary.
-
- .text
- .set noreorder
-
- SYM_TO_TEST = ext
-
- .globl ext
-
- .org 0x00000
- .globl g1
-g1:
-l1:
-
- .org 0x08000
- .globl fn
- .ent fn
-fn:
- .org (0x10000 - 4)
- la $2, SYM_TO_TEST - fn # expands to 2 instructions
-
- .org (0x18000 - 4)
- la $2, SYM_TO_TEST - fn # expands to 2 instructions
-
- .org (0x20000 - 4)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .org (0x28000 - 4)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .org (0x30000 - 8)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .org (0x38000 - 8)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .end fn
-
- .org 0x40000
- .globl g2
-g2:
-l2:
-
-# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
- .space 8
+++ /dev/null
-#objdump: --prefix-addresses -dr --show-raw-insn -mmips:4000
-#name: MIPS empic3 (global, negative)
-#as: -mabi=o64 -membedded-pic -mips3
-
-# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and
-# LO are split over a 32K boundary.
-
-.*: +file format elf.*mips.*
-
-Disassembly of section .text:
- ...
- ...
-0000fffc <[^>]*> 3c020001 lui v0,0x1
-[ ]*fffc: R_MIPS_GNU_REL_HI16 .text
-00010000 <[^>]*> 64428000 daddiu v0,v0,-32768
-[ ]*10000: R_MIPS_GNU_REL_LO16 .text
- ...
-00017ffc <[^>]*> 3c020001 lui v0,0x1
-[ ]*17ffc: R_MIPS_GNU_REL_HI16 .text
-00018000 <[^>]*> 64420000 daddiu v0,v0,0
-[ ]*18000: R_MIPS_GNU_REL_LO16 .text
- ...
-0001fffc <[^>]*> 3c020002 lui v0,0x2
-[ ]*1fffc: R_MIPS_GNU_REL_HI16 .text
-00020000 <[^>]*> 0043102d daddu v0,v0,v1
-00020004 <[^>]*> 64428004 daddiu v0,v0,-32764
-[ ]*20004: R_MIPS_GNU_REL_LO16 .text
- ...
-00027ffc <[^>]*> 3c020002 lui v0,0x2
-[ ]*27ffc: R_MIPS_GNU_REL_HI16 .text
-00028000 <[^>]*> 0043102d daddu v0,v0,v1
-00028004 <[^>]*> 64420004 daddiu v0,v0,4
-[ ]*28004: R_MIPS_GNU_REL_LO16 .text
- ...
-0002fff8 <[^>]*> 3c020003 lui v0,0x3
-[ ]*2fff8: R_MIPS_GNU_REL_HI16 .text
-0002fffc <[^>]*> 0043102d daddu v0,v0,v1
-00030000 <[^>]*> 64428000 daddiu v0,v0,-32768
-[ ]*30000: R_MIPS_GNU_REL_LO16 .text
- ...
-00037ff8 <[^>]*> 3c020003 lui v0,0x3
-[ ]*37ff8: R_MIPS_GNU_REL_HI16 .text
-00037ffc <[^>]*> 0043102d daddu v0,v0,v1
-00038000 <[^>]*> 64420000 daddiu v0,v0,0
-[ ]*38000: R_MIPS_GNU_REL_LO16 .text
- ...
- ...
+++ /dev/null
-# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and
-# LO are split over a 32K boundary.
-
- .text
- .set noreorder
-
- SYM_TO_TEST = g1
-
- .globl ext
-
- .org 0x00000
- .globl g1
-g1:
-l1:
-
- .org 0x08000
- .globl fn
- .ent fn
-fn:
- .org (0x10000 - 4)
- la $2, SYM_TO_TEST - fn # expands to 2 instructions
-
- .org (0x18000 - 4)
- la $2, SYM_TO_TEST - fn # expands to 2 instructions
-
- .org (0x20000 - 4)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .org (0x28000 - 4)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .org (0x30000 - 8)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .org (0x38000 - 8)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .end fn
-
- .org 0x40000
- .globl g2
-g2:
-l2:
-
-# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
- .space 8
+++ /dev/null
-#objdump: --prefix-addresses -dr --show-raw-insn -mmips:4000
-#name: MIPS empic3 (global, positive)
-#as: -mabi=o64 -membedded-pic -mips3
-
-# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and
-# LO are split over a 32K boundary.
-
-.*: +file format elf.*mips.*
-
-Disassembly of section .text:
- ...
- ...
-0000fffc <[^>]*> 3c020005 lui v0,0x5
-[ ]*fffc: R_MIPS_GNU_REL_HI16 .text
-00010000 <[^>]*> 64428000 daddiu v0,v0,-32768
-[ ]*10000: R_MIPS_GNU_REL_LO16 .text
- ...
-00017ffc <[^>]*> 3c020005 lui v0,0x5
-[ ]*17ffc: R_MIPS_GNU_REL_HI16 .text
-00018000 <[^>]*> 64420000 daddiu v0,v0,0
-[ ]*18000: R_MIPS_GNU_REL_LO16 .text
- ...
-0001fffc <[^>]*> 3c020006 lui v0,0x6
-[ ]*1fffc: R_MIPS_GNU_REL_HI16 .text
-00020000 <[^>]*> 0043102d daddu v0,v0,v1
-00020004 <[^>]*> 64428004 daddiu v0,v0,-32764
-[ ]*20004: R_MIPS_GNU_REL_LO16 .text
- ...
-00027ffc <[^>]*> 3c020006 lui v0,0x6
-[ ]*27ffc: R_MIPS_GNU_REL_HI16 .text
-00028000 <[^>]*> 0043102d daddu v0,v0,v1
-00028004 <[^>]*> 64420004 daddiu v0,v0,4
-[ ]*28004: R_MIPS_GNU_REL_LO16 .text
- ...
-0002fff8 <[^>]*> 3c020007 lui v0,0x7
-[ ]*2fff8: R_MIPS_GNU_REL_HI16 .text
-0002fffc <[^>]*> 0043102d daddu v0,v0,v1
-00030000 <[^>]*> 64428000 daddiu v0,v0,-32768
-[ ]*30000: R_MIPS_GNU_REL_LO16 .text
- ...
-00037ff8 <[^>]*> 3c020007 lui v0,0x7
-[ ]*37ff8: R_MIPS_GNU_REL_HI16 .text
-00037ffc <[^>]*> 0043102d daddu v0,v0,v1
-00038000 <[^>]*> 64420000 daddiu v0,v0,0
-[ ]*38000: R_MIPS_GNU_REL_LO16 .text
- ...
- ...
+++ /dev/null
-# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and
-# LO are split over a 32K boundary.
-
- .text
- .set noreorder
-
- SYM_TO_TEST = g2
-
- .globl ext
-
- .org 0x00000
- .globl g1
-g1:
-l1:
-
- .org 0x08000
- .globl fn
- .ent fn
-fn:
- .org (0x10000 - 4)
- la $2, SYM_TO_TEST - fn # expands to 2 instructions
-
- .org (0x18000 - 4)
- la $2, SYM_TO_TEST - fn # expands to 2 instructions
-
- .org (0x20000 - 4)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .org (0x28000 - 4)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .org (0x30000 - 8)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .org (0x38000 - 8)
- la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions
-
- .end fn
-
- .org 0x40000
- .globl g2
-g2:
-l2:
-
-# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
- .space 8
+++ /dev/null
-#objdump: -dr --prefix-addresses --show-raw-insn
-#name: MIPS jal-empic-elf-2
-#as: -32 -membedded-pic
-
-# Test the jal macro harder with -membedded-pic.
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
- \.\.\.
- \.\.\.
-0+0018 <[^>]*> 04110002 bal 0+0024 <g1\+0x18>
-[ ]*18: R_MIPS_GNU_REL16_S2 .text
-0+001c <[^>]*> 00000000 nop
-0+0020 <[^>]*> 04110002 bal 0+002c <g1\+0x20>
-[ ]*20: R_MIPS_GNU_REL16_S2 .text
-0+0024 <[^>]*> 00000000 nop
-0+0028 <[^>]*> 0411ffff bal 0+0028 <g1\+0x1c>
-[ ]*28: R_MIPS_GNU_REL16_S2 e1
-0+002c <[^>]*> 00000000 nop
-0+0030 <[^>]*> 10000002 b 0+003c <g1\+0x30>
-[ ]*30: R_MIPS_GNU_REL16_S2 .text
-0+0034 <[^>]*> 00000000 nop
-0+0038 <[^>]*> 10000002 b 0+0044 <g1\+0x38>
-[ ]*38: R_MIPS_GNU_REL16_S2 .text
-0+003c <[^>]*> 00000000 nop
-0+0040 <[^>]*> 1000ffff b 0+0040 <g1\+0x34>
-[ ]*40: R_MIPS_GNU_REL16_S2 e1
-0+0044 <[^>]*> 00000000 nop
-0+0048 <[^>]*> 0411ffff bal 0+0048 <g1\+0x3c>
-[ ]*48: R_MIPS_GNU_REL16_S2 .text
-0+004c <[^>]*> 00000000 nop
-0+0050 <[^>]*> 0411ffff bal 0+0050 <g1\+0x44>
-[ ]*50: R_MIPS_GNU_REL16_S2 .text
-0+0054 <[^>]*> 00000000 nop
-0+0058 <[^>]*> 0411fffc bal 0+004c <g1\+0x40>
-[ ]*58: R_MIPS_GNU_REL16_S2 e1
-0+005c <[^>]*> 00000000 nop
-0+0060 <[^>]*> 04110005 bal 0+0078 <g1\+0x6c>
-[ ]*60: R_MIPS_GNU_REL16_S2 .text
-0+0064 <[^>]*> 00000000 nop
-0+0068 <[^>]*> 04110005 bal 0+0080 <g1\+0x74>
-[ ]*68: R_MIPS_GNU_REL16_S2 .text
-0+006c <[^>]*> 00000000 nop
-0+0070 <[^>]*> 04110002 bal 0+007c <g1\+0x70>
-[ ]*70: R_MIPS_GNU_REL16_S2 e1
-0+0074 <[^>]*> 00000000 nop
- \.\.\.
+++ /dev/null
-# Source file used to test the jal macro even harder
- # some space so offets won't be 0.
- .space 0xc
-
- .globl g1 .text
-g1:
-l1:
- # some more space, so offset from label won't be 0.
- .space 0xc
-
- jal g1 # 0x18
- jal l1 # 0x20
- jal e1 # 0x28
-
- j g1 # 0x30
- j l1 # 0x38
- j e1 # 0x40
-
- jal g1 - 0xc # 0x48
- jal l1 - 0xc # 0x50
- jal e1 - 0xc # 0x58
-
- jal g1 + 0xc # 0x60
- jal l1 + 0xc # 0x68
- jal e1 + 0xc # 0x70
-
-# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
- .space 8
+++ /dev/null
-#objdump: -dr --prefix-addresses --show-raw-insn
-#name: MIPS jal-empic-elf-3
-#as: -32 -membedded-pic
-
-# Test the jal macro harder with -membedded-pic.
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
- \.\.\.
- \.\.\.
-0+0018 <[^>]*> 0411fffa bal 0+0004 <g1\-0x8>
-[ ]*18: R_MIPS_GNU_REL16_S2 .text
-0+001c <[^>]*> 00000000 nop
-0+0020 <[^>]*> 0411fff8 bal 0+0004 <g1\-0x8>
-[ ]*20: R_MIPS_GNU_REL16_S2 .text
-0+0024 <[^>]*> 00000000 nop
-0+0028 <[^>]*> 0411fff6 bal 0+0004 <g1\-0x8>
-[ ]*28: R_MIPS_GNU_REL16_S2 e1
-0+002c <[^>]*> 00000000 nop
-0+0030 <[^>]*> 0411fff4 bal 0+0004 <g1\-0x8>
-[ ]*30: R_MIPS_GNU_REL16_S2 e2
-0+0034 <[^>]*> 00000000 nop
- \.\.\.
+++ /dev/null
-# Source file used to test the jal macro even harder
- # some space so offets won't be 0.
- .space 0xc
-
- .globl g1 .text
- .globl e2 .text
-g1:
-l1:
- # some more space, so offset from label won't be 0.
- .space 0xc
-
- # Hit the case where 'value == 0' in the BFD_RELOC_16_PCREL_S2
- # handling in tc-mips.c:md_apply_fix3().
- jal g1 - 0x20 # 0x18
- jal l1 - 0x28 # 0x20
- jal e1 - 0x24 # 0x28
- jal e2 - 0x2c # 0x30
-
-# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
- .space 8
+++ /dev/null
-#objdump: -dr --prefix-addresses --show-raw-insn
-#name: MIPS jal-empic-elf
-#as: -32 -membedded-pic
-#source: jal.s
-
-# Test the jal macro with -membedded-pic.
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
-0+0000 <[^>]*> 0320f809 jalr t9
-0+0004 <[^>]*> 00000000 nop
-0+0008 <[^>]*> 03202009 jalr a0,t9
-0+000c <[^>]*> 00000000 nop
-0+0010 <[^>]*> 0411ffff bal 0+0010 <text_label\+0x10>
-[ ]*10: R_MIPS_GNU_REL16_S2 .text
-0+0014 <[^>]*> 00000000 nop
-0+0018 <[^>]*> 0411ffff bal 0+0018 <text_label\+0x18>
-[ ]*18: R_MIPS_GNU_REL16_S2 external_text_label
-0+001c <[^>]*> 00000000 nop
-0+0020 <[^>]*> 1000ffff b 0+0020 <text_label\+0x20>
-[ ]*20: R_MIPS_GNU_REL16_S2 .text
-0+0024 <[^>]*> 00000000 nop
-0+0028 <[^>]*> 1000ffff b 0+0028 <text_label\+0x28>
-[ ]*28: R_MIPS_GNU_REL16_S2 external_text_label
-0+002c <[^>]*> 00000000 nop
+++ /dev/null
-#objdump: -dr --prefix-addresses -mmips:3000
-#name: MIPS jal-empic
-#as: -mips1 -membedded-pic
-#source: jal.s
-
-# Test the jal macro with -membedded-pic.
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
-0+0000 <[^>]*> jalr t9
-0+0004 <[^>]*> nop
-0+0008 <[^>]*> jalr a0,t9
-0+000c <[^>]*> nop
-0+0010 <[^>]*> bal 0+0000 <text_label>
-[ ]*10: PCREL16 .text
-0+0014 <[^>]*> nop
-0+0018 <[^>]*> bal 0+0018 <text_label\+(0x|)18>
-[ ]*18: PCREL16 external_text_label
-0+001c <[^>]*> nop
-0+0020 <[^>]*> b 0+0000 <text_label>
-[ ]*20: PCREL16 .text
-0+0024 <[^>]*> nop
-0+0028 <[^>]*> b 0+0028 <text_label\+(0x|)28>
-[ ]*28: PCREL16 external_text_label
-0+002c <[^>]*> nop
+++ /dev/null
-#objdump: -dr --prefix-addresses -mmips:3000
-#name: MIPS la-empic
-#as: -32 -mips1 -membedded-pic
-
-# Test the la macro with -membedded-pic.
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
-0+0000 <[^>]*> li a0,0
-0+0004 <[^>]*> li a0,1
-0+0008 <[^>]*> li a0,0x8000
-0+000c <[^>]*> li a0,-32768
-0+0010 <[^>]*> lui a0,0x1
-0+0014 <[^>]*> lui a0,0x1
-0+0018 <[^>]*> ori a0,a0,0xa5a5
-0+001c <[^>]*> li a0,0
-0+0020 <[^>]*> addu a0,a0,a1
-0+0024 <[^>]*> li a0,1
-0+0028 <[^>]*> addu a0,a0,a1
-0+002c <[^>]*> li a0,0x8000
-0+0030 <[^>]*> addu a0,a0,a1
-0+0034 <[^>]*> li a0,-32768
-0+0038 <[^>]*> addu a0,a0,a1
-0+003c <[^>]*> lui a0,0x1
-0+0040 <[^>]*> addu a0,a0,a1
-0+0044 <[^>]*> lui a0,0x1
-0+0048 <[^>]*> ori a0,a0,0xa5a5
-0+004c <[^>]*> addu a0,a0,a1
-0+0050 <[^>]*> addiu a0,gp,-16384
-[ ]*50: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0054 <[^>]*> addiu a0,gp,0
-[ ]*54: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0058 <[^>]*> addiu a0,gp,0
-[ ]*58: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+005c <[^>]*> addiu a0,gp,0
-[ ]*5c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+0060 <[^>]*> addiu a0,gp,0
-[ ]*60: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0064 <[^>]*> addiu a0,gp,-16384
-[ ]*64: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0068 <[^>]*> addiu a0,gp,-15384
-[ ]*68: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+006c <[^>]*> addiu a0,gp,-16383
-[ ]*6c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0070 <[^>]*> addiu a0,gp,1
-[ ]*70: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0074 <[^>]*> addiu a0,gp,1
-[ ]*74: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+0078 <[^>]*> addiu a0,gp,1
-[ ]*78: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+007c <[^>]*> addiu a0,gp,1
-[ ]*7c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0080 <[^>]*> addiu a0,gp,-16383
-[ ]*80: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0084 <[^>]*> addiu a0,gp,-15383
-[ ]*84: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0088 <[^>]*> addiu a0,gp,-16384
-[ ]*88: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+008c <[^>]*> addu a0,a0,a1
-0+0090 <[^>]*> addiu a0,gp,0
-[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0094 <[^>]*> addu a0,a0,a1
-0+0098 <[^>]*> addiu a0,gp,0
-[ ]*98: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+009c <[^>]*> addu a0,a0,a1
-0+00a0 <[^>]*> addiu a0,gp,0
-[ ]*a0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00a4 <[^>]*> addu a0,a0,a1
-0+00a8 <[^>]*> addiu a0,gp,0
-[ ]*a8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00ac <[^>]*> addu a0,a0,a1
-0+00b0 <[^>]*> addiu a0,gp,-16384
-[ ]*b0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00b4 <[^>]*> addu a0,a0,a1
-0+00b8 <[^>]*> addiu a0,gp,-15384
-[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00bc <[^>]*> addu a0,a0,a1
-0+00c0 <[^>]*> addiu a0,gp,-16383
-[ ]*c0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+00c4 <[^>]*> addu a0,a0,a1
-0+00c8 <[^>]*> addiu a0,gp,1
-[ ]*c8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00cc <[^>]*> addu a0,a0,a1
-0+00d0 <[^>]*> addiu a0,gp,1
-[ ]*d0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00d4 <[^>]*> addu a0,a0,a1
-0+00d8 <[^>]*> addiu a0,gp,1
-[ ]*d8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00dc <[^>]*> addu a0,a0,a1
-0+00e0 <[^>]*> addiu a0,gp,1
-[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00e4 <[^>]*> addu a0,a0,a1
-0+00e8 <[^>]*> addiu a0,gp,-16383
-[ ]*e8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00ec <[^>]*> addu a0,a0,a1
-0+00f0 <[^>]*> addiu a0,gp,-15383
-[ ]*f0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f4 <[^>]*> addu a0,a0,a1
-0+00f8 <[^>]*> lui a0,0x0
-[ ]*f8: RELHI external_text_label
-0+00fc <[^>]*> addiu a0,a0,252
-[ ]*fc: RELLO external_text_label
-0+0100 <[^>]*> li a0,248
- ...
+++ /dev/null
-# Source file used to test the la macro with -membedded-pic
-
- .data
-data_label:
- .extern big_external_data_label,1000
- .extern small_external_data_label,1
- .comm big_external_common,1000
- .comm small_external_common,1
- .lcomm big_local_common,1000
- .lcomm small_local_common,1
-
- .text
-text_label:
- la $4,0
- la $4,1
- la $4,0x8000
- la $4,-0x8000
- la $4,0x10000
- la $4,0x1a5a5
- la $4,0($5)
- la $4,1($5)
- la $4,0x8000($5)
- la $4,-0x8000($5)
- la $4,0x10000($5)
- la $4,0x1a5a5($5)
- la $4,data_label
- la $4,big_external_data_label
- la $4,small_external_data_label
- la $4,big_external_common
- la $4,small_external_common
- la $4,big_local_common
- la $4,small_local_common
- la $4,data_label+1
- la $4,big_external_data_label+1
- la $4,small_external_data_label+1
- la $4,big_external_common+1
- la $4,small_external_common+1
- la $4,big_local_common+1
- la $4,small_local_common+1
- la $4,data_label($5)
- la $4,big_external_data_label($5)
- la $4,small_external_data_label($5)
- la $4,big_external_common($5)
- la $4,small_external_common($5)
- la $4,big_local_common($5)
- la $4,small_local_common($5)
- la $4,data_label+1($5)
- la $4,big_external_data_label+1($5)
- la $4,small_external_data_label+1($5)
- la $4,big_external_common+1($5)
- la $4,small_external_common+1($5)
- la $4,big_local_common+1($5)
- la $4,small_local_common+1($5)
-
-second_text_label:
- la $4,external_text_label - text_label
- la $4,second_text_label - text_label
+++ /dev/null
-#objdump: -dr --prefix-addresses -mmips:3000
-#name: MIPS lb-empic
-#as: -32 -mips1 -membedded-pic
-#source: lb-pic.s
-
-# Test the lb macro with -membedded-pic.
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
-0+0000 <[^>]*> lb a0,0\(zero\)
-0+0004 <[^>]*> lb a0,1\(zero\)
-0+0008 <[^>]*> lui a0,0x1
-0+000c <[^>]*> lb a0,-32768\(a0\)
-0+0010 <[^>]*> lb a0,-32768\(zero\)
-0+0014 <[^>]*> lui a0,0x1
-0+0018 <[^>]*> lb a0,0\(a0\)
-0+001c <[^>]*> lui a0,0x2
-0+0020 <[^>]*> lb a0,-23131\(a0\)
-0+0024 <[^>]*> lb a0,0\(a1\)
-0+0028 <[^>]*> lb a0,1\(a1\)
-0+002c <[^>]*> lui a0,0x1
-0+0030 <[^>]*> addu a0,a0,a1
-0+0034 <[^>]*> lb a0,-32768\(a0\)
-0+0038 <[^>]*> lb a0,-32768\(a1\)
-0+003c <[^>]*> lui a0,0x1
-0+0040 <[^>]*> addu a0,a0,a1
-0+0044 <[^>]*> lb a0,0\(a0\)
-0+0048 <[^>]*> lui a0,0x2
-0+004c <[^>]*> addu a0,a0,a1
-0+0050 <[^>]*> lb a0,-23131\(a0\)
-0+0054 <[^>]*> lb a0,-16384\(gp\)
-[ ]*54: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0058 <[^>]*> lb a0,0\(gp\)
-[ ]*58: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+005c <[^>]*> lb a0,0\(gp\)
-[ ]*5c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+0060 <[^>]*> lb a0,0\(gp\)
-[ ]*60: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+0064 <[^>]*> lb a0,0\(gp\)
-[ ]*64: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0068 <[^>]*> lb a0,-16384\(gp\)
-[ ]*68: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+006c <[^>]*> lb a0,-15384\(gp\)
-[ ]*6c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0070 <[^>]*> lb a0,-16383\(gp\)
-[ ]*70: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0074 <[^>]*> lb a0,1\(gp\)
-[ ]*74: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0078 <[^>]*> lb a0,1\(gp\)
-[ ]*78: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+007c <[^>]*> lb a0,1\(gp\)
-[ ]*7c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+0080 <[^>]*> lb a0,1\(gp\)
-[ ]*80: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0084 <[^>]*> lb a0,-16383\(gp\)
-[ ]*84: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0088 <[^>]*> lb a0,-15383\(gp\)
-[ ]*88: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+008c <[^>]*> addu a0,a1,gp
-0+0090 <[^>]*> lb a0,-16384\(a0\)
-[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0094 <[^>]*> addu a0,a1,gp
-0+0098 <[^>]*> lb a0,0\(a0\)
-[ ]*98: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+009c <[^>]*> addu a0,a1,gp
-0+00a0 <[^>]*> lb a0,0\(a0\)
-[ ]*a0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00a4 <[^>]*> addu a0,a1,gp
-0+00a8 <[^>]*> lb a0,0\(a0\)
-[ ]*a8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00ac <[^>]*> addu a0,a1,gp
-0+00b0 <[^>]*> lb a0,0\(a0\)
-[ ]*b0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00b4 <[^>]*> addu a0,a1,gp
-0+00b8 <[^>]*> lb a0,-16384\(a0\)
-[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00bc <[^>]*> addu a0,a1,gp
-0+00c0 <[^>]*> lb a0,-15384\(a0\)
-[ ]*c0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00c4 <[^>]*> addu a0,a1,gp
-0+00c8 <[^>]*> lb a0,-16383\(a0\)
-[ ]*c8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+00cc <[^>]*> addu a0,a1,gp
-0+00d0 <[^>]*> lb a0,1\(a0\)
-[ ]*d0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00d4 <[^>]*> addu a0,a1,gp
-0+00d8 <[^>]*> lb a0,1\(a0\)
-[ ]*d8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00dc <[^>]*> addu a0,a1,gp
-0+00e0 <[^>]*> lb a0,1\(a0\)
-[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00e4 <[^>]*> addu a0,a1,gp
-0+00e8 <[^>]*> lb a0,1\(a0\)
-[ ]*e8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00ec <[^>]*> addu a0,a1,gp
-0+00f0 <[^>]*> lb a0,-16383\(a0\)
-[ ]*f0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f4 <[^>]*> addu a0,a1,gp
-0+00f8 <[^>]*> lb a0,-15383\(a0\)
-[ ]*f8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00fc <[^>]*> nop
+++ /dev/null
-#objdump: -dr --prefix-addresses -mmips:3000
-#name: MIPS ld-empic
-#as: -32 -mips1 -membedded-pic --defsym EMPIC=1
-#source: ld-pic.s
-
-# Test the ld macro with -membedded-pic.
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
-0+0000 <[^>]*> lw a0,0\(zero\)
-0+0004 <[^>]*> lw a1,4\(zero\)
-0+0008 <[^>]*> lw a0,1\(zero\)
-0+000c <[^>]*> lw a1,5\(zero\)
-0+0010 <[^>]*> lui at,0x1
-0+0014 <[^>]*> lw a0,-32768\(at\)
-0+0018 <[^>]*> lw a1,-32764\(at\)
-0+001c <[^>]*> lw a0,-32768\(zero\)
-0+0020 <[^>]*> lw a1,-32764\(zero\)
-0+0024 <[^>]*> lui at,0x1
-0+0028 <[^>]*> lw a0,0\(at\)
-0+002c <[^>]*> lw a1,4\(at\)
-0+0030 <[^>]*> lui at,0x2
-0+0034 <[^>]*> lw a0,-23131\(at\)
-0+0038 <[^>]*> lw a1,-23127\(at\)
-0+003c <[^>]*> nop
-0+0040 <[^>]*> lw a0,0\(a1\)
-0+0044 <[^>]*> lw a1,4\(a1\)
-0+0048 <[^>]*> nop
-0+004c <[^>]*> lw a0,1\(a1\)
-0+0050 <[^>]*> lw a1,5\(a1\)
-0+0054 <[^>]*> lui at,0x1
-0+0058 <[^>]*> addu at,a1,at
-0+005c <[^>]*> lw a0,-32768\(at\)
-0+0060 <[^>]*> lw a1,-32764\(at\)
-0+0064 <[^>]*> nop
-0+0068 <[^>]*> lw a0,-32768\(a1\)
-0+006c <[^>]*> lw a1,-32764\(a1\)
-0+0070 <[^>]*> lui at,0x1
-0+0074 <[^>]*> addu at,a1,at
-0+0078 <[^>]*> lw a0,0\(at\)
-0+007c <[^>]*> lw a1,4\(at\)
-0+0080 <[^>]*> lui at,0x2
-0+0084 <[^>]*> addu at,a1,at
-0+0088 <[^>]*> lw a0,-23131\(at\)
-0+008c <[^>]*> lw a1,-23127\(at\)
-0+0090 <[^>]*> lw a0,-16384\(gp\)
-[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0094 <[^>]*> lw a1,-16380\(gp\)
-[ ]*94: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0098 <[^>]*> lw a0,0\(gp\)
-[ ]*98: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+009c <[^>]*> lw a1,4\(gp\)
-[ ]*9c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00a0 <[^>]*> lw a0,0\(gp\)
-[ ]*a0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00a4 <[^>]*> lw a1,4\(gp\)
-[ ]*a4: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00a8 <[^>]*> lw a0,0\(gp\)
-[ ]*a8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00ac <[^>]*> lw a1,4\(gp\)
-[ ]*ac: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00b0 <[^>]*> lw a0,0\(gp\)
-[ ]*b0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00b4 <[^>]*> lw a1,4\(gp\)
-[ ]*b4: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00b8 <[^>]*> lw a0,-16384\(gp\)
-[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00bc <[^>]*> lw a1,-16380\(gp\)
-[ ]*bc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00c0 <[^>]*> lw a0,-15384\(gp\)
-[ ]*c0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00c4 <[^>]*> lw a1,-15380\(gp\)
-[ ]*c4: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00c8 <[^>]*> lw a0,-16383\(gp\)
-[ ]*c8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+00cc <[^>]*> lw a1,-16379\(gp\)
-[ ]*cc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+00d0 <[^>]*> lw a0,1\(gp\)
-[ ]*d0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00d4 <[^>]*> lw a1,5\(gp\)
-[ ]*d4: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00d8 <[^>]*> lw a0,1\(gp\)
-[ ]*d8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00dc <[^>]*> lw a1,5\(gp\)
-[ ]*dc: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00e0 <[^>]*> lw a0,1\(gp\)
-[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00e4 <[^>]*> lw a1,5\(gp\)
-[ ]*e4: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00e8 <[^>]*> lw a0,1\(gp\)
-[ ]*e8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00ec <[^>]*> lw a1,5\(gp\)
-[ ]*ec: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00f0 <[^>]*> lw a0,-16383\(gp\)
-[ ]*f0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f4 <[^>]*> lw a1,-16379\(gp\)
-[ ]*f4: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f8 <[^>]*> lw a0,-15383\(gp\)
-[ ]*f8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00fc <[^>]*> lw a1,-15379\(gp\)
-[ ]*fc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0100 <[^>]*> nop
-0+0104 <[^>]*> addu at,a1,gp
-0+0108 <[^>]*> lw a0,-16384\(at\)
-[ ]*108: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+010c <[^>]*> lw a1,-16380\(at\)
-[ ]*10c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0110 <[^>]*> nop
-0+0114 <[^>]*> addu at,a1,gp
-0+0118 <[^>]*> lw a0,0\(at\)
-[ ]*118: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+011c <[^>]*> lw a1,4\(at\)
-[ ]*11c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0120 <[^>]*> nop
-0+0124 <[^>]*> addu at,a1,gp
-0+0128 <[^>]*> lw a0,0\(at\)
-[ ]*128: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+012c <[^>]*> lw a1,4\(at\)
-[ ]*12c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+0130 <[^>]*> nop
-0+0134 <[^>]*> addu at,a1,gp
-0+0138 <[^>]*> lw a0,0\(at\)
-[ ]*138: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+013c <[^>]*> lw a1,4\(at\)
-[ ]*13c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+0140 <[^>]*> nop
-0+0144 <[^>]*> addu at,a1,gp
-0+0148 <[^>]*> lw a0,0\(at\)
-[ ]*148: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+014c <[^>]*> lw a1,4\(at\)
-[ ]*14c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0150 <[^>]*> nop
-0+0154 <[^>]*> addu at,a1,gp
-0+0158 <[^>]*> lw a0,-16384\(at\)
-[ ]*158: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+015c <[^>]*> lw a1,-16380\(at\)
-[ ]*15c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0160 <[^>]*> nop
-0+0164 <[^>]*> addu at,a1,gp
-0+0168 <[^>]*> lw a0,-15384\(at\)
-[ ]*168: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+016c <[^>]*> lw a1,-15380\(at\)
-[ ]*16c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0170 <[^>]*> nop
-0+0174 <[^>]*> addu at,a1,gp
-0+0178 <[^>]*> lw a0,-16383\(at\)
-[ ]*178: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+017c <[^>]*> lw a1,-16379\(at\)
-[ ]*17c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0180 <[^>]*> nop
-0+0184 <[^>]*> addu at,a1,gp
-0+0188 <[^>]*> lw a0,1\(at\)
-[ ]*188: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+018c <[^>]*> lw a1,5\(at\)
-[ ]*18c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0190 <[^>]*> nop
-0+0194 <[^>]*> addu at,a1,gp
-0+0198 <[^>]*> lw a0,1\(at\)
-[ ]*198: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+019c <[^>]*> lw a1,5\(at\)
-[ ]*19c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+01a0 <[^>]*> nop
-0+01a4 <[^>]*> addu at,a1,gp
-0+01a8 <[^>]*> lw a0,1\(at\)
-[ ]*1a8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+01ac <[^>]*> lw a1,5\(at\)
-[ ]*1ac: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+01b0 <[^>]*> nop
-0+01b4 <[^>]*> addu at,a1,gp
-0+01b8 <[^>]*> lw a0,1\(at\)
-[ ]*1b8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+01bc <[^>]*> lw a1,5\(at\)
-[ ]*1bc: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+01c0 <[^>]*> nop
-0+01c4 <[^>]*> addu at,a1,gp
-0+01c8 <[^>]*> lw a0,-16383\(at\)
-[ ]*1c8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+01cc <[^>]*> lw a1,-16379\(at\)
-[ ]*1cc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+01d0 <[^>]*> nop
-0+01d4 <[^>]*> addu at,a1,gp
-0+01d8 <[^>]*> lw a0,-15383\(at\)
-[ ]*1d8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+01dc <[^>]*> lw a1,-15379\(at\)
-[ ]*1dc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
ld $4,small_local_common+1($5)
# Round to a 16 byte boundary, for ease in testing multiple targets.
- .ifndef EMPIC
nop
nop
- .endif
+++ /dev/null
-#objdump: -dr --prefix-addresses -mmips:3000
-#name: MIPS lifloat-empic
-#as: -32 -mips1 -membedded-pic --defsym EMPIC=1
-#source: lifloat.s
-
-# Test the li.d and li.s macros with -membedded-pic.
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
-0+0000 <[^>]*> addiu at,gp,-16384
-[ ]*0: [A-Z0-9_]*GPREL[A-Z0-9_]* .rdata.*
-0+0004 <[^>]*> lw a0,0\(at\)
-0+0008 <[^>]*> lw a1,4\(at\)
-0+000c <[^>]*> lwc1 \$f[45],-16368\(gp\)
-[ ]*c: [A-Z0-9_]*LITERAL[A-Z0-9_]* .lit8.*
-0+0010 <[^>]*> lwc1 \$f[45],-16364\(gp\)
-[ ]*10: [A-Z0-9_]*LITERAL[A-Z0-9_]* .lit8.*
-0+0014 <[^>]*> lui a0,0x3f8f
-0+0018 <[^>]*> ori a0,a0,0xcd36
-0+001c <[^>]*> lui at,0x3f8f
-0+0020 <[^>]*> ori at,at,0xcd36
-0+0024 <[^>]*> mtc1 at,\$f4
- ...
nop
nop
.endif
- .ifdef EMPIC
- nop
- nop
- .endif
}
if $elf { run_dump_test "jal-svr4pic" }
if $elf { run_dump_test "jal-xgot" }
- # LOSE: As of 2002-02-08, the jal-empic test fails for target mips-ecoff.
- # It appears that it broke between 2000-03-11 00:00UTC and
- # 2000-03-12 00:00 UTC.
- if $ecoff { run_dump_test "jal-empic" }
- if $elf {
- run_dump_test_arches "jal-empic-elf" [mips_arch_list_matching mips1]
- run_dump_test_arches "jal-empic-elf-2" [mips_arch_list_matching mips1]
- run_dump_test_arches "jal-empic-elf-3" [mips_arch_list_matching mips1]
- }
run_list_test_arches "jal-range" "-32" [mips_arch_list_matching mips1]
if $has_newabi { run_dump_test "jal-newabi" }
if !$aout { run_dump_test "la" }
if $elf { run_dump_test "la-svr4pic" }
if $elf { run_dump_test "la-xgot" }
- # LOSE: As of 2002-02-08, the la-empic test fails for target mips-ecoff.
- # Not sure when it first cropped up, but may be related to addition of
- # "la" -> "addiu" pattern in MIPS opcode table long ago.
- if $ecoff { run_dump_test "la-empic" }
if $elf { run_dump_test "lca-svr4pic" }
if $elf { run_dump_test "lca-xgot" }
if !$aout {
run_dump_test "lb-xgot"
run_dump_test "lb-xgot-ilocks"
}
- if $ecoff { run_dump_test "lb-empic" }
if !$aout {
if !$gpr_ilocks {
run_dump_test "ld"
}
if $elf { run_dump_test "ld-svr4pic" }
if $elf { run_dump_test "ld-xgot" }
- if $ecoff { run_dump_test "ld-empic" }
run_dump_test_arches "li" [mips_arch_list_matching mips1]
if !$aout { run_dump_test "lifloat" }
if $elf { run_dump_test "lif-svr4pic" }
if $elf { run_dump_test "lif-xgot" }
- # LOSE: As of 2002-02-08, the lif-empic test fails for target mips-ecoff.
- # It appears that it broke between 2000-03-11 00:00UTC and
- # 2000-03-12 00:00 UTC.
- if $ecoff { run_dump_test "lif-empic" }
run_dump_test_arches "mips4" [mips_arch_list_matching mips4]
run_dump_test_arches "mips5" [mips_arch_list_matching mips5]
if $ilocks {
run_dump_test_arches "ulh2-el" [mips_arch_list_matching mips1]
if $elf { run_dump_test "ulh-svr4pic" }
if $elf { run_dump_test "ulh-xgot" }
- if $ecoff { run_dump_test "ulh-empic" }
if !$aout {
run_dump_test "ulw"
run_dump_test "uld"
}
run_dump_test "elf-rel19"
- run_dump_test "${tmips}${el}empic"
- run_dump_test "empic2"
- run_dump_test "empic3_e"
- run_dump_test "empic3_g1"
- run_dump_test "empic3_g2"
if { !$no_mips16 } {
run_dump_test "${tmips}mips${el}16-e"
run_dump_test "${tmips}mips${el}16-f"
+++ /dev/null
-#objdump: -rst -mmips:4000
-#name: MIPS empic
-#as: -mabi=o64 -membedded-pic -mips3
-#source: empic.s
-#stderr: empic.l
-
-# Check GNU-specific embedded relocs, for ELF.
-
-.*: +file format elf.*mips.*
-
-SYMBOL TABLE:
-0+0000000 l d \.text 0+0000000
-0+0000000 l d \.data 0+0000000
-0+0000000 l d \.bss 0+0000000
-0+0000004 l \.text 0+0000000 l2
-0+0000100 l \.foo 0+0000000 l1
-0+0000034 l \.text 0+0000000 l3
-0+0000098 l \.text 0+0000000 l5
-0+0000000 l d \.foo 0+0000000
-0+0000004 l \.foo 0+0000000 l4
-0+0000000 l d \.reginfo 0+0000000
-0+0000000 l d \.(mdebug|pdr) 0+0000000
-0+0000000 \*UND\* 0+0000000 g1
-0+0000000 \*UND\* 0+0000000 g2
-
-
-RELOCATION RECORDS FOR \[\.text\]:
-OFFSET [ ]+ TYPE VALUE
-0+0000004 R_MIPS_GNU_REL16_S2 g1
-0+000000c R_MIPS_GNU_REL16_S2 g2
-0+0000014 R_MIPS_GNU_REL16_S2 g2
-0+000001c R_MIPS_GNU_REL16_S2 \.foo
-0+0000024 R_MIPS_GNU_REL16_S2 \.text
-0+000002c R_MIPS_GNU_REL16_S2 \.foo
-0+0000034 R_MIPS_GNU_REL16_S2 \.text
-0+000003c R_MIPS_GNU_REL_HI16 g1
-0+0000040 R_MIPS_GNU_REL_LO16 g1
-0+0000044 R_MIPS_GNU_REL_HI16 \.foo
-0+0000048 R_MIPS_GNU_REL_LO16 \.foo
-0+0000050 R_MIPS_32 g1
-0+0000054 R_MIPS_32 \.foo
-0+0000058 R_MIPS_32 \.text
-0+000005c R_MIPS_PC32 g1
-0+0000060 R_MIPS_PC32 \.foo
-0+0000068 R_MIPS_64 g1
-0+0000070 R_MIPS_64 \.foo
-0+0000078 R_MIPS_64 \.text
-0+0000080 R_MIPS_PC64 g1
-0+0000088 R_MIPS_PC64 \.foo
-0+0000098 R_MIPS_GNU_REL16_S2 \.text
-0+000009c R_MIPS_GNU_REL16_S2 \.text
-0+00000a0 R_MIPS_GNU_REL_HI16 \.text
-0+00000a4 R_MIPS_GNU_REL_LO16 \.text
-0+00000a8 R_MIPS_GNU_REL_HI16 \.text
-0+00000ac R_MIPS_GNU_REL_LO16 \.text
-0+00000b0 R_MIPS_32 \.text
-0+00000b8 R_MIPS_64 \.text
-0+00000cc R_MIPS_GNU_REL16_S2 \.text
-0+00000d0 R_MIPS_GNU_REL16_S2 \.text
-0+00000d4 R_MIPS_GNU_REL_HI16 \.text
-0+00000d8 R_MIPS_GNU_REL_LO16 \.text
-0+00000dc R_MIPS_GNU_REL_HI16 \.text
-0+00000e0 R_MIPS_GNU_REL_LO16 \.text
-0+00000e4 R_MIPS_32 \.text
-0+00000f0 R_MIPS_64 \.text
-
-
-RELOCATION RECORDS FOR \[\.foo\]:
-OFFSET [ ]+ TYPE VALUE
-0+0000004 R_MIPS_GNU_REL_HI16 g1
-0+0000008 R_MIPS_GNU_REL_LO16 g1
-0+000000c R_MIPS_GNU_REL_HI16 \.foo
-0+0000010 R_MIPS_GNU_REL_LO16 \.foo
-0+0000014 R_MIPS_GNU_REL_HI16 \.text
-0+0000018 R_MIPS_GNU_REL_LO16 \.text
-0+000001c R_MIPS_GNU_REL_HI16 g1
-0+0000020 R_MIPS_GNU_REL_LO16 g1
-0+0000024 R_MIPS_GNU_REL_HI16 g1
-0+0000028 R_MIPS_GNU_REL_LO16 g1
-0+000002c R_MIPS_GNU_REL_HI16 \.foo
-0+0000030 R_MIPS_GNU_REL_LO16 \.foo
-0+0000034 R_MIPS_GNU_REL_HI16 \.text
-0+0000038 R_MIPS_GNU_REL_LO16 \.text
-0+000003c R_MIPS_32 g1
-0+0000040 R_MIPS_32 \.foo
-0+0000044 R_MIPS_32 \.text
-0+0000048 R_MIPS_PC32 g1
-0+0000050 R_MIPS_PC32 \.text
-0+0000058 R_MIPS_64 g1
-0+0000060 R_MIPS_64 \.foo
-0+0000068 R_MIPS_64 \.text
-0+0000070 R_MIPS_PC64 g1
-0+0000080 R_MIPS_PC64 \.text
-0+0000088 R_MIPS_GNU_REL_HI16 g1
-0+000008c R_MIPS_GNU_REL_LO16 g1
-0+0000090 R_MIPS_GNU_REL_HI16 \.foo
-0+0000094 R_MIPS_GNU_REL_LO16 \.foo
-0+0000098 R_MIPS_GNU_REL_HI16 \.text
-0+000009c R_MIPS_GNU_REL_LO16 \.text
-0+00000a0 R_MIPS_GNU_REL_HI16 g1
-0+00000a4 R_MIPS_GNU_REL_LO16 g1
-0+00000a8 R_MIPS_GNU_REL_HI16 \.foo
-0+00000ac R_MIPS_GNU_REL_LO16 \.foo
-0+00000b0 R_MIPS_GNU_REL_HI16 \.text
-0+00000b4 R_MIPS_GNU_REL_LO16 \.text
-0+00000b8 R_MIPS_32 g1
-0+00000bc R_MIPS_32 \.foo
-0+00000c0 R_MIPS_32 \.text
-0+00000c4 R_MIPS_PC32 g1
-0+00000cc R_MIPS_PC32 \.text
-0+00000d0 R_MIPS_64 g1
-0+00000d8 R_MIPS_64 \.foo
-0+00000e0 R_MIPS_64 \.text
-0+00000e8 R_MIPS_PC64 g1
-0+00000f8 R_MIPS_PC64 \.text
-
-Contents of section \.text:
- 0000 00000000 ffff1104 00000000 ffff0010 .*
- 0010 00000000 ffff0010 00000000 3f001104 .*
- 0020 00000000 00001104 00000000 41000010 .*
- 0030 00000000 00000010 00000000 0000033c .*
- 0040 0c0063[26]4 0000033c 140163[26]4 d0ff03[26]4 .*
- 0050 00000000 00010000 04000000 28000000 .*
- 0060 2c010000 d0ffffff 00000000 00000000 .*
- 0070 00010000 00000000 04000000 00000000 .*
- 0080 4c000000 00000000 54010000 00000000 .*
- 0090 d0ffffff ffffffff 32000010 33000010 .*
- 00a0 0000033c d80063[26]4 0000033c e80063[26]4 .*
- 00b0 cc000000 34000000 cc000000 00000000 .*
- 00c0 34000000 00000000 00000000 32000010 .*
- 00d0 33000010 0000033c 0c0163[26]4 0000033c .*
- 00e0 1c0163[26]4 cc000000 34000000 00000000 .*
- 00f0 cc000000 00000000 34000000 00000000 .*
-Contents of section \.reginfo:
- 0000 08000080 00000000 00000000 00000000 .*
- 0010 00000000 00000000 .*
-Contents of section \.foo:
- 0000 00000000 0000033c 040063[26]4 0000033c .*
- 0010 0c0163[26]4 0000033c 180063[26]4 0000033c .*
- 0020 1c0063[26]4 0000033c 240063[26]4 0000033c .*
- 0030 2c0163[26]4 0000033c 380063[26]4 00000000 .*
- 0040 00010000 04000000 44000000 fc000000 .*
- 0050 50000000 00000000 00000000 00000000 .*
- 0060 00010000 00000000 04000000 00000000 .*
- 0070 6c000000 00000000 fc000000 00000000 .*
- 0080 80000000 00000000 0000033c 8c0063[26]4 .*
- 0090 0000033c 940163[26]4 0000033c a00063[26]4 .*
- 00a0 0000033c a40063[26]4 0000033c ac0163[26]4 .*
- 00b0 0000033c b80063[26]4 04000000 04010000 .*
- 00c0 08000000 c4000000 00010000 d0000000 .*
- 00d0 04000000 00000000 04010000 00000000 .*
- 00e0 08000000 00000000 e8000000 00000000 .*
- 00f0 00010000 00000000 fc000000 00000000 .*
- 0100 00000000 00000000 00000000 00000000 .*
-
+++ /dev/null
-#objdump: -rst -mmips:4000
-#name: MIPS empic
-#as: -mabi=o64 -membedded-pic -mips3
-#source: empic.s
-#stderr: empic.l
-
-# Check GNU-specific embedded relocs, for ELF.
-
-.*: +file format elf.*mips.*
-
-SYMBOL TABLE:
-0+0000000 l d \.text 0+0000000
-0+0000000 l d \.data 0+0000000
-0+0000000 l d \.bss 0+0000000
-0+0000004 l \.text 0+0000000 l2
-0+0000100 l \.foo 0+0000000 l1
-0+0000034 l \.text 0+0000000 l3
-0+0000098 l \.text 0+0000000 l5
-0+0000000 l d \.foo 0+0000000
-0+0000004 l \.foo 0+0000000 l4
-0+0000000 l d \.reginfo 0+0000000
-0+0000000 l d \.(mdebug|pdr) 0+0000000
-0+0000000 \*UND\* 0+0000000 g1
-0+0000000 \*UND\* 0+0000000 g2
-
-
-RELOCATION RECORDS FOR \[\.text\]:
-OFFSET [ ]+ TYPE VALUE
-0+0000004 R_MIPS_GNU_REL16_S2 g1
-0+000000c R_MIPS_GNU_REL16_S2 g2
-0+0000014 R_MIPS_GNU_REL16_S2 g2
-0+000001c R_MIPS_GNU_REL16_S2 \.foo
-0+0000024 R_MIPS_GNU_REL16_S2 \.text
-0+000002c R_MIPS_GNU_REL16_S2 \.foo
-0+0000034 R_MIPS_GNU_REL16_S2 \.text
-0+000003c R_MIPS_GNU_REL_HI16 g1
-0+0000040 R_MIPS_GNU_REL_LO16 g1
-0+0000044 R_MIPS_GNU_REL_HI16 \.foo
-0+0000048 R_MIPS_GNU_REL_LO16 \.foo
-0+0000050 R_MIPS_32 g1
-0+0000054 R_MIPS_32 \.foo
-0+0000058 R_MIPS_32 \.text
-0+000005c R_MIPS_PC32 g1
-0+0000060 R_MIPS_PC32 \.foo
-0+0000068 R_MIPS_64 g1
-0+0000070 R_MIPS_64 \.foo
-0+0000078 R_MIPS_64 \.text
-0+0000080 R_MIPS_PC64 g1
-0+0000088 R_MIPS_PC64 \.foo
-0+0000098 R_MIPS_GNU_REL16_S2 \.text
-0+000009c R_MIPS_GNU_REL16_S2 \.text
-0+00000a0 R_MIPS_GNU_REL_HI16 \.text
-0+00000a4 R_MIPS_GNU_REL_LO16 \.text
-0+00000a8 R_MIPS_GNU_REL_HI16 \.text
-0+00000ac R_MIPS_GNU_REL_LO16 \.text
-0+00000b0 R_MIPS_32 \.text
-0+00000b8 R_MIPS_64 \.text
-0+00000cc R_MIPS_GNU_REL16_S2 \.text
-0+00000d0 R_MIPS_GNU_REL16_S2 \.text
-0+00000d4 R_MIPS_GNU_REL_HI16 \.text
-0+00000d8 R_MIPS_GNU_REL_LO16 \.text
-0+00000dc R_MIPS_GNU_REL_HI16 \.text
-0+00000e0 R_MIPS_GNU_REL_LO16 \.text
-0+00000e4 R_MIPS_32 \.text
-0+00000f0 R_MIPS_64 \.text
-
-
-RELOCATION RECORDS FOR \[\.foo\]:
-OFFSET [ ]+ TYPE VALUE
-0+0000004 R_MIPS_GNU_REL_HI16 g1
-0+0000008 R_MIPS_GNU_REL_LO16 g1
-0+000000c R_MIPS_GNU_REL_HI16 \.foo
-0+0000010 R_MIPS_GNU_REL_LO16 \.foo
-0+0000014 R_MIPS_GNU_REL_HI16 \.text
-0+0000018 R_MIPS_GNU_REL_LO16 \.text
-0+000001c R_MIPS_GNU_REL_HI16 g1
-0+0000020 R_MIPS_GNU_REL_LO16 g1
-0+0000024 R_MIPS_GNU_REL_HI16 g1
-0+0000028 R_MIPS_GNU_REL_LO16 g1
-0+000002c R_MIPS_GNU_REL_HI16 \.foo
-0+0000030 R_MIPS_GNU_REL_LO16 \.foo
-0+0000034 R_MIPS_GNU_REL_HI16 \.text
-0+0000038 R_MIPS_GNU_REL_LO16 \.text
-0+000003c R_MIPS_32 g1
-0+0000040 R_MIPS_32 \.foo
-0+0000044 R_MIPS_32 \.text
-0+0000048 R_MIPS_PC32 g1
-0+0000050 R_MIPS_PC32 \.text
-0+0000058 R_MIPS_64 g1
-0+0000060 R_MIPS_64 \.foo
-0+0000068 R_MIPS_64 \.text
-0+0000070 R_MIPS_PC64 g1
-0+0000080 R_MIPS_PC64 \.text
-0+0000088 R_MIPS_GNU_REL_HI16 g1
-0+000008c R_MIPS_GNU_REL_LO16 g1
-0+0000090 R_MIPS_GNU_REL_HI16 \.foo
-0+0000094 R_MIPS_GNU_REL_LO16 \.foo
-0+0000098 R_MIPS_GNU_REL_HI16 \.text
-0+000009c R_MIPS_GNU_REL_LO16 \.text
-0+00000a0 R_MIPS_GNU_REL_HI16 g1
-0+00000a4 R_MIPS_GNU_REL_LO16 g1
-0+00000a8 R_MIPS_GNU_REL_HI16 \.foo
-0+00000ac R_MIPS_GNU_REL_LO16 \.foo
-0+00000b0 R_MIPS_GNU_REL_HI16 \.text
-0+00000b4 R_MIPS_GNU_REL_LO16 \.text
-0+00000b8 R_MIPS_32 g1
-0+00000bc R_MIPS_32 \.foo
-0+00000c0 R_MIPS_32 \.text
-0+00000c4 R_MIPS_PC32 g1
-0+00000cc R_MIPS_PC32 \.text
-0+00000d0 R_MIPS_64 g1
-0+00000d8 R_MIPS_64 \.foo
-0+00000e0 R_MIPS_64 \.text
-0+00000e8 R_MIPS_PC64 g1
-0+00000f8 R_MIPS_PC64 \.text
-
-Contents of section \.text:
- 0000 00000000 0411ffff 00000000 1000ffff .*
- 0010 00000000 1000ffff 00000000 0411003f .*
- 0020 00000000 04110000 00000000 10000041 .*
- 0030 00000000 10000000 00000000 3c030000 .*
- 0040 [26]463000c 3c030000 [26]4630114 [26]403ffd0 .*
- 0050 00000000 00000100 00000004 00000028 .*
- 0060 0000012c ffffffd0 00000000 00000000 .*
- 0070 00000000 00000100 00000000 00000004 .*
- 0080 00000000 0000004c 00000000 00000154 .*
- 0090 ffffffff ffffffd0 10000032 10000033 .*
- 00a0 3c030000 [26]46300d8 3c030000 [26]46300e8 .*
- 00b0 000000cc 00000034 00000000 000000cc .*
- 00c0 00000000 00000034 00000000 10000032 .*
- 00d0 10000033 3c030000 [26]463010c 3c030000 .*
- 00e0 [26]463011c 000000cc 00000034 00000000 .*
- 00f0 00000000 000000cc 00000000 00000034 .*
-Contents of section \.reginfo:
- 0000 80000008 00000000 00000000 00000000 .*
- 0010 00000000 00000000 .*
-Contents of section \.foo:
- 0000 00000000 3c030000 [26]4630004 3c030000 .*
- 0010 [26]463010c 3c030000 [26]4630018 3c030000 .*
- 0020 [26]463001c 3c030000 [26]4630024 3c030000 .*
- 0030 [26]463012c 3c030000 [26]4630038 00000000 .*
- 0040 00000100 00000004 00000044 000000fc .*
- 0050 00000050 00000000 00000000 00000000 .*
- 0060 00000000 00000100 00000000 00000004 .*
- 0070 00000000 0000006c 00000000 000000fc .*
- 0080 00000000 00000080 3c030000 [26]463008c .*
- 0090 3c030000 [26]4630194 3c030000 [26]46300a0 .*
- 00a0 3c030000 [26]46300a4 3c030000 [26]46301ac .*
- 00b0 3c030000 [26]46300b8 00000004 00000104 .*
- 00c0 00000008 000000c4 00000100 000000d0 .*
- 00d0 00000000 00000004 00000000 00000104 .*
- 00e0 00000000 00000008 00000000 000000e8 .*
- 00f0 00000000 00000100 00000000 000000fc .*
- 0100 00000000 00000000 00000000 00000000 .*
-
+++ /dev/null
-#objdump: -dr --prefix-addresses -mmips:3000
-#name: MIPS ulh-empic
-#as: -32 -mips1 -membedded-pic
-#source: ulh-pic.s
-
-# Test the ulh macro with -membedded-pic.
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
-0+0000 <[^>]*> addiu at,gp,-16384
-[ ]*0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0004 <[^>]*> lb a0,[01]\(at\)
-0+0008 <[^>]*> lbu at,[01]\(at\)
-0+000c <[^>]*> sll a0,a0,0x8
-0+0010 <[^>]*> or a0,a0,at
-0+0014 <[^>]*> addiu at,gp,0
-[ ]*14: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0018 <[^>]*> lbu a0,[01]\(at\)
-0+001c <[^>]*> lbu at,[01]\(at\)
-0+0020 <[^>]*> sll a0,a0,0x8
-0+0024 <[^>]*> or a0,a0,at
-0+0028 <[^>]*> addiu at,gp,0
-[ ]*28: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+002c <[^>]*> lwl a0,[03]\(at\)
-0+0030 <[^>]*> lwr a0,[03]\(at\)
-0+0034 <[^>]*> addiu at,gp,0
-[ ]*34: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+0038 <[^>]*> sb a0,[01]\(at\)
-0+003c <[^>]*> srl a0,a0,0x8
-0+0040 <[^>]*> sb a0,[01]\(at\)
-0+0044 <[^>]*> lbu at,[01]\(at\)
-0+0048 <[^>]*> sll a0,a0,0x8
-0+004c <[^>]*> or a0,a0,at
-0+0050 <[^>]*> addiu at,gp,0
-[ ]*50: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0054 <[^>]*> swl a0,[03]\(at\)
-0+0058 <[^>]*> swr a0,[03]\(at\)
-0+005c <[^>]*> addiu at,gp,-16384
-[ ]*5c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0060 <[^>]*> lb a0,[01]\(at\)
-0+0064 <[^>]*> lbu at,[01]\(at\)
-0+0068 <[^>]*> sll a0,a0,0x8
-0+006c <[^>]*> or a0,a0,at
-0+0070 <[^>]*> addiu at,gp,-15384
-[ ]*70: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0074 <[^>]*> lbu a0,[01]\(at\)
-0+0078 <[^>]*> lbu at,[01]\(at\)
-0+007c <[^>]*> sll a0,a0,0x8
-0+0080 <[^>]*> or a0,a0,at
-0+0084 <[^>]*> addiu at,gp,-16383
-[ ]*84: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0088 <[^>]*> lwl a0,[03]\(at\)
-0+008c <[^>]*> lwr a0,[03]\(at\)
-0+0090 <[^>]*> addiu at,gp,1
-[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0094 <[^>]*> sb a0,[01]\(at\)
-0+0098 <[^>]*> srl a0,a0,0x8
-0+009c <[^>]*> sb a0,[01]\(at\)
-0+00a0 <[^>]*> lbu at,[01]\(at\)
-0+00a4 <[^>]*> sll a0,a0,0x8
-0+00a8 <[^>]*> or a0,a0,at
-0+00ac <[^>]*> addiu at,gp,1
-[ ]*ac: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00b0 <[^>]*> swl a0,[03]\(at\)
-0+00b4 <[^>]*> swr a0,[03]\(at\)
-0+00b8 <[^>]*> addiu at,gp,1
-[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00bc <[^>]*> lb a0,[01]\(at\)
-0+00c0 <[^>]*> lbu at,[01]\(at\)
-0+00c4 <[^>]*> sll a0,a0,0x8
-0+00c8 <[^>]*> or a0,a0,at
-0+00cc <[^>]*> addiu at,gp,1
-[ ]*cc: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00d0 <[^>]*> lbu a0,[01]\(at\)
-0+00d4 <[^>]*> lbu at,[01]\(at\)
-0+00d8 <[^>]*> sll a0,a0,0x8
-0+00dc <[^>]*> or a0,a0,at
-0+00e0 <[^>]*> addiu at,gp,-16383
-[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00e4 <[^>]*> lwl a0,[03]\(at\)
-0+00e8 <[^>]*> lwr a0,[03]\(at\)
-0+00ec <[^>]*> addiu at,gp,-15383
-[ ]*ec: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f0 <[^>]*> sb a0,[01]\(at\)
-0+00f4 <[^>]*> srl a0,a0,0x8
-0+00f8 <[^>]*> sb a0,[01]\(at\)
-0+00fc <[^>]*> lbu at,[01]\(at\)
-0+0100 <[^>]*> sll a0,a0,0x8
-0+0104 <[^>]*> or a0,a0,at
- ...