OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /open8_urisc
    from Rev 116 to Rev 117
    Reverse comparison

Rev 116 → Rev 117

/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-8-416.d
0,0 → 1,10
#name: C6X array attribute merging, 8 416
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-8.s
#source: attr-array-416.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-21.d
0,0 → 1,11
#name: C6X PID attribute merging, 2 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pid-2.s
#source: attr-pid-1.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_PID: Data addressing position-independent, GOT near DP
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-local-r-rel.d
0,0 → 1,23
#name: C6X MVK relocations, local symbols, -r, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -r -melf32_tic6x_le
#source: mvk-reloc-local-1-rel.s
#source: mvk-reloc-local-2-rel.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*0: R_C6000_ABS_S16[ \t]+\.data
[ \t]*4:[ \t]+01000228[ \t]+mvk \.S1 4,a2
[ \t]*4: R_C6000_ABS_L16[ \t]+\.data
[ \t]*\.\.\.
[ \t]*20:[ \t]+00800628[ \t]+mvk \.S1 12,a1
[ \t]*20: R_C6000_ABS_S16[ \t]+\.data
[ \t]*24:[ \t]+01000828[ \t]+mvk \.S1 16,a2
[ \t]*24: R_C6000_ABS_L16[ \t]+\.data
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/weak.s
0,0 → 1,19
.weak g
.weak g1
.text
b .s2 g
[a2] b .s2 g
b .s2 g
|| mvk .s1 0, a1
ldw .d2t2 *+B14(g1), B1
mvkl .s1 g, a1
mvkh .s1 g, a1
 
.section .data,"aw",@progbits
.align 2
.type a, @object
.size a, 4
a:
.long g1
.short g1
.byte g1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-8-816.d
0,0 → 1,10
#name: C6X array attribute merging, 8 816
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-8.s
#source: attr-array-816.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-48-48.d
0,0 → 1,11
#name: C6X array attribute merging, 48 48
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-48.s
#source: attr-array-48.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_align_expected: 4-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-abs-s16-2.d
0,0 → 1,5
#name: C6X relocation underflow, ABS_S16
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0xffff7fff
#source: reloc-overflow-abs-s16.s
#error: .*relocation truncated to fit: R_C6000_ABS_S16.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/ehtype-reloc-1-rel.d
0,0 → 1,14
#name: EHTYPE relocations (REL)
#as: -mlittle-endian -mgenerate-rel
#ld: -melf32_tic6x_le --defsym s1=0x2a -Tdsbt-inrange.ld
#source: ehtype-reloc-1.s
#objdump: -s -j.data -j.text -j.got
 
.*: *file format elf32-tic6x-le
 
Contents of section .data:
8018 78563412 .*
Contents of section .text:
10000000 08000000 0c000000 .*
Contents of section .got:
2001fff4 00000000 00000000 2a000000 18800000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x+-c64x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x+ c64x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x+.s
#source: attr-arch-c64x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C64x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-local-r.d
0,0 → 1,67
#name: C6X SB-relative relocations, local symbols, -r
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: sbr-reloc-local-1.s
#source: sbr-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
[ \t]*0: R_C6000_SBR_U15_W[ \t]+\.data
[ \t]*4:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
[ \t]*4: R_C6000_SBR_U15_W[ \t]+\.data\+0x4
[ \t]*8:[ \t]+0080004e[ \t]+ldh \.D2T2 \*\+b14\(0\),b1
[ \t]*8: R_C6000_SBR_U15_H[ \t]+\.data\+0x4
[ \t]*c:[ \t]+0080004e[ \t]+ldh \.D2T2 \*\+b14\(0\),b1
[ \t]*c: R_C6000_SBR_U15_H[ \t]+\.data\+0x6
[ \t]*10:[ \t]+0080002e[ \t]+ldb \.D2T2 \*\+b14\(0\),b1
[ \t]*10: R_C6000_SBR_U15_B[ \t]+\.data\+0x6
[ \t]*14:[ \t]+0080002e[ \t]+ldb \.D2T2 \*\+b14\(0\),b1
[ \t]*14: R_C6000_SBR_U15_B[ \t]+\.data\+0x7
[ \t]*18:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*18: R_C6000_SBR_S16[ \t]+\.data\+0x7
[ \t]*1c:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*1c: R_C6000_SBR_L16_B[ \t]+\.data\+0x6
[ \t]*20:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
[ \t]*20: R_C6000_SBR_H16_B[ \t]+\.data\+0x7
[ \t]*24:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*24: R_C6000_SBR_L16_H[ \t]+\.data\+0x4
[ \t]*28:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
[ \t]*28: R_C6000_SBR_H16_H[ \t]+\.data\+0x6
[ \t]*2c:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*2c: R_C6000_SBR_L16_W[ \t]+\.data
[ \t]*30:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
[ \t]*30: R_C6000_SBR_H16_W[ \t]+\.data\+0x4
[ \t]*\.\.\.
[ \t]*40:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
[ \t]*40: R_C6000_SBR_U15_W[ \t]+\.data\+0x8
[ \t]*44:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
[ \t]*44: R_C6000_SBR_U15_W[ \t]+\.data\+0xc
[ \t]*48:[ \t]+0080004e[ \t]+ldh \.D2T2 \*\+b14\(0\),b1
[ \t]*48: R_C6000_SBR_U15_H[ \t]+\.data\+0xc
[ \t]*4c:[ \t]+0080004e[ \t]+ldh \.D2T2 \*\+b14\(0\),b1
[ \t]*4c: R_C6000_SBR_U15_H[ \t]+\.data\+0xe
[ \t]*50:[ \t]+0080002e[ \t]+ldb \.D2T2 \*\+b14\(0\),b1
[ \t]*50: R_C6000_SBR_U15_B[ \t]+\.data\+0xe
[ \t]*54:[ \t]+0080002e[ \t]+ldb \.D2T2 \*\+b14\(0\),b1
[ \t]*54: R_C6000_SBR_U15_B[ \t]+\.data\+0xf
[ \t]*58:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*58: R_C6000_SBR_S16[ \t]+\.data\+0xf
[ \t]*5c:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*5c: R_C6000_SBR_L16_B[ \t]+\.data\+0xe
[ \t]*60:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
[ \t]*60: R_C6000_SBR_H16_B[ \t]+\.data\+0xf
[ \t]*64:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*64: R_C6000_SBR_L16_H[ \t]+\.data\+0xc
[ \t]*68:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
[ \t]*68: R_C6000_SBR_H16_H[ \t]+\.data\+0xe
[ \t]*6c:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*6c: R_C6000_SBR_L16_W[ \t]+\.data\+0x8
[ \t]*70:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
[ \t]*70: R_C6000_SBR_H16_W[ \t]+\.data\+0xc
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-16-416.d
0,0 → 1,12
#name: C6X array attribute merging, 16 416
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-16.s
#source: attr-array-416.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 16-byte
Tag_ABI_array_object_align_expected: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-dsbt-01.d
0,0 → 1,6
#name: C6X DSBT attribute merging, 0 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-dsbt-0.s
#source: attr-dsbt-1.s
#warning: .*differ in whether code is compiled for DSBT
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1.sd
0,0 → 1,7
 
tmpdir/libtest\.so: file format elf32-tic6x-le
 
Contents of section \.got:
[ \t]*10000100 00000000 00000000 00000000 00000000 .*
[ \t]*10000110 00000000 20000010 20000010 00000000 .*
[ \t]*10000120 30010010 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-local-rel.d
0,0 → 1,12
#name: C6X data relocations, local symbols, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -melf32_tic6x_le -Tgeneric.ld
#source: data-reloc-local-1.s
#source: data-reloc-local-2.s
#objdump: -r -s -j .data
 
.*: *file format elf32-tic6x-le
 
Contents of section \.data:
[ \t]*0080 80000000 84000000 8c000000 88000000 .*
[ \t]*0090 8c00888c .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-16-816.d
0,0 → 1,12
#name: C6X array attribute merging, 16 816
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-16.s
#source: attr-array-816.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 16-byte
Tag_ABI_array_object_align_expected: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/dsbt-inrange.ld
0,0 → 1,68
EXTERN (__c6xabi_DSBT_BASE);
SECTIONS
{
PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x0)); . = SEGMENT_START("text-segment", 0x0) + SIZEOF_HEADERS;
. = 0x8000;
.hash : { *(.hash) }
.gnu.hash : { *(.gnu.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
.gnu.version : { *(.gnu.version) }
.gnu.version_d : { *(.gnu.version_d) }
.gnu.version_r : { *(.gnu.version_r) }
.rel.init : { *(.rel.init) }
.rela.init : { *(.rela.init) }
.rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
.rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
.rel.fini : { *(.rel.fini) }
.rela.fini : { *(.rela.fini) }
.rel.const : { *(.rel.const .rel.const.* .rel.gnu.linkonce.r.*) }
.rela.const : { *(.rela.const .rela.const.* .rela.gnu.linkonce.r.*) }
.rel.rodata : { *(.rel.rodata .rel.rodata.*) }
.rela.rodata : { *(.rela.rodata .rela.rodata.*) }
.rel.data.rel.ro : { *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) }
.rela.data.rel.ro : { *(.rela.data.rel.ro* .rela.gnu.linkonce.d.rel.ro.*) }
.rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
.rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
.rel.fardata : { *(.rel.fardata .rel.fardata.*) }
.rela.fardata : { *(.rela.fardata .rela.fardata.*) }
.rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) }
.rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) }
.rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) }
.rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) }
.rel.ctors : { *(.rel.ctors) }
.rela.ctors : { *(.rela.ctors) }
.rel.dtors : { *(.rel.dtors) }
.rela.dtors : { *(.rela.dtors) }
.rel.got : { *(.rel.got) }
.rela.got : { *(.rela.got) }
.rel.neardata : { *(.rel.neardata .rel.neardata.* .rel.gnu.linkonce.s.*) }
.rela.neardata : { *(.rela.neardata .rela.neardata.* .rela.gnu.linkonce.s.*) }
.rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.sb.*) }
.rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.sb.*) }
.rel.neardata2 : { *(.rel.neardata2 .rel.neardata2.* .rel.gnu.linkonce.s2.*) }
.rela.neardata2 : { *(.rela.neardata2 .rela.neardata2.* .rela.gnu.linkonce.s2.*) }
.rel.bss2 : { *(.rel.bss2 .rel.bss2.* .rel.gnu.linkonce.sb2.*) }
.rela.bss2 : { *(.rela.bss2 .rela.bss2.* .rela.gnu.linkonce.sb2.*) }
.rel.far : { *(.rel.far .rel.far.* .rel.gnu.linkonce.b.*) }
.rela.far : { *(.rela.far .rela.far.* .rela.gnu.linkonce.b.*) }
.data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) }
.dynamic : { *(.dynamic) }
.data : { *(.data*) }
. = 0x10000000;
.rel.plt : { *(.rel.plt) }
.rela.plt : { *(.rela.plt) }
.plt : { *(.plt) }
.text : { *(.text*) }
. = 0x20000000;
PROVIDE_HIDDEN (__c6xabi_DSBT_BASE = .);
.dsbt : { *(.dsbt) }
. = 0x2001fff4;
.got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) }
.neardata : { *(.neardata .neardata.* .gnu.linkonce.s.*) }
.rodata : { *(.rodata .rodata.*) }
.bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.sb.*) *(.scommon) }
.far : { *(.dynfar) *(.far .far.* .gnu.linkonce.b.*) *(COMMON) }
.c6xabi.attributes 0 : { KEEP (*(.c6xabi.attributes)) KEEP (*(.gnu.attributes)) }
/DISCARD/ : { *(*) }
}
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-unknown-55-a.s
0,0 → 1,68
.c6xabi_attribute 55, "a"
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1.s
0,0 → 1,31
.global a
.text
.nocmp
fish:
ldw .d2t2 *+B14($DSBT_index(__c6xabi_DSBT_BASE)), B14
callp .s2 sub0, B3
b .s2 sub0
callp .s2 fish, B3
b .s2 fish
ldw .d2t2 *+B14(a), B4
ldw .d2t2 *+B14(b), B5
ldw .d2t2 *+B14($GOT(a)), B6
ldw .d2t2 *+B14($GOT(b)), B6
mvkl .s1 $DPR_GOT(a), A4
mvkh .s1 $DPR_GOT(a), A4
mvkl .s1 $DPR_GOT(b), A5
mvkh .s1 $DPR_GOT(b), A5
.global b
.section .neardata,"aw",@progbits
.align 2
.type b, @object
.size b, 4
b:
.long 0x12345678
.weak g1
.weak g2
.type w, @object
.size w, 8
w:
.long g1
.long g2
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-local-r.d
0,0 → 1,62
#name: C6X PC-relative relocations, local symbols, -r
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: pcrel-reloc-local-1.s
#source: pcrel-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+00000000[ \t]+nop 1
[ \t]*4:[ \t]+00800162[ \t]+addkpc \.S2 0 <[^>]*>,b1,0
[ \t]*4: R_C6000_PCR_S7[ \t]+\.text\.1
[ \t]*8:[ \t]+00800162[ \t]+addkpc \.S2 0 <[^>]*>,b1,0
[ \t]*8: R_C6000_PCR_S7[ \t]+\.text\.1\+0x4
[ \t]*c:[ \t]+00000012[ \t]+b \.S2 0 <[^>]*>
[ \t]*c: R_C6000_PCR_S21[ \t]+\.text\.1
[ \t]*10:[ \t]+00000012[ \t]+b \.S2 0 <[^>]*>
[ \t]*10: R_C6000_PCR_S21[ \t]+\.text\.1\+0x4
[ \t]*14:[ \t]+00801022[ \t]+bdec \.S2 0 <[^>]*>,b1
[ \t]*14: R_C6000_PCR_S10[ \t]+\.text\.1
[ \t]*18:[ \t]+00801022[ \t]+bdec \.S2 0 <[^>]*>,b1
[ \t]*18: R_C6000_PCR_S10[ \t]+\.text\.1\+0x4
[ \t]*1c:[ \t]+00000122[ \t]+bnop \.S2 0 <[^>]*>,0
[ \t]*1c: R_C6000_PCR_S12[ \t]+\.text\.1
[ \t]*20:[ \t]+00000122[ \t]+bnop \.S2 20 <[^>]*>,0
[ \t]*20: R_C6000_PCR_S12[ \t]+\.text\.1\+0x4
[ \t]*\.\.\.
[ \t]*44:[ \t]+00000122[ \t]+bnop \.S2 40 <[^>]*>,0
[ \t]*44: R_C6000_PCR_S12[ \t]+\.text\.1\+0x20
[ \t]*48:[ \t]+00000122[ \t]+bnop \.S2 40 <[^>]*>,0
[ \t]*48: R_C6000_PCR_S12[ \t]+\.text\.1\+0x24
[ \t]*4c:[ \t]+00801022[ \t]+bdec \.S2 40 <[^>]*>,b1
[ \t]*4c: R_C6000_PCR_S10[ \t]+\.text\.1\+0x20
[ \t]*50:[ \t]+00801022[ \t]+bdec \.S2 40 <[^>]*>,b1
[ \t]*50: R_C6000_PCR_S10[ \t]+\.text\.1\+0x24
[ \t]*54:[ \t]+00000012[ \t]+b \.S2 40 <[^>]*>
[ \t]*54: R_C6000_PCR_S21[ \t]+\.text\.1\+0x20
[ \t]*58:[ \t]+00000012[ \t]+b \.S2 40 <[^>]*>
[ \t]*58: R_C6000_PCR_S21[ \t]+\.text\.1\+0x24
[ \t]*5c:[ \t]+00800162[ \t]+addkpc \.S2 40 <[^>]*>,b1,0
[ \t]*5c: R_C6000_PCR_S7[ \t]+\.text\.1\+0x20
[ \t]*60:[ \t]+00800162[ \t]+addkpc \.S2 60 <[^>]*>,b1,0
[ \t]*60: R_C6000_PCR_S7[ \t]+\.text\.1\+0x24
[ \t]*\.\.\.
 
Disassembly of section \.text\.1:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+00000000[ \t]+nop 1
 
0+4 <[^>]*>:
[ \t]*\.\.\.
 
0+20 <[^>]*>:
[ \t]*20:[ \t]+00000000[ \t]+nop 1
 
0+24 <[^>]*>:
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-local.d
0,0 → 1,44
#name: C6X PC-relative relocations, local symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld
#source: pcrel-reloc-local-1.s
#source: pcrel-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+00000000[ \t]+nop 1
10000004:[ \t]+00900162[ \t]+addkpc \.S2 10000040 <[^>]*>,b1,0
10000008:[ \t]+00910162[ \t]+addkpc \.S2 10000044 <[^>]*>,b1,0
1000000c:[ \t]+00000812[ \t]+b \.S2 10000040 <[^>]*>
10000010:[ \t]+00000892[ \t]+b \.S2 10000044 <[^>]*>
10000014:[ \t]+00821022[ \t]+bdec \.S2 10000040 <[^>]*>,b1
10000018:[ \t]+00823022[ \t]+bdec \.S2 10000044 <[^>]*>,b1
1000001c:[ \t]+00100122[ \t]+bnop \.S2 10000040 <[^>]*>,0
10000020:[ \t]+00090122[ \t]+bnop \.S2 10000044 <[^>]*>,0
[ \t]*\.\.\.
 
10000040 <[^>]*>:
10000040:[ \t]+00000000[ \t]+nop 1
 
10000044 <[^>]*>:
[ \t]*\.\.\.
10000064:[ \t]+00100122[ \t]+bnop \.S2 100000a0 <[^>]*>,0
10000068:[ \t]+00110122[ \t]+bnop \.S2 100000a4 <[^>]*>,0
1000006c:[ \t]+00821022[ \t]+bdec \.S2 100000a0 <[^>]*>,b1
10000070:[ \t]+00823022[ \t]+bdec \.S2 100000a4 <[^>]*>,b1
10000074:[ \t]+00000812[ \t]+b \.S2 100000a0 <[^>]*>
10000078:[ \t]+00000892[ \t]+b \.S2 100000a4 <[^>]*>
1000007c:[ \t]+00900162[ \t]+addkpc \.S2 100000a0 <[^>]*>,b1,0
10000080:[ \t]+00890162[ \t]+addkpc \.S2 100000a4 <[^>]*>,b1,0
[ \t]*\.\.\.
 
100000a0 <[^>]*>:
100000a0:[ \t]+00000000[ \t]+nop 1
 
100000a4 <[^>]*>:
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pic-0.s
0,0 → 1,44
.c6xabi_attribute Tag_ABI_PIC, 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-11-11.d
0,0 → 1,11
#name: C6X conformance attribute merging, 11 11
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-conformance-11.s
#source: attr-conformance-11.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ABI_conformance: "1.1"
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1.dd
0,0 → 1,67
 
tmpdir/libtest\.so: file format elf32-tic6x-le
 
 
Disassembly of section \.plt:
 
10000020 <sub0@plt-0x18>:
10000020:[ \t]*0100036e[ \t]*ldw \.D2T2 \*\+b14\(12\),b2
10000024:[ \t]*0080046e[ \t]*ldw \.D2T2 \*\+b14\(16\),b1
10000028:[ \t]*00004000[ \t]*nop 3
1000002c:[ \t]*00080362[ \t]*b \.S2 b2
10000030:[ \t]*00008000[ \t]*nop 5
10000034:[ \t]*00000000[ \t]*nop 1
 
10000038 <sub0@plt>:
10000038:[ \t]*0100056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b2
1000003c:[ \t]*0000002a[ \t]*mvk \.S2 0,b0
10000040:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
10000044:[ \t]*00002000[ \t]*nop 2
10000048:[ \t]*00080362[ \t]*b \.S2 b2
1000004c:[ \t]*00008000[ \t]*nop 5
 
10000050 <sub@plt>:
10000050:[ \t]*0100066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b2
10000054:[ \t]*0000062a[ \t]*mvk \.S2 12,b0
10000058:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
1000005c:[ \t]*00002000[ \t]*nop 2
10000060:[ \t]*00080362[ \t]*b \.S2 b2
10000064:[ \t]*00008000[ \t]*nop 5
\.\.\.
 
Disassembly of section \.text:
 
10000080 <sub1>:
10000080:[ \t]*000c0362[ \t]*b \.S2 b3
10000084:[ \t]*00008000[ \t]*nop 5
 
10000088 <sub0>:
10000088:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
1000008c:[ \t]*01bc62f6[ \t]*stw \.D2T2 b3,\*\+b15\(12\)
10000090:[ \t]*073c82f6[ \t]*stw \.D2T2 b14,\*\+b15\(16\)
10000094:[ \t]*0700026e[ \t]*ldw \.D2T2 \*\+b14\(8\),b14
10000098:[ \t]*0ffffa12[ \t]*b \.S2 10000050 <sub@plt>
1000009c:[ \t]*0ffff712[ \t]*b \.S2 10000038 <sub0@plt>
100000a0:[ \t]*0ffffc12[ \t]*b \.S2 10000080 <sub1>
100000a4:[ \t]*01bc62e6[ \t]*ldw \.D2T2 \*\+b15\(12\),b3
100000a8:[ \t]*073c82e6[ \t]*ldw \.D2T2 \*\+b15\(16\),b14
100000ac:[ \t]*07800852[ \t]*addk \.S2 16,b15
100000b0:[ \t]*00004000[ \t]*nop 3
100000b4:[ \t]*000c0362[ \t]*b \.S2 b3
100000b8:[ \t]*00008000[ \t]*nop 5
100000bc:[ \t]*00000000[ \t]*nop 1
 
100000c0 <sub>:
100000c0:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
100000c4:[ \t]*023c62f4[ \t]*stw \.D2T1 a4,\*\+b15\(12\)
100000c8:[ \t]*003c62e4[ \t]*ldw \.D2T1 \*\+b15\(12\),a0
100000cc:[ \t]*00006000[ \t]*nop 4
100000d0:[ \t]*00014940[ \t]*add \.D1 a0,10,a0
100000d4:[ \t]*020008f0[ \t]*or \.D1 0,a0,a4
100000d8:[ \t]*07be0942[ \t]*add \.D2 b15,16,b15
100000dc:[ \t]*000c0362[ \t]*b \.S2 b3
100000e0:[ \t]*0300096e[ \t]*ldw \.D2T2 \*\+b14\(36\),b6
100000e4:[ \t]*0380076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b7
100000e8:[ \t]*0400086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b8
100000ec:[ \t]*04800c6e[ \t]*ldw \.D2T2 \*\+b14\(48\),b9
\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-3.d
0,0 → 1,11
#ld: -T unwind.ld
#objdump: -s
 
.*: file format.*
 
#...
Contents of section .c6xabi.exidx:
9000 (00f8ff7f 07020083 1cf8ff7f 01000000|7ffff800 83000207 7ffff81c 00000001) .*
9010 (38f8ff7f 07040083 54f8ff7f 01000000|7ffff838 82000407 7ffff854 00000001) .*
Contents of section .far:
#...
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-unknown-6.d
0,0 → 1,11
#name: C6X unknown attribute merging 6
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-unknown-1000-1.s
#source: attr-unknown-1000-2.s
#warning: .*warning: unknown EABI object attribute 1000
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-4-16.d
0,0 → 1,6
#name: C6X array attribute merging, 4 16
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-4.s
#source: attr-array-16.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-816-16.d
0,0 → 1,12
#name: C6X stack attribute merging, 816 16
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-stack-816.s
#source: attr-stack-16.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_stack_align_needed: 16-byte
Tag_ABI_stack_align_preserved: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-dsbt-10.d
0,0 → 1,6
#name: C6X DSBT attribute merging, 1 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-dsbt-1.s
#source: attr-dsbt-0.s
#warning: .*differ in whether code is compiled for DSBT
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-3.s
0,0 → 1,39
.cfi_sections .c6xabi.exidx
.text
# section without unwind info
.global _start
.type _start, %function
_start:
b .s2 _before
nop 5
.p2align 6
 
# Section that will be placed first
.section .before, "xa"
.type _before, %function
_before:
.cfi_startproc
.cfi_offset B3, 0
.cfi_def_cfa_offset 8
nop
.p2align 6
.cfi_endproc
.personalityindex 3
.endp
 
# section that will be placed last
.section .after, "xa"
.global __c6xabi_unwind_cpp_pr3
.type __c6xabi_unwind_cpp_pr3, %function
__c6xabi_unwind_cpp_pr3:
.cfi_startproc
.cfi_offset B10, 0
.cfi_def_cfa_offset 8
nop
.p2align 6
.cfi_endproc
.personalityindex 3
.endp
 
.section .far
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-u15-w.s
0,0 → 1,3
.text
.nocmp
ldw .D2T2 *+b14(s),b1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-48-416.d
0,0 → 1,11
#name: C6X array attribute merging, 48 416
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-48.s
#source: attr-array-416.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_align_expected: 4-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-global-rel.d
0,0 → 1,11
#name: C6X data relocations, global symbols, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s0=0 --defsym sff=0xff --defsym sffff=0xffff --defsym s80000000=0x80000000 --defsym sffff8000=0xffff8000 --defsym sffffff80=0xffffff80 --defsym sffffffff=0xffffffff
#source: data-reloc-global-rel.s
#objdump: -r -s -j .data
 
.*: *file format elf32-tic6x-le
 
Contents of section \.data:
[ \t]*0080 00000080 ffffffff 00000000 feffffff \.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.
[ \t]*0090 00000000 ffffffff 00800080 ffff8080 \.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-48-816.d
0,0 → 1,10
#name: C6X array attribute merging, 48 816
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-48.s
#source: attr-array-816.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-816-48.d
0,0 → 1,10
#name: C6X array attribute merging, 816 48
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-816.s
#source: attr-array-48.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-pcr-s7.s
0,0 → 1,3
.text
.nocmp
addkpc .S2 s,b1,0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1.rd
0,0 → 1,127
There are 18 section headers, starting at offset 0x2168:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 000044 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 00008044 001044 0000c0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 00008104 001104 000035 00 A 0 0 1
\[ 4\] \.rela\.got RELA 0000813c 00113c 000018 0c A 2 11 4
\[ 5\] \.rela\.neardata RELA 00008154 001154 000018 0c A 2 12 4
\[ 6\] \.rela\.bss RELA 0000816c 00116c 00000c 0c A 2 13 4
\[ 7\] \.dynamic DYNAMIC 00008178 001178 0000b8 08 WA 3 0 4
\[ 8\] \.rela\.plt RELA 10000000 002000 00000c 0c A 2 9 4
\[ 9\] \.plt PROGBITS 10000020 002020 000040 18 AX 0 0 32
\[10\] \.text PROGBITS 10000060 002060 000040 00 AX 0 0 32
\[11\] \.got PROGBITS 100000a0 0020a0 000020 00 WA 0 0 4
\[12\] \.neardata PROGBITS 100000c0 0020c0 00000c 00 WA 0 0 4
\[13\] \.bss NOBITS 100000cc 0020cc 000004 00 WA 0 0 4
\[14\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020cc 000019 00 0 0 1
\[15\] \.shstrtab STRTAB 00000000 0020e5 000080 00 0 0 1
\[16\] \.symtab SYMTAB 00000000 002438 0001a0 10 17 20 4
\[17\] \.strtab STRTAB 00000000 0025d8 000055 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is EXEC \(Executable file\)
Entry point 0x10000060
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x00230 0x00230 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x000cc 0x000d0 RWE 0x1000
DYNAMIC 0x001178 0x00008178 0x00008178 0x000b8 0x000b8 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.rela\.bss \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x1178 contains 18 entries:
Tag Type Name/Value
0x00000001 \(NEEDED\) Shared library: \[tmpdir/libtest\.so\]
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x8104
0x00000006 \(SYMTAB\) 0x8044
0x0000000a \(STRSZ\) 53 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000015 \(DEBUG\) 0x0
0x70000000 \(C6000_DSBT_BASE\) 0x100000a0
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x0
0x00000003 \(PLTGOT\) 0x100000ac
0x00000002 \(PLTRELSZ\) 12 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x813c
0x00000008 \(RELASZ\) 72 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x113c contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000b8 00000701 R_C6000_ABS32 100000c0 b \+ 0
100000bc 00000b01 R_C6000_ABS32 100000cc a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1154 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000c4 00000801 R_C6000_ABS32 00000000 g1 \+ 0
100000c8 00000901 R_C6000_ABS32 00000000 g2 \+ 0
 
Relocation section '\.rela\.bss' at offset 0x116c contains 1 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000cc 00000b1a R_C6000_COPY 100000cc a \+ 0
 
Relocation section '\.rela\.plt' at offset 0x2000 contains 1 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000b4 00000a1b R_C6000_JUMP_SLOT 00000000 sub0 \+ 0
 
Symbol table '\.dynsym' contains 12 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 9
2: 10000060 0 SECTION LOCAL DEFAULT 10
3: 100000a0 0 SECTION LOCAL DEFAULT 11
4: 100000c0 0 SECTION LOCAL DEFAULT 12
5: 100000cc 0 SECTION LOCAL DEFAULT 13
6: 100000a0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 100000c0 4 OBJECT GLOBAL DEFAULT 12 b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 00000000 0 OBJECT WEAK DEFAULT UND g2
10: 00000000 0 FUNC GLOBAL DEFAULT UND sub0
11: 100000cc 4 OBJECT GLOBAL DEFAULT 13 a
 
Symbol table '\.symtab' contains 26 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 00008044 0 SECTION LOCAL DEFAULT 2
3: 00008104 0 SECTION LOCAL DEFAULT 3
4: 0000813c 0 SECTION LOCAL DEFAULT 4
5: 00008154 0 SECTION LOCAL DEFAULT 5
6: 0000816c 0 SECTION LOCAL DEFAULT 6
7: 00008178 0 SECTION LOCAL DEFAULT 7
8: 10000000 0 SECTION LOCAL DEFAULT 8
9: 10000020 0 SECTION LOCAL DEFAULT 9
10: 10000060 0 SECTION LOCAL DEFAULT 10
11: 100000a0 0 SECTION LOCAL DEFAULT 11
12: 100000c0 0 SECTION LOCAL DEFAULT 12
13: 100000cc 0 SECTION LOCAL DEFAULT 13
14: 00000000 0 SECTION LOCAL DEFAULT 14
15: 10000060 0 NOTYPE LOCAL DEFAULT 10 fish
16: 100000c4 8 OBJECT LOCAL DEFAULT 12 w
17: 00008178 0 OBJECT LOCAL DEFAULT 7 _DYNAMIC
18: 100000ac 0 OBJECT LOCAL DEFAULT 11 _GLOBAL_OFFSET_TABLE_
19: 100000a0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
20: 100000c0 4 OBJECT GLOBAL DEFAULT 12 b
21: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
22: 00000000 0 NOTYPE WEAK DEFAULT UND g1
23: 00000000 0 OBJECT WEAK DEFAULT UND g2
24: 00000000 0 FUNC GLOBAL DEFAULT UND sub0
25: 100000cc 4 OBJECT GLOBAL DEFAULT 13 a
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-local-1.s
0,0 → 1,8
.text
.nocmp
ldw .d2t2 *+B14($DSBT_index(__c6xabi_DSBT_BASE)), B14
ldw .d2t1 *+B14($GOT(a)), A1
 
.data
a:
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-22.d
0,0 → 1,11
#name: C6X PID attribute merging, 2 2
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pid-2.s
#source: attr-pid-2.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_PID: Data addressing position-independent, GOT far from DP
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-4.s
0,0 → 1,2
.c6xabi_attribute Tag_ABI_array_object_align_expected, 1
.c6xabi_attribute Tag_ABI_array_object_alignment, 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-global-rel.s
0,0 → 1,21
.globl s0
.globl sff
.globl sffff
.globl s80000000
.globl sffff8000
.globl sffffff80
.globl sffffffff
.data
.word s80000000
.word sffffffff
.word s0
.word sffffffff+0xffffffff
.word s80000000+0x80000000
.short sffffffff
.short sffff
.short sffff8000
.short s0-0x8000
.byte sffffffff
.byte sff
.byte sffffff80
.byte s0-0x80
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1rb.rd
0,0 → 1,115
There are 17 section headers, starting at offset 0x2158:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 00003c 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 0000803c 00103c 0000a0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 000080dc 0010dc 000031 00 A 0 0 1
\[ 4\] \.rela\.got RELA 00008110 001110 000018 0c A 2 10 4
\[ 5\] \.rela\.bss RELA 00008128 001128 00000c 0c A 2 12 4
\[ 6\] \.dynamic DYNAMIC 00008134 001134 0000b8 08 WA 3 0 4
\[ 7\] \.rela\.plt RELA 10000000 002000 00000c 0c A 2 8 4
\[ 8\] \.plt PROGBITS 10000020 002020 000040 18 AX 0 0 32
\[ 9\] \.text PROGBITS 10000060 002060 000040 00 AX 0 0 32
\[10\] \.got PROGBITS 100000a0 0020a0 000020 00 WA 0 0 4
\[11\] \.neardata PROGBITS 100000c0 0020c0 000004 00 WA 0 0 4
\[12\] \.bss NOBITS 100000c4 0020c4 000004 00 WA 0 0 4
\[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020c4 000019 00 0 0 1
\[14\] \.shstrtab STRTAB 00000000 0020dd 00007b 00 0 0 1
\[15\] \.symtab SYMTAB 00000000 002400 000160 10 16 18 4
\[16\] \.strtab STRTAB 00000000 002560 00004d 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is EXEC \(Executable file\)
Entry point 0x10000060
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x001ec 0x001ec RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x000c4 0x000c8 RWE 0x1000
DYNAMIC 0x001134 0x00008134 0x00008134 0x000b8 0x000b8 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.bss \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x1134 contains 18 entries:
Tag Type Name/Value
0x00000001 \(NEEDED\) Shared library: \[tmpdir/libtestrb\.so\]
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x80dc
0x00000006 \(SYMTAB\) 0x803c
0x0000000a \(STRSZ\) 49 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000015 \(DEBUG\) 0x0
0x70000000 \(C6000_DSBT_BASE\) 0x100000a0
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x0
0x00000003 \(PLTGOT\) 0x100000ac
0x00000002 \(PLTRELSZ\) 12 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x8110
0x00000008 \(RELASZ\) 48 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x1110 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000b8 00000701 R_C6000_ABS32 100000c0 b \+ 0
100000bc 00000901 R_C6000_ABS32 100000c4 a \+ 0
 
Relocation section '\.rela\.bss' at offset 0x1128 contains 1 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000c4 0000091a R_C6000_COPY 100000c4 a \+ 0
 
Relocation section '\.rela\.plt' at offset 0x2000 contains 1 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000b4 0000081b R_C6000_JUMP_SLOT 00000000 sub0 \+ 0
 
Symbol table '\.dynsym' contains 10 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 8
2: 10000060 0 SECTION LOCAL DEFAULT 9
3: 100000a0 0 SECTION LOCAL DEFAULT 10
4: 100000c0 0 SECTION LOCAL DEFAULT 11
5: 100000c4 0 SECTION LOCAL DEFAULT 12
6: 100000a0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 100000c0 4 OBJECT GLOBAL DEFAULT 11 b
8: 00000000 0 FUNC GLOBAL DEFAULT UND sub0
9: 100000c4 4 OBJECT GLOBAL DEFAULT 12 a
 
Symbol table '\.symtab' contains 22 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 0000803c 0 SECTION LOCAL DEFAULT 2
3: 000080dc 0 SECTION LOCAL DEFAULT 3
4: 00008110 0 SECTION LOCAL DEFAULT 4
5: 00008128 0 SECTION LOCAL DEFAULT 5
6: 00008134 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 10000020 0 SECTION LOCAL DEFAULT 8
9: 10000060 0 SECTION LOCAL DEFAULT 9
10: 100000a0 0 SECTION LOCAL DEFAULT 10
11: 100000c0 0 SECTION LOCAL DEFAULT 11
12: 100000c4 0 SECTION LOCAL DEFAULT 12
13: 00000000 0 SECTION LOCAL DEFAULT 13
14: 10000060 0 NOTYPE LOCAL DEFAULT 9 fish
15: 00008134 0 OBJECT LOCAL DEFAULT 6 _DYNAMIC
16: 100000ac 0 OBJECT LOCAL DEFAULT 10 _GLOBAL_OFFSET_TABLE_
17: 100000a0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
18: 100000c0 4 OBJECT GLOBAL DEFAULT 11 b
19: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
20: 00000000 0 FUNC GLOBAL DEFAULT UND sub0
21: 100000c4 4 OBJECT GLOBAL DEFAULT 12 a
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-8-48.d
0,0 → 1,10
#name: C6X array attribute merging, 8 48
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-8.s
#source: attr-array-48.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c674x-c64x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c674x c64x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c674x.s
#source: attr-arch-c64x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-abs8-1.d
0,0 → 1,5
#name: C6X relocation overflow, ABS8
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x100
#source: reloc-overflow-abs8.s
#error: .*relocation truncated to fit: R_C6000_ABS8.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pic-00.d
0,0 → 1,10
#name: C6X PIC attribute merging, 0 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pic-0.s
#source: attr-pic-0.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pic-1.s
0,0 → 1,10
.c6xabi_attribute Tag_ABI_PIC, 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1.sd
0,0 → 1,6
 
tmpdir/shlib-dynapp-1: file format elf32-tic6x-le
 
Contents of section \.got:
[ \t]*100000a0 00000000 00000000 00000000 00000000 .*
[ \t]*100000b0 00000000 20000010 00000000 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-48-16.d
0,0 → 1,6
#name: C6X array attribute merging, 48 16
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-48.s
#source: attr-array-16.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-u15-h.s
0,0 → 1,3
.text
.nocmp
ldh .D2T2 *+b14(s),b1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-4.d
0,0 → 1,11
#ld: -T unwind.ld
#objdump: -s
 
.*: file format.*
 
#...
Contents of section .c6xabi.exidx:
9000 (00f8ff7f 07020083 1cf8ff7f 7af8ff7f|7ffff800 83000207 7ffff81c 7ffff87a) .*
9010 (38f8ff7f 07020083 56f8ff7f 01000000|7ffff838 83000207 7ffff856 00000001) .*
Contents of section .far:
#...
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1rb.od
0,0 → 1,12
 
tmpdir/static-app-1rb: file format elf32-tic6x-be
 
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
100000d8 R_C6000_ABS32 \.bss
100000d4 R_C6000_ABS32 b
100000dc R_C6000_ABS32 a
100000e0 R_C6000_ABS32 \.text\+0x00000008
100000e4 R_C6000_ABS32 g1
 
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-unknown-7.d
0,0 → 1,6
#name: C6X unknown attribute merging 7
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-unknown-1024-1.s
#source: attr-unknown-1024-1.s
#error: .*error: unknown mandatory EABI object attribute 1024
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/weak-be.d
0,0 → 1,19
#name: C6X relocs to weak symbols, big endian
#as: -mbig-endian
#ld: -melf32_tic6x_be -Tsbr.ld
#source: weak.s
#objdump: -dr
 
.*: *file format elf32-tic6x-be
 
 
Disassembly of section \.text:
10000000 <[^>]*>:
10000000:[ \t]+000c0362[ \t]+b \.S2 b3
10000004:[ \t]+a00c0362[ \t]+\[a2\] b \.S2 b3
10000008:[ \t]+000c0363[ \t]+b \.S2 b3
1000000c:[ \t]+00800028[ \t]+\|\| mvk \.S1 0,a1
10000010:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
10000014:[ \t]+00800028[ \t]+mvk \.S1 0,a1
10000018:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
1000001c:[ \t]+00000000[ \t]+nop 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-10-none.d
0,0 → 1,10
#name: C6X conformance attribute merging, 10 none
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-conformance-10.s
#source: attr-conformance-none.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1.dd
0,0 → 1,40
 
tmpdir/shlib-dynapp-1: file format elf32-tic6x-le
 
 
Disassembly of section \.plt:
 
10000020 <sub0@plt-0x18>:
10000020:[ \t]*0100036e[ \t]*ldw \.D2T2 \*\+b14\(12\),b2
10000024:[ \t]*0080046e[ \t]*ldw \.D2T2 \*\+b14\(16\),b1
10000028:[ \t]*00004000[ \t]*nop 3
1000002c:[ \t]*00080362[ \t]*b \.S2 b2
10000030:[ \t]*00008000[ \t]*nop 5
10000034:[ \t]*00000000[ \t]*nop 1
 
10000038 <sub0@plt>:
10000038:[ \t]*0100056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b2
1000003c:[ \t]*0000002a[ \t]*mvk \.S2 0,b0
10000040:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
10000044:[ \t]*00002000[ \t]*nop 2
10000048:[ \t]*00080362[ \t]*b \.S2 b2
1000004c:[ \t]*00008000[ \t]*nop 5
[ \t]*\.\.\.
 
Disassembly of section \.text:
 
10000060 <fish>:
10000060:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000064:[ \t]*1ffffb12[ \t]*callp \.S2 10000038 <sub0@plt>,b3
10000068:[ \t]*0ffffb12[ \t]*b \.S2 10000038 <sub0@plt>
1000006c:[ \t]*10000012[ \t]*callp \.S2 10000060 <fish>,b3
10000070:[ \t]*00000012[ \t]*b \.S2 10000060 <fish>
10000074:[ \t]*02000b6e[ \t]*ldw \.D2T2 \*\+b14\(44\),b4
10000078:[ \t]*0280086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b5
1000007c:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
10000080:[ \t]*0300066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b6
10000084:[ \t]*020003a8[ \t]*mvk \.S1 7,a4
10000088:[ \t]*02000068[ \t]*mvkh \.S1 0,a4
1000008c:[ \t]*02800328[ \t]*mvk \.S1 6,a5
10000090:[ \t]*02800068[ \t]*mvkh \.S1 0,a5
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c674x-c67x.d
0,0 → 1,10
#name: C6X arch attribute merging, c674x c67x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c674x.s
#source: attr-arch-c67x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-dsbt-11.d
0,0 → 1,11
#name: C6X DSBT attribute merging, 1 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-dsbt-1.s
#source: attr-dsbt-1.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_DSBT: DSBT addressing used
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1rb.sd
0,0 → 1,6
 
tmpdir/shlib-dynapp-1rb: file format elf32-tic6x-be
 
Contents of section \.got:
[ \t]*100000a0 00000000 00000000 00000000 00000000 .*
[ \t]*100000b0 00000000 10000020 00000000 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1b.od
0,0 → 1,14
 
tmpdir/static-app-1b: file format elf32-tic6x-be
 
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
100000d8 R_C6000_ABS32 \.bss
100000d4 R_C6000_ABS32 b
100000dc R_C6000_ABS32 a
100000e0 R_C6000_ABS32 \.text\+0x00000008
100000e4 R_C6000_ABS32 g1
100000ec R_C6000_ABS32 g1
100000f0 R_C6000_ABS32 \.neardata\+0x00000004
 
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-4.s
0,0 → 1,68
.cfi_sections .c6xabi.exidx
.text
# out of line table entry
.global _start
.type _start, %function
_start:
.cfi_startproc
.cfi_offset B3, 0
.cfi_def_cfa_offset 8
nop
.p2align 6
.cfi_endproc
.personalityindex 3
.handlerdata
.word 0
.endp
 
# entry that can be merged
.cfi_startproc
.cfi_offset B3, 0
.cfi_def_cfa_offset 8
nop
.p2align 6
.cfi_endproc
.personalityindex 3
.endp
 
# Section that will be placed first
.section .before, "xa"
.type _before, %function
_before:
.cfi_startproc
.cfi_offset B3, 0
.cfi_def_cfa_offset 8
nop
.p2align 6
.cfi_endproc
.personalityindex 3
.endp
 
# section that will be placed last
.section .after, "xa"
.global __c6xabi_unwind_cpp_pr3
.type __c6xabi_unwind_cpp_pr3, %function
__c6xabi_unwind_cpp_pr3:
# entry that can be merged
.cfi_startproc
.cfi_offset B3, 0
.cfi_def_cfa_offset 8
nop
.cfi_endproc
.personalityindex 3
.endp
 
# final function is cantunwind, so output table size is smaller
# than sum of input sections
.global foo
.type foo, %function
foo:
.cfi_startproc
nop
.p2align 6
.cfi_endproc
.cantunwind
.endp
 
.section .far
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-8-8.d
0,0 → 1,10
#name: C6X stack attribute merging, 8 8
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-stack-8.s
#source: attr-stack-8.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/common.d
0,0 → 1,28
#name: C6X common symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tcommon.ld
#source: common.s
#readelf: -Ss
 
There are 6 section headers, starting at offset 0x7c:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.far NOBITS 00000080 000080 000008 00 WA 0 0 4
\[ 2\] \.bss NOBITS 00000100 000080 000004 00 WA 0 0 4
\[ 3\] \.shstrtab STRTAB 00000000 000054 000025 00 0 0 1
\[ 4\] \.symtab SYMTAB 00000000 00016c 000050 10 5 3 4
\[ 5\] \.strtab STRTAB 00000000 0001bc 000005 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Symbol table '\.symtab' contains 5 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000080 0 SECTION LOCAL DEFAULT 1
2: 00000100 0 SECTION LOCAL DEFAULT 2
3: 00000100 4 OBJECT GLOBAL DEFAULT 2 x
4: 00000080 8 OBJECT GLOBAL DEFAULT 1 y
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-4-4.d
0,0 → 1,12
#name: C6X array attribute merging, 4 4
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-4.s
#source: attr-array-4.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 4-byte
Tag_ABI_array_object_align_expected: 4-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-00.d
0,0 → 1,10
#name: C6X wchar_t attribute merging, 0 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-wchar-0.s
#source: attr-wchar-0.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-8-4.d
0,0 → 1,6
#name: C6X array attribute merging, 8 4
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-8.s
#source: attr-array-4.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-local-r-rel-rela.d
0,0 → 1,62
#name: C6X PC-relative relocations, local symbols, -r, mixed link of REL/RELA
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: pcrel-reloc-local-1.s -mgenerate-rel
#source: pcrel-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+00000000[ \t]+nop 1
[ \t]*4:[ \t]+00800162[ \t]+addkpc \.S2 0 <[^>]*>,b1,0
[ \t]*4: R_C6000_PCR_S7[ \t]+\.text\.1
[ \t]*8:[ \t]+00810162[ \t]+addkpc \.S2 4 <[^>]*>,b1,0
[ \t]*8: R_C6000_PCR_S7[ \t]+\.text\.1
[ \t]*c:[ \t]+00000012[ \t]+b \.S2 0 <[^>]*>
[ \t]*c: R_C6000_PCR_S21[ \t]+\.text\.1
[ \t]*10:[ \t]+00000092[ \t]+b \.S2 4 <[^>]*>
[ \t]*10: R_C6000_PCR_S21[ \t]+\.text\.1
[ \t]*14:[ \t]+00801022[ \t]+bdec \.S2 0 <[^>]*>,b1
[ \t]*14: R_C6000_PCR_S10[ \t]+\.text\.1
[ \t]*18:[ \t]+00803022[ \t]+bdec \.S2 4 <[^>]*>,b1
[ \t]*18: R_C6000_PCR_S10[ \t]+\.text\.1
[ \t]*1c:[ \t]+00000122[ \t]+bnop \.S2 0 <[^>]*>,0
[ \t]*1c: R_C6000_PCR_S12[ \t]+\.text\.1
[ \t]*20:[ \t]+00010122[ \t]+bnop \.S2 24 <[^>]*>,0
[ \t]*20: R_C6000_PCR_S12[ \t]+\.text\.1
[ \t]*\.\.\.
[ \t]*44:[ \t]+00000122[ \t]+bnop \.S2 40 <[^>]*>,0
[ \t]*44: R_C6000_PCR_S12[ \t]+\.text\.1\+0x20
[ \t]*48:[ \t]+00000122[ \t]+bnop \.S2 40 <[^>]*>,0
[ \t]*48: R_C6000_PCR_S12[ \t]+\.text\.1\+0x24
[ \t]*4c:[ \t]+00801022[ \t]+bdec \.S2 40 <[^>]*>,b1
[ \t]*4c: R_C6000_PCR_S10[ \t]+\.text\.1\+0x20
[ \t]*50:[ \t]+00801022[ \t]+bdec \.S2 40 <[^>]*>,b1
[ \t]*50: R_C6000_PCR_S10[ \t]+\.text\.1\+0x24
[ \t]*54:[ \t]+00000012[ \t]+b \.S2 40 <[^>]*>
[ \t]*54: R_C6000_PCR_S21[ \t]+\.text\.1\+0x20
[ \t]*58:[ \t]+00000012[ \t]+b \.S2 40 <[^>]*>
[ \t]*58: R_C6000_PCR_S21[ \t]+\.text\.1\+0x24
[ \t]*5c:[ \t]+00800162[ \t]+addkpc \.S2 40 <[^>]*>,b1,0
[ \t]*5c: R_C6000_PCR_S7[ \t]+\.text\.1\+0x20
[ \t]*60:[ \t]+00800162[ \t]+addkpc \.S2 60 <[^>]*>,b1,0
[ \t]*60: R_C6000_PCR_S7[ \t]+\.text\.1\+0x24
[ \t]*\.\.\.
 
Disassembly of section \.text\.1:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+00000000[ \t]+nop 1
 
0+4 <[^>]*>:
[ \t]*\.\.\.
 
0+20 <[^>]*>:
[ \t]*20:[ \t]+00000000[ \t]+nop 1
 
0+24 <[^>]*>:
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-416-4.d
0,0 → 1,12
#name: C6X array attribute merging, 416 4
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-416.s
#source: attr-array-4.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 4-byte
Tag_ABI_array_object_align_expected: 4-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-local-2.s
0,0 → 1,8
.text
.nocmp
ldw .d2t2 *+B14($DSBT_index(__c6xabi_DSBT_BASE)), B14
ldw .d2t1 *+B14($GOT(b)), A1
 
.data
b:
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/dsbt-index.d
0,0 → 1,14
#name: C6X DSBT_INDEX reloc
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --dsbt-index 5
#source: dsbt-index.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+0700056e[ \t]+ldw \.D2T2 \*\+b14\(20\),b14
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-8.s
0,0 → 1,2
.c6xabi_attribute Tag_ABI_stack_align_needed, 0
.c6xabi_attribute Tag_ABI_stack_align_preserved, 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-16-48.d
0,0 → 1,6
#name: C6X array attribute merging, 16 48
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-16.s
#source: attr-array-48.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x+-c64x.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x+ c64x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x+.s
#source: attr-arch-c64x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C64x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1r.od
0,0 → 1,12
 
tmpdir/static-app-1r: file format elf32-tic6x-le
 
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
100000d8 R_C6000_ABS32 \.bss
100000d4 R_C6000_ABS32 b
100000dc R_C6000_ABS32 a
100000e0 R_C6000_ABS32 \.text\+0x00000008
100000e4 R_C6000_ABS32 g1
 
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1rb.rd
0,0 → 1,123
There are 17 section headers, starting at offset 0x21c4:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 000048 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 00008048 001048 0000d0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 00008118 001118 000025 00 A 0 0 1
\[ 4\] \.rela\.got RELA 00008140 001140 000024 0c A 2 10 4
\[ 5\] \.rela\.neardata RELA 00008164 001164 000018 0c A 2 11 4
\[ 6\] \.dynamic DYNAMIC 0000817c 00117c 0000a8 08 WA 3 0 4
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c A 2 8 4
\[ 8\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
\[ 9\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
\[10\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
\[11\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4
\[12\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4
\[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1
\[14\] \.shstrtab STRTAB 00000000 002149 00007b 00 0 0 1
\[15\] \.symtab SYMTAB 00000000 00246c 0001a0 10 16 19 4
\[16\] \.strtab STRTAB 00000000 00260c 000059 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is DYN \(Shared object file\)
Entry point 0x10000080
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x00224 0x00224 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x00130 0x00134 RWE 0x1000
DYNAMIC 0x00117c 0x0000817c 0x0000817c 0x000a8 0x000a8 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x117c contains 16 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x8118
0x00000006 \(SYMTAB\) 0x8048
0x0000000a \(STRSZ\) 37 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x70000000 \(C6000_DSBT_BASE\) 0x10000100
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x2
0x00000003 \(PLTGOT\) 0x1000010c
0x00000002 \(PLTRELSZ\) 24 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x8140
0x00000008 \(RELASZ\) 84 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x1140 contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000120 00000501 R_C6000_ABS32 10000130 \.bss \+ 0
1000011c 00000701 R_C6000_ABS32 00000000 b \+ 0
10000124 00000b01 R_C6000_ABS32 10000128 a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1164 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000128 00000a01 R_C6000_ABS32 10000088 sub0 \+ 0
1000012c 00000801 R_C6000_ABS32 00000000 g1 \+ 0
 
Relocation section '\.rela\.plt' at offset 0x2000 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000114 00000a1b R_C6000_JUMP_SLOT 10000088 sub0 \+ 0
10000118 00000c1b R_C6000_JUMP_SLOT 100000c0 sub \+ 0
 
Symbol table '\.dynsym' contains 13 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 8
2: 10000080 0 SECTION LOCAL DEFAULT 9
3: 10000100 0 SECTION LOCAL DEFAULT 10
4: 10000128 0 SECTION LOCAL DEFAULT 11
5: 10000130 0 SECTION LOCAL DEFAULT 12
6: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 00000000 0 NOTYPE WEAK DEFAULT UND b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
10: 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
11: 10000128 4 OBJECT GLOBAL DEFAULT 11 a
12: 100000c0 52 FUNC GLOBAL DEFAULT 9 sub
 
Symbol table '\.symtab' contains 26 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 00008048 0 SECTION LOCAL DEFAULT 2
3: 00008118 0 SECTION LOCAL DEFAULT 3
4: 00008140 0 SECTION LOCAL DEFAULT 4
5: 00008164 0 SECTION LOCAL DEFAULT 5
6: 0000817c 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 10000020 0 SECTION LOCAL DEFAULT 8
9: 10000080 0 SECTION LOCAL DEFAULT 9
10: 10000100 0 SECTION LOCAL DEFAULT 10
11: 10000128 0 SECTION LOCAL DEFAULT 11
12: 10000130 0 SECTION LOCAL DEFAULT 12
13: 00000000 0 SECTION LOCAL DEFAULT 13
14: 10000080 0 FUNC LOCAL HIDDEN 9 sub1
15: 0000817c 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
16: 10000130 4 OBJECT LOCAL DEFAULT 12 c
17: 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
18: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
19: 00000000 0 NOTYPE WEAK DEFAULT UND b
20: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
21: 00000000 0 NOTYPE WEAK DEFAULT UND g1
22: 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
23: 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
24: 10000128 4 OBJECT GLOBAL DEFAULT 11 a
25: 100000c0 52 FUNC GLOBAL DEFAULT 9 sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1rb.dd
0,0 → 1,36
 
tmpdir/shlib-dynapp-1rb: file format elf32-tic6x-be
 
 
Disassembly of section \.plt:
 
10000020 <sub0@plt-0x18>:
10000020:[ \t]*0100036e[ \t]*ldw \.D2T2 \*\+b14\(12\),b2
10000024:[ \t]*0080046e[ \t]*ldw \.D2T2 \*\+b14\(16\),b1
10000028:[ \t]*00004000[ \t]*nop 3
1000002c:[ \t]*00080362[ \t]*b \.S2 b2
10000030:[ \t]*00008000[ \t]*nop 5
10000034:[ \t]*00000000[ \t]*nop 1
 
10000038 <sub0@plt>:
10000038:[ \t]*0100056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b2
1000003c:[ \t]*0000002a[ \t]*mvk \.S2 0,b0
10000040:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
10000044:[ \t]*00002000[ \t]*nop 2
10000048:[ \t]*00080362[ \t]*b \.S2 b2
1000004c:[ \t]*00008000[ \t]*nop 5
[ \t]*\.\.\.
 
Disassembly of section \.text:
 
10000060 <fish>:
10000060:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000064:[ \t]*1ffffb12[ \t]*callp \.S2 10000038 <sub0@plt>,b3
10000068:[ \t]*0ffffb12[ \t]*b \.S2 10000038 <sub0@plt>
1000006c:[ \t]*10000012[ \t]*callp \.S2 10000060 <fish>,b3
10000070:[ \t]*00000012[ \t]*b \.S2 10000060 <fish>
10000074:[ \t]*0200096e[ \t]*ldw \.D2T2 \*\+b14\(36\),b4
10000078:[ \t]*0280086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b5
1000007c:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
10000080:[ \t]*0300066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b6
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-8-16.d
0,0 → 1,6
#name: C6X stack attribute merging, 8 16
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-stack-8.s
#source: attr-stack-16.s
#error: .*requires more stack alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-local-rel.d
0,0 → 1,19
#name: C6X MVK relocations, local symbols, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -melf32_tic6x_le -Tgeneric.ld
#source: mvk-reloc-local-1-rel.s
#source: mvk-reloc-local-2-rel.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+00804028[ \t]+mvk \.S1 128,a1
10000004:[ \t]+01004228[ \t]+mvk \.S1 132,a2
[ \t]*\.\.\.
10000020:[ \t]+00804628[ \t]+mvk \.S1 140,a1
10000024:[ \t]+01004828[ \t]+mvk \.S1 144,a2
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/common.s
0,0 → 1,2
.scomm x,4,4
.comm y,8,4
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-816-8.d
0,0 → 1,10
#name: C6X array attribute merging, 816 8
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-816.s
#source: attr-array-8.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-416.s
0,0 → 1,2
.c6xabi_attribute Tag_ABI_array_object_align_expected, 1
.c6xabi_attribute Tag_ABI_array_object_alignment, 2
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-none-10.d
0,0 → 1,10
#name: C6X conformance attribute merging, none 10
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-conformance-none.s
#source: attr-conformance-10.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-local-1-rel.s
0,0 → 1,21
.text
.nocmp
ldw .D2T2 *+b14(a),b1
ldw .D2T2 *+b14(b),b1
ldh .D2T2 *+b14(b),b1
ldh .D2T2 *+b14(c),b1
ldb .D2T2 *+b14(c),b1
ldb .D2T2 *+b14(d),b1
mvk .S1 $dpr_byte(d),a1
mvkl .S1 $dpr_byte(c),a1
mvkl .S1 $dpr_hword(b),a1
mvkl .S1 $dpr_word(a),a1
.data
a:
.word 0
b:
.short 0
c:
.byte 0
d:
.byte 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-u15-b-1.d
0,0 → 1,5
#name: C6X relocation overflow, SBR_U15_B
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --defsym s=0x8080
#source: reloc-overflow-sbr-u15-b.s
#error: .*relocation truncated to fit: R_C6000_SBR_U15_B.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c674x-c62x.d
0,0 → 1,10
#name: C6X arch attribute merging, c674x c62x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c674x.s
#source: attr-arch-c62x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/dsbt-index.s
0,0 → 1,3
.text
.nocmp
ldw .d2t2 *+B14($DSBT_index(__c6xabi_DSBT_BASE)), B14
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-816.s
0,0 → 1,2
.c6xabi_attribute Tag_ABI_array_object_align_expected, 0
.c6xabi_attribute Tag_ABI_array_object_alignment, 2
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-local-r-rel.d
0,0 → 1,23
#name: C6X data relocations, local symbols, -r, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -r -melf32_tic6x_le
#source: data-reloc-local-1.s
#source: data-reloc-local-2.s
#objdump: -r -s -j .data
 
.*: *file format elf32-tic6x-le
 
RELOCATION RECORDS FOR \[\.data\]:
OFFSET TYPE VALUE
0+ R_C6000_ABS32 \.data
0+4 R_C6000_ABS32 \.data
0+8 R_C6000_ABS32 \.data
0+c R_C6000_ABS32 \.data
0+10 R_C6000_ABS16 \.data
0+12 R_C6000_ABS8 \.data
0+13 R_C6000_ABS8 \.data
 
 
Contents of section \.data:
[ \t]*0000 00000000 04000000 0c000000 08000000 \.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.
[ \t]*0010 0c00080c \.\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x-c674x.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x c674x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x.s
#source: attr-arch-c674x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-816-16.d
0,0 → 1,12
#name: C6X array attribute merging, 816 16
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-816.s
#source: attr-array-16.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 16-byte
Tag_ABI_array_object_align_expected: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-global.d
0,0 → 1,27
#name: C6X SB-relative relocations, global symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --defsym sw1=0x80 --defsym sw2=0x2007c --defsym sh1=0x80 --defsym sh2=0x1007e --defsym sb1=0x80 --defsym sb2=0x807f --defsym sb16a=0xffff8080 --defsym sb16b=0x807f --defsym sbw=0x123456f8 --defsym shw=0x2468ad70 --defsym sww=0x48d15a60
#source: sbr-reloc-global.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
10000004:[ \t]+00ffff6e[ \t]+ldw \.D2T2 \*\+b14\(131068\),b1
10000008:[ \t]+0080004e[ \t]+ldh \.D2T2 \*\+b14\(0\),b1
1000000c:[ \t]+00ffff4e[ \t]+ldh \.D2T2 \*\+b14\(65534\),b1
10000010:[ \t]+0080002e[ \t]+ldb \.D2T2 \*\+b14\(0\),b1
10000014:[ \t]+00ffff2e[ \t]+ldb \.D2T2 \*\+b14\(32767\),b1
10000018:[ \t]+00c00028[ \t]+mvk \.S1 -32768,a1
1000001c:[ \t]+00bfffa8[ \t]+mvk \.S1 32767,a1
10000020:[ \t]+00ab3c28[ \t]+mvk \.S1 22136,a1
10000024:[ \t]+00891a68[ \t]+mvkh \.S1 305397760,a1
10000028:[ \t]+00ab3c28[ \t]+mvk \.S1 22136,a1
1000002c:[ \t]+00891a68[ \t]+mvkh \.S1 305397760,a1
10000030:[ \t]+00ab3c28[ \t]+mvk \.S1 22136,a1
10000034:[ \t]+00891a68[ \t]+mvkh \.S1 305397760,a1
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/generic.ld
0,0 → 1,8
SECTIONS
{
. = 0x80;
.data : { *(.data*) }
. = 0x10000000;
.text : { *(.text*) }
/DISCARD/ : { *(*) }
}
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-abs8-2.d
0,0 → 1,5
#name: C6X relocation underflow, ABS8
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0xffffff7f
#source: reloc-overflow-abs8.s
#error: .*relocation truncated to fit: R_C6000_ABS8.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-0.s
0,0 → 1,5
.c6xabi_attribute Tag_ABI_PID, 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pic-01.d
0,0 → 1,10
#name: C6X PIC attribute merging, 0 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pic-0.s
#source: attr-pic-1.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-local.d
0,0 → 1,12
#name: C6X data relocations, local symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld
#source: data-reloc-local-1.s
#source: data-reloc-local-2.s
#objdump: -r -s -j .data
 
.*: *file format elf32-tic6x-le
 
Contents of section \.data:
[ \t]*0080 80000000 84000000 8c000000 88000000 .*
[ \t]*0090 8c00888c .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-local-1.s
0,0 → 1,12
.text
.nocmp
mvk .S1 a,a1
mvkl .S1 b,a2
mvkh .S1 c,a3
.data
a:
.word 0
b:
.word 0
c:
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-global.s
0,0 → 1,27
.globl sw1
.globl sw2
.globl sh1
.globl sh2
.globl sb1
.globl sb2
.globl sb16a
.globl sb16b
.globl sbw
.globl shw
.globl sww
.text
.nocmp
ldw .D2T2 *+b14(sw1),b1
ldw .D2T2 *+b14(sw2),b1
ldh .D2T2 *+b14(sh1),b1
ldh .D2T2 *+b14(sh2),b1
ldb .D2T2 *+b14(sb1),b1
ldb .D2T2 *+b14(sb2),b1
mvk .S1 $dpr_byte(sb16a),a1
mvk .S1 $dpr_byte(sb16b),a1
mvkl .S1 $dpr_byte(sbw),a1
mvkh .S1 $dpr_byte(sbw),a1
mvkl .S1 $dpr_hword(shw),a1
mvkh .S1 $dpr_hword(shw),a1
mvkl .S1 $dpr_word(sww),a1
mvkh .S1 $dpr_word(sww),a1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1rb.sd
0,0 → 1,7
 
tmpdir/libtestrb\.so: file format elf32-tic6x-be
 
Contents of section \.got:
[ \t]*10000100 00000000 00000000 00000000 00000000 .*
[ \t]*10000110 00000000 10000020 10000020 00000000 .*
[ \t]*10000120 10000130 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-5.d
0,0 → 1,7
#ld: -T discard-unwind.ld
#objdump: -s
 
.*: file format.*
 
# Check we don't crash when discarding unwind info.
#...
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-8-16.d
0,0 → 1,6
#name: C6X array attribute merging, 8 16
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-8.s
#source: attr-array-16.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-local-r.d
0,0 → 1,23
#name: C6X GOT relocations, local symbols, -r
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: got-reloc-local-1.s
#source: got-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
00000000 <\.text>:
[ ]*0:[ ]*0700006e[ ]*ldw \.D2T2 \*\+b14\(0\),b14
[ ]*0:[ ]*R_C6000_DSBT_INDEX __c6xabi_DSBT_BASE
[ ]*4:[ ]*0080006c[ ]*ldw \.D2T1 \*\+b14\(0\),a1
[ ]*4:[ ]*R_C6000_SBR_GOT_U15_W a
\.\.\.
[ ]*20:[ ]*0700006e[ ]*ldw \.D2T2 \*\+b14\(0\),b14
[ ]*20: R_C6000_DSBT_INDEX __c6xabi_DSBT_BASE
[ ]*24:[ ]*0080006c[ ]*ldw \.D2T1 \*\+b14\(0\),a1
[ ]*24:[ ]*R_C6000_SBR_GOT_U15_W b
\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-48-8.d
0,0 → 1,10
#name: C6X array attribute merging, 48 8
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-48.s
#source: attr-array-8.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-noindex.rd
0,0 → 1,130
There are 18 section headers, starting at offset 0x21cc:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 000048 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 00008048 001048 0000d0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 00008118 001118 000025 00 A 0 0 1
\[ 4\] \.rela\.text RELA 00008140 001140 00000c 0c A 2 10 4
\[ 5\] \.rela\.got RELA 0000814c 00114c 000024 0c A 2 11 4
\[ 6\] \.rela\.neardata RELA 00008170 001170 000018 0c A 2 12 4
\[ 7\] \.dynamic DYNAMIC 00008188 001188 0000b0 08 WA 3 0 4
\[ 8\] \.rela\.plt RELA 10000000 002000 000018 0c A 2 9 4
\[ 9\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
\[10\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
\[11\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
\[12\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4
\[13\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4
\[14\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1
\[15\] \.shstrtab STRTAB 00000000 002149 000080 00 0 0 1
\[16\] \.symtab SYMTAB 00000000 00249c 0001b0 10 17 20 4
\[17\] \.strtab STRTAB 00000000 00264c 000059 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is DYN \(Shared object file\)
Entry point 0x10000080
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x00238 0x00238 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x00130 0x00134 RWE 0x1000
DYNAMIC 0x001188 0x00008188 0x00008188 0x000b0 0x000b0 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.text \.rela\.got \.rela\.neardata \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x1188 contains 17 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x8118
0x00000006 \(SYMTAB\) 0x8048
0x0000000a \(STRSZ\) 37 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x70000000 \(C6000_DSBT_BASE\) 0x10000100
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x0
0x00000003 \(PLTGOT\) 0x1000010c
0x00000002 \(PLTRELSZ\) 24 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x8140
0x00000008 \(RELASZ\) 96 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000016 \(TEXTREL\) 0x0
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.text' at offset 0x1140 contains 1 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000094 00000618 R_C6000_DSBT_INDEX 10000100 __c6xabi_DSBT_BASE \+ 0
 
Relocation section '\.rela\.got' at offset 0x114c contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000120 00000501 R_C6000_ABS32 10000130 \.bss \+ 0
1000011c 00000701 R_C6000_ABS32 00000000 b \+ 0
10000124 00000b01 R_C6000_ABS32 10000128 a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1170 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000128 00000a01 R_C6000_ABS32 10000088 sub0 \+ 0
1000012c 00000801 R_C6000_ABS32 00000000 g1 \+ 0
 
Relocation section '\.rela\.plt' at offset 0x2000 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000114 00000a1b R_C6000_JUMP_SLOT 10000088 sub0 \+ 0
10000118 00000c1b R_C6000_JUMP_SLOT 100000c0 sub \+ 0
 
Symbol table '\.dynsym' contains 13 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 9
2: 10000080 0 SECTION LOCAL DEFAULT 10
3: 10000100 0 SECTION LOCAL DEFAULT 11
4: 10000128 0 SECTION LOCAL DEFAULT 12
5: 10000130 0 SECTION LOCAL DEFAULT 13
6: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 00000000 0 NOTYPE WEAK DEFAULT UND b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 1000012c 4 OBJECT GLOBAL DEFAULT 12 g2
10: 10000088 52 FUNC GLOBAL DEFAULT 10 sub0
11: 10000128 4 OBJECT GLOBAL DEFAULT 12 a
12: 100000c0 52 FUNC GLOBAL DEFAULT 10 sub
 
Symbol table '\.symtab' contains 27 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 00008048 0 SECTION LOCAL DEFAULT 2
3: 00008118 0 SECTION LOCAL DEFAULT 3
4: 00008140 0 SECTION LOCAL DEFAULT 4
5: 0000814c 0 SECTION LOCAL DEFAULT 5
6: 00008170 0 SECTION LOCAL DEFAULT 6
7: 00008188 0 SECTION LOCAL DEFAULT 7
8: 10000000 0 SECTION LOCAL DEFAULT 8
9: 10000020 0 SECTION LOCAL DEFAULT 9
10: 10000080 0 SECTION LOCAL DEFAULT 10
11: 10000100 0 SECTION LOCAL DEFAULT 11
12: 10000128 0 SECTION LOCAL DEFAULT 12
13: 10000130 0 SECTION LOCAL DEFAULT 13
14: 00000000 0 SECTION LOCAL DEFAULT 14
15: 10000080 0 FUNC LOCAL HIDDEN 10 sub1
16: 00008188 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
17: 10000130 4 OBJECT LOCAL DEFAULT 13 c
18: 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
19: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
20: 00000000 0 NOTYPE WEAK DEFAULT UND b
21: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
22: 00000000 0 NOTYPE WEAK DEFAULT UND g1
23: 1000012c 4 OBJECT GLOBAL DEFAULT 12 g2
24: 10000088 52 FUNC GLOBAL DEFAULT 10 sub0
25: 10000128 4 OBJECT GLOBAL DEFAULT 12 a
26: 100000c0 52 FUNC GLOBAL DEFAULT 10 sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-5.s
0,0 → 1,16
.cfi_sections .c6xabi.exidx
.text
.global __c6xabi_unwind_cpp_pr3
.type __c6xabi_unwind_cpp_pr3, %function
__c6xabi_unwind_cpp_pr3:
.global _start
.type _start, %function
_start:
.cfi_startproc
.cfi_offset B3, 0
.cfi_def_cfa_offset 8
nop
.p2align 6
.cfi_endproc
.personalityindex 3
.endp
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-416-48.d
0,0 → 1,11
#name: C6X array attribute merging, 416 48
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-416.s
#source: attr-array-48.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_align_expected: 4-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-compatibility-gnu.s
0,0 → 1,11
.c6xabi_attribute Tag_ABI_compatibility, 1, "gnu"
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1rb.dd
0,0 → 1,67
 
tmpdir/libtestrb\.so: file format elf32-tic6x-be
 
 
Disassembly of section \.plt:
 
10000020 <sub0@plt-0x18>:
10000020:[ \t]*0100036e[ \t]*ldw \.D2T2 \*\+b14\(12\),b2
10000024:[ \t]*0080046e[ \t]*ldw \.D2T2 \*\+b14\(16\),b1
10000028:[ \t]*00004000[ \t]*nop 3
1000002c:[ \t]*00080362[ \t]*b \.S2 b2
10000030:[ \t]*00008000[ \t]*nop 5
10000034:[ \t]*00000000[ \t]*nop 1
 
10000038 <sub0@plt>:
10000038:[ \t]*0100056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b2
1000003c:[ \t]*0000002a[ \t]*mvk \.S2 0,b0
10000040:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
10000044:[ \t]*00002000[ \t]*nop 2
10000048:[ \t]*00080362[ \t]*b \.S2 b2
1000004c:[ \t]*00008000[ \t]*nop 5
 
10000050 <sub@plt>:
10000050:[ \t]*0100066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b2
10000054:[ \t]*0000062a[ \t]*mvk \.S2 12,b0
10000058:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
1000005c:[ \t]*00002000[ \t]*nop 2
10000060:[ \t]*00080362[ \t]*b \.S2 b2
10000064:[ \t]*00008000[ \t]*nop 5
\.\.\.
 
Disassembly of section \.text:
 
10000080 <sub1>:
10000080:[ \t]*000c0362[ \t]*b \.S2 b3
10000084:[ \t]*00008000[ \t]*nop 5
 
10000088 <sub0>:
10000088:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
1000008c:[ \t]*01bc62f6[ \t]*stw \.D2T2 b3,\*\+b15\(12\)
10000090:[ \t]*073c82f6[ \t]*stw \.D2T2 b14,\*\+b15\(16\)
10000094:[ \t]*0700026e[ \t]*ldw \.D2T2 \*\+b14\(8\),b14
10000098:[ \t]*0ffffa12[ \t]*b \.S2 10000050 <sub@plt>
1000009c:[ \t]*0ffff712[ \t]*b \.S2 10000038 <sub0@plt>
100000a0:[ \t]*0ffffc12[ \t]*b \.S2 10000080 <sub1>
100000a4:[ \t]*01bc62e6[ \t]*ldw \.D2T2 \*\+b15\(12\),b3
100000a8:[ \t]*073c82e6[ \t]*ldw \.D2T2 \*\+b15\(16\),b14
100000ac:[ \t]*07800852[ \t]*addk \.S2 16,b15
100000b0:[ \t]*00004000[ \t]*nop 3
100000b4:[ \t]*000c0362[ \t]*b \.S2 b3
100000b8:[ \t]*00008000[ \t]*nop 5
100000bc:[ \t]*00000000[ \t]*nop 1
 
100000c0 <sub>:
100000c0:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
100000c4:[ \t]*023c62f4[ \t]*stw \.D2T1 a4,\*\+b15\(12\)
100000c8:[ \t]*003c62e4[ \t]*ldw \.D2T1 \*\+b15\(12\),a0
100000cc:[ \t]*00006000[ \t]*nop 4
100000d0:[ \t]*00014940[ \t]*add \.D1 a0,10,a0
100000d4:[ \t]*020008f0[ \t]*or \.D1 0,a0,a4
100000d8:[ \t]*07be0942[ \t]*add \.D2 b15,16,b15
100000dc:[ \t]*000c0362[ \t]*b \.S2 b3
100000e0:[ \t]*0300096e[ \t]*ldw \.D2T2 \*\+b14\(36\),b6
100000e4:[ \t]*0380076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b7
100000e8:[ \t]*0400086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b8
100000ec:[ \t]*04800c6e[ \t]*ldw \.D2T2 \*\+b14\(48\),b9
\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-pcr-s12-1.d
0,0 → 1,5
#name: C6X relocation overflow, PCR_S12
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x10002000
#source: reloc-overflow-pcr-s12.s
#error: .*relocation truncated to fit: R_C6000_PCR_S12.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-01.d
0,0 → 1,11
#name: C6X wchar_t attribute merging, 0 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-wchar-0.s
#source: attr-wchar-1.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_wchar_t: 2 bytes
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x-c64x.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x c64x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x.s
#source: attr-arch-c64x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-global.d
0,0 → 1,26
#name: C6X MVK relocations, global symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s0=0 --defsym s7fff=0x7fff --defsym s80000000=0x80000000 --defsym sffff8000=0xffff8000 --defsym sffffffff=0xffffffff
#source: mvk-reloc-global.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+00800028[ \t]+mvk \.S1 0,a1
10000004:[ \t]+00c00068[ \t]+mvkh \.S1 2147483648,a1
10000008:[ \t]+00ffffa8[ \t]+mvk \.S1 -1,a1
1000000c:[ \t]+00ffffe8[ \t]+mvkh \.S1 4294901760,a1
10000010:[ \t]+00800028[ \t]+mvk \.S1 0,a1
10000014:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
10000018:[ \t]+00ffff28[ \t]+mvk \.S1 -2,a1
1000001c:[ \t]+00ffffe8[ \t]+mvkh \.S1 4294901760,a1
10000020:[ \t]+00800028[ \t]+mvk \.S1 0,a1
10000024:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
10000028:[ \t]+00c00028[ \t]+mvk \.S1 -32768,a1
1000002c:[ \t]+00c00028[ \t]+mvk \.S1 -32768,a1
10000030:[ \t]+00bfffa8[ \t]+mvk \.S1 32767,a1
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-8-816.d
0,0 → 1,10
#name: C6X stack attribute merging, 8 816
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-stack-8.s
#source: attr-stack-816.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1b.od
0,0 → 1,13
 
tmpdir/shlib-dynapp-1b: file format elf32-tic6x-be
 
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
100000b8 R_C6000_ABS32 b
100000bc R_C6000_ABS32 a
100000c4 R_C6000_ABS32 g1
100000c8 R_C6000_ABS32 g2
100000cc R_C6000_COPY a
100000b4 R_C6000_JUMP_SLOT sub0
 
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-compatibility-gnu-gnu.d
0,0 → 1,11
#name: C6X compatibility attribute merging, gnu gnu
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-compatibility-gnu.s
#source: attr-compatibility-gnu.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_compatibility: flag = 1, vendor = gnu
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pic-10.d
0,0 → 1,10
#name: C6X PIC attribute merging, 1 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pic-1.s
#source: attr-pic-0.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-global.d
0,0 → 1,20
#name: C6X PC-relative relocations, global symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s7a=0x0fffff00 --defsym s7b=0x100000fc --defsym s10a=0x0ffff800 --defsym s10b=0x100007fc --defsym s12a=0x0fffe000 --defsym s12b=0x10001ffc --defsym s21a=0x0fc00000 --defsym s21b=0x103ffffc
#source: pcrel-reloc-global.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+00c00162[ \t]+addkpc \.S2 fffff00 <[^>]*>,b1,0
10000004:[ \t]+00bf0162[ \t]+addkpc \.S2 100000fc <[^>]*>,b1,0
10000008:[ \t]+08000012[ \t]+b \.S2 fc00000 <[^>]*>
1000000c:[ \t]+07ffff92[ \t]+b \.S2 103ffffc <[^>]*>
10000010:[ \t]+00c01022[ \t]+bdec \.S2 ffff800 <[^>]*>,b1
10000014:[ \t]+00bff022[ \t]+bdec \.S2 100007fc <[^>]*>,b1
10000018:[ \t]+08000122[ \t]+bnop \.S2 fffe000 <[^>]*>,0
1000001c:[ \t]+07ff0122[ \t]+bnop \.S2 10001ffc <[^>]*>,0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-416-416.d
0,0 → 1,12
#name: C6X array attribute merging, 416 416
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-416.s
#source: attr-array-416.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 16-byte
Tag_ABI_array_object_align_expected: 4-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/tic6x.exp
0,0 → 1,180
if { ! [istarget tic6x-*-*] } {
return
}
 
foreach test [lsort [glob -nocomplain $srcdir/$subdir/*.d]] {
if { [runtest_file_p $runtests $test] } {
run_dump_test [file rootname $test]
}
}
 
set shlibtests {
{"C6X shared library without --dsbt-index"
"-shared -Tdsbt.ld --dsbt-size=3"
"-mdsbt -mpic -mpid=near" {shlib-1.s shlib-2.s}
{{readelf -WSsrld shlib-noindex.rd}
{objdump "-drj.plt -j.text" shlib-noindex.dd}
{objdump -sj.got shlib-noindex.sd}}
"libtestn.so"}
{"C6X shared library, LE, RELA"
"-shared -Tdsbt.ld --dsbt-index=2 --dsbt-size=3"
"-mdsbt -mpic -mpid=near" {shlib-1.s shlib-2.s}
{{readelf -WSsrld shlib-1.rd}
{objdump "-drj.plt -j.text" shlib-1.dd}
{objdump -sj.got shlib-1.sd}}
"libtest.so"}
{"C6X nonstatic app using shared library, LE, RELA"
"-Tdsbt.ld --dsbt-index 0 --dsbt-size=3 tmpdir/libtest.so"
"-mdsbt -mpic -mpid=near" {shlib-app-1.s}
{{readelf -WSsrld shlib-app-1.rd}
{objdump "-drj.plt -j.text" shlib-app-1.dd}
{objdump -sj.got shlib-app-1.sd}
{objdump -R shlib-app-1.od}}
"shlib-dynapp-1"}
{"C6X shared library, LE, REL"
"-shared -Tdsbt.ld --dsbt-index=2 --dsbt-size=3"
"-mdsbt -mpic -mpid=near -mgenerate-rel" {shlib-1.s shlib-2.s}
{{readelf -WSsrld shlib-1r.rd}
{objdump "-drj.plt -j.text" shlib-1r.dd}
{objdump -sj.got shlib-1r.sd}}
"libtestr.so"}
{"C6X nonstatic app using shared library, LE, REL"
"-Tdsbt.ld --dsbt-index 0 --dsbt-size=3 tmpdir/libtestr.so"
"-mdsbt -mpic -mpid=near -mgenerate-rel" {shlib-app-1r.s}
{{readelf -WSsrld shlib-app-1r.rd}
{objdump "-drj.plt -j.text" shlib-app-1r.dd}
{objdump -sj.got shlib-app-1r.sd}
{objdump -R shlib-app-1r.od}}
"shlib-dynapp-1r"}
{"C6X shared library, BE, RELA"
"-shared -Tdsbt-be.ld --dsbt-index=2 --dsbt-size=3"
"-mdsbt -mpic -mpid=near -mbig-endian" {shlib-1.s shlib-2.s}
{{readelf -WSsrld shlib-1b.rd}
{objdump "-drj.plt -j.text" shlib-1b.dd}
{objdump -sj.got shlib-1b.sd}}
"libtestb.so"}
{"C6X nonstatic app using shared library, BE, RELA"
"-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3 tmpdir/libtestb.so"
"-mdsbt -mpic -mpid=near -mbig-endian" {shlib-app-1.s}
{{readelf -WSsrld shlib-app-1b.rd}
{objdump "-drj.plt -j.text" shlib-app-1b.dd}
{objdump -sj.got shlib-app-1b.sd}
{objdump -R shlib-app-1b.od}}
"shlib-dynapp-1b"}
{"C6X shared library, BE, REL"
"-shared -Tdsbt-be.ld --dsbt-index=2 --dsbt-size=3"
"-mdsbt -mpic -mpid=near -mgenerate-rel -mbig-endian" {shlib-1.s shlib-2.s}
{{readelf -WSsrld shlib-1rb.rd}
{objdump "-drj.plt -j.text" shlib-1rb.dd}
{objdump -sj.got shlib-1rb.sd}}
"libtestrb.so"}
{"C6X nonstatic app using shared library, BE, REL"
"-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3 tmpdir/libtestrb.so"
"-mdsbt -mpic -mpid=near -mgenerate-rel -mbig-endian" {shlib-app-1r.s}
{{readelf -WSsrld shlib-app-1rb.rd}
{objdump "-drj.plt -j.text" shlib-app-1rb.dd}
{objdump -sj.got shlib-app-1rb.sd}
{objdump -R shlib-app-1rb.od}}
"shlib-dynapp-1rb"}
 
{"C6X static app, LE, RELA"
"-Tdsbt.ld --dsbt-index 0 --dsbt-size=3"
"-mdsbt -mpic -mpid=near" {shlib-1.s shlib-2.s shlib-app-1.s}
{{readelf -WSsrld static-app-1.rd}
{objdump "-drj.plt -j.text" static-app-1.dd}
{objdump -sj.got static-app-1.sd}
{objdump -R static-app-1.od}}
"static-app-1"}
{"C6X static app, LE, REL"
"-Tdsbt.ld --dsbt-index 0 --dsbt-size=3"
"-mdsbt -mpic -mpid=near -mgenerate-rel" {shlib-1.s shlib-2.s shlib-app-1r.s}
{{readelf -WSsrld static-app-1r.rd}
{objdump "-drj.plt -j.text" static-app-1r.dd}
{objdump -sj.got static-app-1r.sd}
{objdump -R static-app-1r.od}}
"static-app-1r"}
{"C6X static app, BE, RELA"
"-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3"
"-mdsbt -mpic -mpid=near -mbig-endian" {shlib-1.s shlib-2.s shlib-app-1.s}
{{readelf -WSsrld static-app-1b.rd}
{objdump "-drj.plt -j.text" static-app-1b.dd}
{objdump -sj.got static-app-1b.sd}
{objdump -R static-app-1b.od}}
"static-app-1b"}
{"C6X static app, BE, REL"
"-Tdsbt-be.ld --dsbt-index 0 --dsbt-size=3"
"-mdsbt -mpic -mpid=near -mbig-endian -mgenerate-rel" {shlib-1.s shlib-2.s shlib-app-1r.s}
{{readelf -WSsrld static-app-1rb.rd}
{objdump "-drj.plt -j.text" static-app-1rb.dd}
{objdump -sj.got static-app-1rb.sd}
{objdump -R static-app-1rb.od}}
"static-app-1rb"}
}
 
run_ld_link_tests $shlibtests
 
if { [istarget tic6x-*-elf] } {
set expected_osabi "Bare-metal C6000"
} elseif { [istarget tic6x-*-uclinux] } {
set expected_osabi "Linux C6000"
} else {
return
}
 
if { ![ld_assemble_flags $as "-mpic -mpid=near" $srcdir/$subdir/shlib-1.s tmpdir/shlib-1.o]
|| ![ld_assemble_flags $as "-mpic -mpid=near" $srcdir/$subdir/shlib-2.s tmpdir/shlib-2.o]
|| ![ld_assemble $as $srcdir/$subdir/shlib-app-1.s tmpdir/shlib-app-1.o]
|| ![ld_assemble_flags $as "-mpic -mpid=near -mbig-endian" $srcdir/$subdir/shlib-1.s tmpdir/shlib-1b.o]
|| ![ld_assemble_flags $as "-mpic -mpid=near -mbig-endian" $srcdir/$subdir/shlib-2.s tmpdir/shlib-2b.o]
|| ![ld_assemble_flags $as -mbig-endian $srcdir/$subdir/shlib-app-1.s tmpdir/shlib-app-1b.o]
|| ![ld_simple_link $ld tmpdir/libtest.so "-shared tmpdir/shlib-1.o tmpdir/shlib-2.o"]
|| ![ld_simple_link $ld tmpdir/libtestb.so "-shared -EB tmpdir/shlib-1b.o tmpdir/shlib-2b.o"]
|| ![ld_simple_link $ld tmpdir/shlib.o "-r tmpdir/shlib-1.o tmpdir/shlib-2.o"]
|| ![ld_simple_link $ld tmpdir/shlibb.o "-r -EB tmpdir/shlib-1b.o tmpdir/shlib-2b.o"]
|| ![ld_simple_link $ld tmpdir/dynapp-1 "tmpdir/libtest.so tmpdir/shlib-app-1.o"]
|| ![ld_simple_link $ld tmpdir/dynapp-1b "-EB tmpdir/libtestb.so tmpdir/shlib-app-1b.o"] } {
unresolved "TIC6X OSABI tests"
return
}
 
# A procedure to check the OS/ABI field in the ELF header of a binary file.
proc check_osabi_tic6x { test_name binary_file } {
global READELF
global READELFFLAGS
global expected_osabi
 
set cmd "$READELF $READELFFLAGS --file-header $binary_file"
send_log "$cmd\n"
set got [remote_exec host [concat sh -c [list "$cmd >dump.out"]] "" "/dev/null"]
 
if { [lindex $got 0] != 0 || ![string match "" [lindex $got 1]] } then {
send_log "$got\n"
unresolved "$test_name"
remote_file build delete "dump.out"
return
}
remote_upload host "dump.out"
 
if { ![regexp "\n\[ \]*OS/ABI:\[ \]*(.+)\n\[ \]*ABI" \
[file_contents dump.out] nil osabi] } {
verbose "proc check_osabi_tic6x: Readelf failed to extract an ELF header from $binary_file"
unresolved "$test_name"
} elseif { $osabi == $expected_osabi } {
pass "$test_name"
} else {
verbose "Expected OSABI: $expected_osabi, Obtained osabi: $osabi"
fail "$test_name"
}
remote_file build delete "dump.out"
remote_file host delete "dump.out"
}
 
check_osabi_tic6x "C6X shared library OSABI, LE" tmpdir/libtest.so
check_osabi_tic6x "C6X shared library OSABI, BE" tmpdir/libtestb.so
check_osabi_tic6x "C6X dynamic app OSABI, LE" tmpdir/dynapp-1
check_osabi_tic6x "C6X dynamic app OSABI, BE" tmpdir/dynapp-1b
 
set expected_osabi "UNIX - System V"
 
check_osabi_tic6x "C6X relocatable link OSABI, LE" tmpdir/shlib.o
check_osabi_tic6x "C6X relocatable link OSABI, BE" tmpdir/shlibb.o
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1rb.rd
0,0 → 1,109
There are 15 section headers, starting at offset 0x2178:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 00003c 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 0000803c 00103c 0000a0 10 A 3 5 4
\[ 3\] \.dynstr STRTAB 000080dc 0010dc 00001d 00 A 0 0 1
\[ 4\] \.rela\.got RELA 000080fc 0010fc 000024 0c A 2 8 4
\[ 5\] \.rela\.neardata RELA 00008120 001120 000018 0c A 2 9 4
\[ 6\] \.dynamic DYNAMIC 00008138 001138 000090 08 WA 3 0 4
\[ 7\] \.text PROGBITS 10000000 002000 0000c0 00 AX 0 0 32
\[ 8\] \.got PROGBITS 100000c0 0020c0 000020 00 WA 0 0 4
\[ 9\] \.neardata PROGBITS 100000e0 0020e0 00000c 00 WA 0 0 4
\[10\] \.bss NOBITS 100000ec 0020ec 000004 00 WA 0 0 4
\[11\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020ec 000019 00 0 0 1
\[12\] \.shstrtab STRTAB 00000000 002105 000071 00 0 0 1
\[13\] \.symtab SYMTAB 00000000 0023d0 000190 10 14 18 4
\[14\] \.strtab STRTAB 00000000 002560 00005e 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is EXEC \(Executable file\)
Entry point 0x10000000
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x001c8 0x001c8 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x000ec 0x000f0 RWE 0x1000
DYNAMIC 0x001138 0x00008138 0x00008138 0x00090 0x00090 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.dynamic
01 \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x1138 contains 13 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x80dc
0x00000006 \(SYMTAB\) 0x803c
0x0000000a \(STRSZ\) 29 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000015 \(DEBUG\) 0x0
0x70000000 \(C6000_DSBT_BASE\) 0x100000c0
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x0
0x00000007 \(RELA\) 0x80fc
0x00000008 \(RELASZ\) 60 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x10fc contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000d8 00000401 R_C6000_ABS32 100000ec \.bss \+ 0
100000d4 00000701 R_C6000_ABS32 100000e8 b \+ 0
100000dc 00000901 R_C6000_ABS32 100000e0 a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1120 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000e0 00000101 R_C6000_ABS32 10000000 \.text \+ 8
100000e4 00000801 R_C6000_ABS32 00000000 g1 \+ 0
 
Symbol table '\.dynsym' contains 10 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000000 0 SECTION LOCAL DEFAULT 7
2: 100000c0 0 SECTION LOCAL DEFAULT 8
3: 100000e0 0 SECTION LOCAL DEFAULT 9
4: 100000ec 0 SECTION LOCAL DEFAULT 10
5: 100000ec 4 OBJECT LOCAL DEFAULT 10 c
6: 100000c0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 100000e8 4 OBJECT GLOBAL DEFAULT 9 b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 100000e0 4 OBJECT GLOBAL DEFAULT 9 a
 
Symbol table '\.symtab' contains 25 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 0000803c 0 SECTION LOCAL DEFAULT 2
3: 000080dc 0 SECTION LOCAL DEFAULT 3
4: 000080fc 0 SECTION LOCAL DEFAULT 4
5: 00008120 0 SECTION LOCAL DEFAULT 5
6: 00008138 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 100000c0 0 SECTION LOCAL DEFAULT 8
9: 100000e0 0 SECTION LOCAL DEFAULT 9
10: 100000ec 0 SECTION LOCAL DEFAULT 10
11: 00000000 0 SECTION LOCAL DEFAULT 11
12: 10000000 0 FUNC LOCAL HIDDEN 7 sub1
13: 10000080 0 NOTYPE LOCAL DEFAULT 7 fish
14: 00008138 0 OBJECT LOCAL DEFAULT 6 _DYNAMIC
15: 100000ec 4 OBJECT LOCAL DEFAULT 10 c
16: 100000cc 0 OBJECT LOCAL DEFAULT 8 _GLOBAL_OFFSET_TABLE_
17: 100000c0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
18: 100000e8 4 OBJECT GLOBAL DEFAULT 9 b
19: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
20: 00000000 0 NOTYPE WEAK DEFAULT UND g1
21: 100000e4 4 OBJECT GLOBAL DEFAULT 9 g2
22: 10000008 52 FUNC GLOBAL DEFAULT 7 sub0
23: 100000e0 4 OBJECT GLOBAL DEFAULT 9 a
24: 10000040 52 FUNC GLOBAL DEFAULT 7 sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-416-816.d
0,0 → 1,11
#name: C6X array attribute merging, 416 816
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-416.s
#source: attr-array-816.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x-c67x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x c67x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x.s
#source: attr-arch-c67x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C67x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-816-416.d
0,0 → 1,11
#name: C6X array attribute merging, 816 416
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-816.s
#source: attr-array-416.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-16-4.d
0,0 → 1,6
#name: C6X array attribute merging, 16 4
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-16.s
#source: attr-array-4.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-global.s
0,0 → 1,20
.globl s0
.globl s7fff
.globl s80000000
.globl sffff8000
.globl sffffffff
.text
.nocmp
mvkl .S1 s80000000,a1
mvkh .S1 s80000000,a1
mvkl .S1 sffffffff,a1
mvkh .S1 sffffffff,a1
mvkl .S1 s0,a1
mvkh .S1 s0,a1
mvkl .S1 sffffffff+0xffffffff,a1
mvkh .S1 sffffffff+0xffffffff,a1
mvkl .S1 s80000000+0x80000000,a1
mvkh .S1 s80000000+0x80000000,a1
mvk .S1 sffff8000,a1
mvk .S1 s0-0x8000,a1
mvk .S1 s7fff,a1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shared-nopic.d
0,0 → 1,5
#name: C6X shared library without PIC code
#as: -mlittle-endian -mdsbt -mpid=near
#ld: -melf32_tic6x_le -Tdsbt-inrange.ld --dsbt-index 4 -shared
#source: got-reloc-global.s
#warning: non-PIC code
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-816-816.d
0,0 → 1,11
#name: C6X array attribute merging, 816 816
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-816.s
#source: attr-array-816.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-none-11.d
0,0 → 1,10
#name: C6X conformance attribute merging, none 11
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-conformance-none.s
#source: attr-conformance-11.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1r.od
0,0 → 1,11
 
tmpdir/shlib-dynapp-1r: file format elf32-tic6x-le
 
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
100000b8 R_C6000_ABS32 b
100000bc R_C6000_ABS32 a
100000c4 R_C6000_COPY a
100000b4 R_C6000_JUMP_SLOT sub0
 
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1r.s
0,0 → 1,19
.global a
.text
fish:
ldw .d2t2 *+B14($DSBT_index(__c6xabi_DSBT_BASE)), B14
callp .s2 sub0, B3
b .s2 sub0
callp .s2 fish, B3
b .s2 fish
ldw .d2t2 *+B14(a), B4
ldw .d2t2 *+B14(b), B5
ldw .d2t2 *+B14($GOT(a)), B6
ldw .d2t2 *+B14($GOT(b)), B6
.global b
.section .neardata,"aw",@progbits
.align 2
.type b, @object
.size b, 4
b:
.long 0x12345678
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-u15-b-2.d
0,0 → 1,5
#name: C6X relocation underflow, SBR_U15_B
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --defsym s=0x7f
#source: reloc-overflow-sbr-u15-b.s
#error: .*relocation truncated to fit: R_C6000_SBR_U15_B.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1.od
0,0 → 1,14
 
tmpdir/static-app-1: file format elf32-tic6x-le
 
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
100000d8 R_C6000_ABS32 \.bss
100000d4 R_C6000_ABS32 b
100000dc R_C6000_ABS32 a
100000e0 R_C6000_ABS32 \.text\+0x00000008
100000e4 R_C6000_ABS32 g1
100000ec R_C6000_ABS32 g1
100000f0 R_C6000_ABS32 \.neardata\+0x00000004
 
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-global.s
0,0 → 1,18
.globl s7a
.globl s7b
.globl s21a
.globl s21b
.globl s10a
.globl s10b
.globl s12a
.globl s12b
.text
.nocmp
addkpc .S2 s7a,b1,0
addkpc .S2 s7b,b1,0
b .S2 s21a
b .S2 s21b
bdec .S2 s10a,b1
bdec .S2 s10b,b1
bnop .S2 s12a,0
bnop .S2 s12b,0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-noindex.sd
0,0 → 1,7
 
tmpdir/libtestn\.so: file format elf32-tic6x-le
 
Contents of section \.got:
[ \t]*10000100 00000000 00000000 00000000 00000000 .*
[ \t]*10000110 00000000 20000010 20000010 00000000 .*
[ \t]*10000120 30010010 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1b.rd
0,0 → 1,112
There are 15 section headers, starting at offset 0x2180:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 00003c 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 0000803c 00103c 0000a0 10 A 3 5 4
\[ 3\] \.dynstr STRTAB 000080dc 0010dc 00001d 00 A 0 0 1
\[ 4\] \.rela\.got RELA 000080fc 0010fc 000024 0c A 2 8 4
\[ 5\] \.rela\.neardata RELA 00008120 001120 000030 0c A 2 9 4
\[ 6\] \.dynamic DYNAMIC 00008150 001150 000090 08 WA 3 0 4
\[ 7\] \.text PROGBITS 10000000 002000 0000c0 00 AX 0 0 32
\[ 8\] \.got PROGBITS 100000c0 0020c0 000020 00 WA 0 0 4
\[ 9\] \.neardata PROGBITS 100000e0 0020e0 000014 00 WA 0 0 4
\[10\] \.bss NOBITS 100000f4 0020f4 000004 00 WA 0 0 4
\[11\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020f4 000019 00 0 0 1
\[12\] \.shstrtab STRTAB 00000000 00210d 000071 00 0 0 1
\[13\] \.symtab SYMTAB 00000000 0023d8 0001a0 10 14 19 4
\[14\] \.strtab STRTAB 00000000 002578 000060 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is EXEC \(Executable file\)
Entry point 0x10000000
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x001e0 0x001e0 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x000f4 0x000f8 RWE 0x1000
DYNAMIC 0x001150 0x00008150 0x00008150 0x00090 0x00090 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.dynamic
01 \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x1150 contains 13 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x80dc
0x00000006 \(SYMTAB\) 0x803c
0x0000000a \(STRSZ\) 29 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000015 \(DEBUG\) 0x0
0x70000000 \(C6000_DSBT_BASE\) 0x100000c0
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x0
0x00000007 \(RELA\) 0x80fc
0x00000008 \(RELASZ\) 84 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x10fc contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000d8 00000401 R_C6000_ABS32 100000f4 \.bss \+ 0
100000d4 00000701 R_C6000_ABS32 100000e8 b \+ 0
100000dc 00000901 R_C6000_ABS32 100000e0 a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1120 contains 4 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000e0 00000101 R_C6000_ABS32 10000000 \.text \+ 8
100000e4 00000801 R_C6000_ABS32 00000000 g1 \+ 0
100000ec 00000801 R_C6000_ABS32 00000000 g1 \+ 0
100000f0 00000301 R_C6000_ABS32 100000e0 \.neardata \+ 4
 
Symbol table '\.dynsym' contains 10 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000000 0 SECTION LOCAL DEFAULT 7
2: 100000c0 0 SECTION LOCAL DEFAULT 8
3: 100000e0 0 SECTION LOCAL DEFAULT 9
4: 100000f4 0 SECTION LOCAL DEFAULT 10
5: 100000f4 4 OBJECT LOCAL DEFAULT 10 c
6: 100000c0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 100000e8 4 OBJECT GLOBAL DEFAULT 9 b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 100000e0 4 OBJECT GLOBAL DEFAULT 9 a
 
Symbol table '\.symtab' contains 26 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 0000803c 0 SECTION LOCAL DEFAULT 2
3: 000080dc 0 SECTION LOCAL DEFAULT 3
4: 000080fc 0 SECTION LOCAL DEFAULT 4
5: 00008120 0 SECTION LOCAL DEFAULT 5
6: 00008150 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 100000c0 0 SECTION LOCAL DEFAULT 8
9: 100000e0 0 SECTION LOCAL DEFAULT 9
10: 100000f4 0 SECTION LOCAL DEFAULT 10
11: 00000000 0 SECTION LOCAL DEFAULT 11
12: 10000000 0 FUNC LOCAL HIDDEN 7 sub1
13: 10000080 0 NOTYPE LOCAL DEFAULT 7 fish
14: 100000ec 8 OBJECT LOCAL DEFAULT 9 w
15: 00008150 0 OBJECT LOCAL DEFAULT 6 _DYNAMIC
16: 100000f4 4 OBJECT LOCAL DEFAULT 10 c
17: 100000cc 0 OBJECT LOCAL DEFAULT 8 _GLOBAL_OFFSET_TABLE_
18: 100000c0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
19: 100000e8 4 OBJECT GLOBAL DEFAULT 9 b
20: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
21: 00000000 0 NOTYPE WEAK DEFAULT UND g1
22: 100000e4 4 OBJECT GLOBAL DEFAULT 9 g2
23: 10000008 52 FUNC GLOBAL DEFAULT 7 sub0
24: 100000e0 4 OBJECT GLOBAL DEFAULT 9 a
25: 10000040 52 FUNC GLOBAL DEFAULT 7 sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-pcr-s21-1.d
0,0 → 1,5
#name: C6X relocation overflow, PCR_S21
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x10400000
#source: reloc-overflow-pcr-s21.s
#error: .*relocation truncated to fit: R_C6000_PCR_S21.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-10.d
0,0 → 1,11
#name: C6X wchar_t attribute merging, 1 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-wchar-1.s
#source: attr-wchar-0.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_wchar_t: 2 bytes
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c62x-c67x.d
0,0 → 1,10
#name: C6X arch attribute merging, c62x c67x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c62x.s
#source: attr-arch-c67x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C67x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x-c67x.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x c67x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x.s
#source: attr-arch-c67x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-16-16.d
0,0 → 1,12
#name: C6X array attribute merging, 16 16
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-16.s
#source: attr-array-16.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 16-byte
Tag_ABI_array_object_align_expected: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-u15-b.s
0,0 → 1,3
.text
.nocmp
ldb .D2T2 *+b14(s),b1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-1.s
0,0 → 1,3
.c6xabi_attribute Tag_ABI_PID, 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr.ld
0,0 → 1,9
EXTERN (__c6xabi_DSBT_BASE);
SECTIONS
{
. = 0x80;
.data : { PROVIDE_HIDDEN (__c6xabi_DSBT_BASE = .); *(.data*) }
. = 0x10000000;
.text : { *(.text*) }
/DISCARD/ : { *(*) }
}
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-local-2.s
0,0 → 1,12
.text
.nocmp
mvk .S1 d,a1
mvkl .S1 e,a2
mvkh .S1 f-0x100,a3
.data
d:
.word 0
e:
.word 0
f:
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-unknown-1.d
0,0 → 1,6
#name: C6X unknown attribute merging 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-unknown-54-1.s
#source: attr-unknown-54-1.s
#error: .*error: unknown mandatory EABI object attribute 54
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-noindex.dd
0,0 → 1,67
 
tmpdir/libtestn\.so: file format elf32-tic6x-le
 
 
Disassembly of section \.plt:
 
10000020 <sub0@plt-0x18>:
10000020: 0100036e ldw \.D2T2 \*\+b14\(12\),b2
10000024: 0080046e ldw \.D2T2 \*\+b14\(16\),b1
10000028: 00004000 nop 3
1000002c: 00080362 b \.S2 b2
10000030: 00008000 nop 5
10000034: 00000000 nop 1
 
10000038 <sub0@plt>:
10000038: 0100056e ldw \.D2T2 \*\+b14\(20\),b2
1000003c: 0000002a mvk \.S2 0,b0
10000040: 0000006a mvkh \.S2 0,b0
10000044: 00002000 nop 2
10000048: 00080362 b \.S2 b2
1000004c: 00008000 nop 5
 
10000050 <sub@plt>:
10000050: 0100066e ldw \.D2T2 \*\+b14\(24\),b2
10000054: 0000062a mvk \.S2 12,b0
10000058: 0000006a mvkh \.S2 0,b0
1000005c: 00002000 nop 2
10000060: 00080362 b \.S2 b2
10000064: 00008000 nop 5
\.\.\.
 
Disassembly of section \.text:
 
10000080 <sub1>:
10000080: 000c0362 b \.S2 b3
10000084: 00008000 nop 5
 
10000088 <sub0>:
10000088: 07be09c2 sub \.D2 b15,16,b15
1000008c: 01bc62f6 stw \.D2T2 b3,\*\+b15\(12\)
10000090: 073c82f6 stw \.D2T2 b14,\*\+b15\(16\)
10000094: 0700006e ldw \.D2T2 \*\+b14\(0\),b14
10000098: 0ffffa12 b \.S2 10000050 <sub@plt>
1000009c: 0ffff712 b \.S2 10000038 <sub0@plt>
100000a0: 0ffffc12 b \.S2 10000080 <sub1>
100000a4: 01bc62e6 ldw \.D2T2 \*\+b15\(12\),b3
100000a8: 073c82e6 ldw \.D2T2 \*\+b15\(16\),b14
100000ac: 07800852 addk \.S2 16,b15
100000b0: 00004000 nop 3
100000b4: 000c0362 b \.S2 b3
100000b8: 00008000 nop 5
100000bc: 00000000 nop 1
 
100000c0 <sub>:
100000c0: 07be09c2 sub \.D2 b15,16,b15
100000c4: 023c62f4 stw \.D2T1 a4,\*\+b15\(12\)
100000c8: 003c62e4 ldw \.D2T1 \*\+b15\(12\),a0
100000cc: 00006000 nop 4
100000d0: 00014940 add \.D1 a0,10,a0
100000d4: 020008f0 or \.D1 0,a0,a4
100000d8: 07be0942 add \.D2 b15,16,b15
100000dc: 000c0362 b \.S2 b3
100000e0: 0300096e ldw \.D2T2 \*\+b14\(36\),b6
100000e4: 0380076e ldw \.D2T2 \*\+b14\(28\),b7
100000e8: 0400086e ldw \.D2T2 \*\+b14\(32\),b8
100000ec: 04800c6e ldw \.D2T2 \*\+b14\(48\),b9
\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1r.rd
0,0 → 1,109
There are 15 section headers, starting at offset 0x2178:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 00003c 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 0000803c 00103c 0000a0 10 A 3 5 4
\[ 3\] \.dynstr STRTAB 000080dc 0010dc 00001d 00 A 0 0 1
\[ 4\] \.rela\.got RELA 000080fc 0010fc 000024 0c A 2 8 4
\[ 5\] \.rela\.neardata RELA 00008120 001120 000018 0c A 2 9 4
\[ 6\] \.dynamic DYNAMIC 00008138 001138 000090 08 WA 3 0 4
\[ 7\] \.text PROGBITS 10000000 002000 0000c0 00 AX 0 0 32
\[ 8\] \.got PROGBITS 100000c0 0020c0 000020 00 WA 0 0 4
\[ 9\] \.neardata PROGBITS 100000e0 0020e0 00000c 00 WA 0 0 4
\[10\] \.bss NOBITS 100000ec 0020ec 000004 00 WA 0 0 4
\[11\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020ec 000019 00 0 0 1
\[12\] \.shstrtab STRTAB 00000000 002105 000071 00 0 0 1
\[13\] \.symtab SYMTAB 00000000 0023d0 000190 10 14 18 4
\[14\] \.strtab STRTAB 00000000 002560 00005e 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is EXEC \(Executable file\)
Entry point 0x10000000
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x001c8 0x001c8 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x000ec 0x000f0 RWE 0x1000
DYNAMIC 0x001138 0x00008138 0x00008138 0x00090 0x00090 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.dynamic
01 \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x1138 contains 13 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x80dc
0x00000006 \(SYMTAB\) 0x803c
0x0000000a \(STRSZ\) 29 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000015 \(DEBUG\) 0x0
0x70000000 \(C6000_DSBT_BASE\) 0x100000c0
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x0
0x00000007 \(RELA\) 0x80fc
0x00000008 \(RELASZ\) 60 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x10fc contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000d8 00000401 R_C6000_ABS32 100000ec \.bss \+ 0
100000d4 00000701 R_C6000_ABS32 100000e8 b \+ 0
100000dc 00000901 R_C6000_ABS32 100000e0 a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1120 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000e0 00000101 R_C6000_ABS32 10000000 \.text \+ 8
100000e4 00000801 R_C6000_ABS32 00000000 g1 \+ 0
 
Symbol table '\.dynsym' contains 10 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000000 0 SECTION LOCAL DEFAULT 7
2: 100000c0 0 SECTION LOCAL DEFAULT 8
3: 100000e0 0 SECTION LOCAL DEFAULT 9
4: 100000ec 0 SECTION LOCAL DEFAULT 10
5: 100000ec 4 OBJECT LOCAL DEFAULT 10 c
6: 100000c0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 100000e8 4 OBJECT GLOBAL DEFAULT 9 b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 100000e0 4 OBJECT GLOBAL DEFAULT 9 a
 
Symbol table '\.symtab' contains 25 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 0000803c 0 SECTION LOCAL DEFAULT 2
3: 000080dc 0 SECTION LOCAL DEFAULT 3
4: 000080fc 0 SECTION LOCAL DEFAULT 4
5: 00008120 0 SECTION LOCAL DEFAULT 5
6: 00008138 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 100000c0 0 SECTION LOCAL DEFAULT 8
9: 100000e0 0 SECTION LOCAL DEFAULT 9
10: 100000ec 0 SECTION LOCAL DEFAULT 10
11: 00000000 0 SECTION LOCAL DEFAULT 11
12: 10000000 0 FUNC LOCAL HIDDEN 7 sub1
13: 10000080 0 NOTYPE LOCAL DEFAULT 7 fish
14: 00008138 0 OBJECT LOCAL DEFAULT 6 _DYNAMIC
15: 100000ec 4 OBJECT LOCAL DEFAULT 10 c
16: 100000cc 0 OBJECT LOCAL DEFAULT 8 _GLOBAL_OFFSET_TABLE_
17: 100000c0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
18: 100000e8 4 OBJECT GLOBAL DEFAULT 9 b
19: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
20: 00000000 0 NOTYPE WEAK DEFAULT UND g1
21: 100000e4 4 OBJECT GLOBAL DEFAULT 9 g2
22: 10000008 52 FUNC GLOBAL DEFAULT 7 sub0
23: 100000e0 4 OBJECT GLOBAL DEFAULT 9 a
24: 10000040 52 FUNC GLOBAL DEFAULT 7 sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-6.d
0,0 → 1,13
#ld: -T unwind.ld
#source unwind-4.s
#as: -mgenerate-rel
#objdump: -s
 
.*: file format.*
 
#...
Contents of section .c6xabi.exidx:
9000 (00f8ff7f 07020083 1cf8ff7f 7af8ff7f|7ffff800 83000207 7ffff81c 7ffff87a) .*
9010 (38f8ff7f 07020083 56f8ff7f 01000000|7ffff838 83000207 7ffff856 00000001) .*
Contents of section .far:
#...
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-global.s
0,0 → 1,11
.text
.nocmp
ldw .d2t2 *+B14($DSBT_index(__c6xabi_DSBT_BASE)), B14
ldw .d2t1 *+B14($GOT(a)), A1
 
.global a
.section .neardata,"aw",@progbits
.align 2
.type a, @object
.size a, 4
a:
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1rb.sd
0,0 → 1,6
 
tmpdir/static-app-1rb: file format elf32-tic6x-be
 
Contents of section \.got:
[ \t]*100000c0 00000000 00000000 00000000 00000000 .*
[ \t]*100000d0 00000000 00000000 100000ec 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c62x-c674x.d
0,0 → 1,10
#name: C6X arch attribute merging, c62x c674x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c62x.s
#source: attr-arch-c674x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c62x-c62x.d
0,0 → 1,10
#name: C6X arch attribute merging, c62x c62x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c62x.s
#source: attr-arch-c62x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C62x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x-c62x.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x c62x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x.s
#source: attr-arch-c62x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C64x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1b.sd
0,0 → 1,6
 
tmpdir/static-app-1b: file format elf32-tic6x-be
 
Contents of section \.got:
[ \t]*100000c0 00000000 00000000 00000000 00000000 .*
[ \t]*100000d0 00000000 00000000 100000f4 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-pcr-s12-2.d
0,0 → 1,5
#name: C6X relocation underflow, PCR_S12
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x0fffdffc
#source: reloc-overflow-pcr-s12.s
#error: .*relocation truncated to fit: R_C6000_PCR_S12.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-02.d
0,0 → 1,11
#name: C6X wchar_t attribute merging, 0 2
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-wchar-0.s
#source: attr-wchar-2.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_wchar_t: 4 bytes
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1rb.dd
0,0 → 1,52
 
tmpdir/static-app-1rb: file format elf32-tic6x-be
 
 
Disassembly of section \.text:
 
10000000 <sub1>:
10000000:[ \t]*000c0362[ \t]*b \.S2 b3
10000004:[ \t]*00008000[ \t]*nop 5
 
10000008 <sub0>:
10000008:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
1000000c:[ \t]*01bc62f6[ \t]*stw \.D2T2 b3,\*\+b15\(12\)
10000010:[ \t]*073c82f6[ \t]*stw \.D2T2 b14,\*\+b15\(16\)
10000014:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000018:[ \t]*00000812[ \t]*b \.S2 10000040 <sub>
1000001c:[ \t]*00000112[ \t]*b \.S2 10000008 <sub0>
10000020:[ \t]*0ffffc12[ \t]*b \.S2 10000000 <sub1>
10000024:[ \t]*01bc62e6[ \t]*ldw \.D2T2 \*\+b15\(12\),b3
10000028:[ \t]*073c82e6[ \t]*ldw \.D2T2 \*\+b15\(16\),b14
1000002c:[ \t]*07800852[ \t]*addk \.S2 16,b15
10000030:[ \t]*00004000[ \t]*nop 3
10000034:[ \t]*000c0362[ \t]*b \.S2 b3
10000038:[ \t]*00008000[ \t]*nop 5
1000003c:[ \t]*00000000[ \t]*nop 1
 
10000040 <sub>:
10000040:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
10000044:[ \t]*023c62f4[ \t]*stw \.D2T1 a4,\*\+b15\(12\)
10000048:[ \t]*003c62e4[ \t]*ldw \.D2T1 \*\+b15\(12\),a0
1000004c:[ \t]*00006000[ \t]*nop 4
10000050:[ \t]*00014940[ \t]*add \.D1 a0,10,a0
10000054:[ \t]*020008f0[ \t]*or \.D1 0,a0,a4
10000058:[ \t]*07be0942[ \t]*add \.D2 b15,16,b15
1000005c:[ \t]*000c0362[ \t]*b \.S2 b3
10000060:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
10000064:[ \t]*0380056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b7
10000068:[ \t]*0400066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b8
1000006c:[ \t]*04800b6e[ \t]*ldw \.D2T2 \*\+b14\(44\),b9
[ \t]*\.\.\.
 
10000080 <fish>:
10000080:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000084:[ \t]*1ffff112[ \t]*callp \.S2 10000008 <sub0>,b3
10000088:[ \t]*0ffff112[ \t]*b \.S2 10000008 <sub0>
1000008c:[ \t]*10000012[ \t]*callp \.S2 10000080 <fish>,b3
10000090:[ \t]*00000012[ \t]*b \.S2 10000080 <fish>
10000094:[ \t]*0200086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b4
10000098:[ \t]*02800a6e[ \t]*ldw \.D2T2 \*\+b14\(40\),b5
1000009c:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
100000a0:[ \t]*0300056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b6
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-4-416.d
0,0 → 1,12
#name: C6X array attribute merging, 4 416
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-4.s
#source: attr-array-416.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 4-byte
Tag_ABI_array_object_align_expected: 4-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-00.d
0,0 → 1,10
#name: C6X PID attribute merging, 0 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pid-0.s
#source: attr-pid-0.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pic-11.d
0,0 → 1,11
#name: C6X PIC attribute merging, 1 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pic-1.s
#source: attr-pic-1.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_PIC: Code addressing position-independent
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-4-816.d
0,0 → 1,6
#name: C6X array attribute merging, 4 816
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-4.s
#source: attr-array-816.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/dsbt.ld
0,0 → 1,67
OUTPUT_FORMAT("elf32-tic6x-le", "elf32-tic6x-le",
"elf32-tic6x-le")
EXTERN (__c6xabi_DSBT_BASE);
SECTIONS
{
PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x0)); . = SEGMENT_START("text-segment", 0x0) + SIZEOF_HEADERS;
. = 0x8000;
.hash : { *(.hash) }
.gnu.hash : { *(.gnu.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
.gnu.version : { *(.gnu.version) }
.gnu.version_d : { *(.gnu.version_d) }
.gnu.version_r : { *(.gnu.version_r) }
.rel.init : { *(.rel.init) }
.rela.init : { *(.rela.init) }
.rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
.rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
.rel.fini : { *(.rel.fini) }
.rela.fini : { *(.rela.fini) }
.rel.const : { *(.rel.const .rel.const.* .rel.gnu.linkonce.r.*) }
.rela.const : { *(.rela.const .rela.const.* .rela.gnu.linkonce.r.*) }
.rel.rodata : { *(.rel.rodata .rel.rodata.*) }
.rela.rodata : { *(.rela.rodata .rela.rodata.*) }
.rel.data.rel.ro : { *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) }
.rela.data.rel.ro : { *(.rela.data.rel.ro* .rela.gnu.linkonce.d.rel.ro.*) }
.rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
.rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
.rel.fardata : { *(.rel.fardata .rel.fardata.*) }
.rela.fardata : { *(.rela.fardata .rela.fardata.*) }
.rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) }
.rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) }
.rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) }
.rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) }
.rel.ctors : { *(.rel.ctors) }
.rela.ctors : { *(.rela.ctors) }
.rel.dtors : { *(.rel.dtors) }
.rela.dtors : { *(.rela.dtors) }
.rel.got : { *(.rel.got) }
.rela.got : { *(.rela.got) }
.rel.neardata : { *(.rel.neardata .rel.neardata.* .rel.gnu.linkonce.s.*) }
.rela.neardata : { *(.rela.neardata .rela.neardata.* .rela.gnu.linkonce.s.*) }
.rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.sb.*) }
.rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.sb.*) }
.rel.neardata2 : { *(.rel.neardata2 .rel.neardata2.* .rel.gnu.linkonce.s2.*) }
.rela.neardata2 : { *(.rela.neardata2 .rela.neardata2.* .rela.gnu.linkonce.s2.*) }
.rel.bss2 : { *(.rel.bss2 .rel.bss2.* .rel.gnu.linkonce.sb2.*) }
.rela.bss2 : { *(.rela.bss2 .rela.bss2.* .rela.gnu.linkonce.sb2.*) }
.rel.far : { *(.rel.far .rel.far.* .rel.gnu.linkonce.b.*) }
.rela.far : { *(.rela.far .rela.far.* .rela.gnu.linkonce.b.*) }
.data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) }
.dynamic : { *(.dynamic) }
.data : { *(.data*) }
. = 0x10000000;
.rel.plt : { *(.rel.plt) }
.rela.plt : { *(.rela.plt) }
.plt : { *(.plt) }
.text : { *(.text*) }
PROVIDE_HIDDEN (__c6xabi_DSBT_BASE = .);
.got : { *(.dsbt) *(.got.plt) *(.igot.plt) *(.got) *(.igot) }
.neardata : { *(.neardata .neardata.* .gnu.linkonce.s.*) }
.rodata : { *(.rodata .rodata.*) }
.bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.sb.*) *(.scommon) }
.far : { *(.dynfar) *(.far .far.* .gnu.linkonce.b.*) *(COMMON) }
.c6xabi.attributes 0 : { KEEP (*(.c6xabi.attributes)) KEEP (*(.gnu.attributes)) }
/DISCARD/ : { *(*) }
}
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1r.sd
0,0 → 1,6
 
tmpdir/static-app-1r: file format elf32-tic6x-le
 
Contents of section \.got:
[ \t]*100000c0 00000000 00000000 00000000 00000000 .*
[ \t]*100000d0 00000000 00000000 ec000010 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1b.dd
0,0 → 1,56
 
tmpdir/static-app-1b: file format elf32-tic6x-be
 
 
Disassembly of section \.text:
 
10000000 <sub1>:
10000000:[ \t]*000c0362[ \t]*b \.S2 b3
10000004:[ \t]*00008000[ \t]*nop 5
 
10000008 <sub0>:
10000008:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
1000000c:[ \t]*01bc62f6[ \t]*stw \.D2T2 b3,\*\+b15\(12\)
10000010:[ \t]*073c82f6[ \t]*stw \.D2T2 b14,\*\+b15\(16\)
10000014:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000018:[ \t]*00000812[ \t]*b \.S2 10000040 <sub>
1000001c:[ \t]*00000112[ \t]*b \.S2 10000008 <sub0>
10000020:[ \t]*0ffffc12[ \t]*b \.S2 10000000 <sub1>
10000024:[ \t]*01bc62e6[ \t]*ldw \.D2T2 \*\+b15\(12\),b3
10000028:[ \t]*073c82e6[ \t]*ldw \.D2T2 \*\+b15\(16\),b14
1000002c:[ \t]*07800852[ \t]*addk \.S2 16,b15
10000030:[ \t]*00004000[ \t]*nop 3
10000034:[ \t]*000c0362[ \t]*b \.S2 b3
10000038:[ \t]*00008000[ \t]*nop 5
1000003c:[ \t]*00000000[ \t]*nop 1
 
10000040 <sub>:
10000040:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
10000044:[ \t]*023c62f4[ \t]*stw \.D2T1 a4,\*\+b15\(12\)
10000048:[ \t]*003c62e4[ \t]*ldw \.D2T1 \*\+b15\(12\),a0
1000004c:[ \t]*00006000[ \t]*nop 4
10000050:[ \t]*00014940[ \t]*add \.D1 a0,10,a0
10000054:[ \t]*020008f0[ \t]*or \.D1 0,a0,a4
10000058:[ \t]*07be0942[ \t]*add \.D2 b15,16,b15
1000005c:[ \t]*000c0362[ \t]*b \.S2 b3
10000060:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
10000064:[ \t]*0380056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b7
10000068:[ \t]*0400066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b8
1000006c:[ \t]*04800d6e[ \t]*ldw \.D2T2 \*\+b14\(52\),b9
[ \t]*\.\.\.
 
10000080 <fish>:
10000080:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000084:[ \t]*1ffff112[ \t]*callp \.S2 10000008 <sub0>,b3
10000088:[ \t]*0ffff112[ \t]*b \.S2 10000008 <sub0>
1000008c:[ \t]*10000012[ \t]*callp \.S2 10000080 <fish>,b3
10000090:[ \t]*00000012[ \t]*b \.S2 10000080 <fish>
10000094:[ \t]*0200086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b4
10000098:[ \t]*02800a6e[ \t]*ldw \.D2T2 \*\+b14\(40\),b5
1000009c:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
100000a0:[ \t]*0300056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b6
100000a4:[ \t]*020003a8[ \t]*mvk \.S1 7,a4
100000a8:[ \t]*02000068[ \t]*mvkh \.S1 0,a4
100000ac:[ \t]*028002a8[ \t]*mvk \.S1 5,a5
100000b0:[ \t]*02800068[ \t]*mvkh \.S1 0,a5
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x+-c67x.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x+ c67x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x+.s
#source: attr-arch-c67x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C67x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shared-nopid.d
0,0 → 1,5
#name: C6X shared library without PIC code
#as: -mlittle-endian -mdsbt -mpic
#ld: -melf32_tic6x_le -Tdsbt-inrange.ld --dsbt-index 4 -shared
#source: got-reloc-global.s
#warning: non-PID code
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-local-r-rel.d
0,0 → 1,62
#name: C6X PC-relative relocations, local symbols, -r, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -r -melf32_tic6x_le
#source: pcrel-reloc-local-1.s
#source: pcrel-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+00000000[ \t]+nop 1
[ \t]*4:[ \t]+00800162[ \t]+addkpc \.S2 0 <[^>]*>,b1,0
[ \t]*4: R_C6000_PCR_S7[ \t]+\.text\.1
[ \t]*8:[ \t]+00810162[ \t]+addkpc \.S2 4 <[^>]*>,b1,0
[ \t]*8: R_C6000_PCR_S7[ \t]+\.text\.1
[ \t]*c:[ \t]+00000012[ \t]+b \.S2 0 <[^>]*>
[ \t]*c: R_C6000_PCR_S21[ \t]+\.text\.1
[ \t]*10:[ \t]+00000092[ \t]+b \.S2 4 <[^>]*>
[ \t]*10: R_C6000_PCR_S21[ \t]+\.text\.1
[ \t]*14:[ \t]+00801022[ \t]+bdec \.S2 0 <[^>]*>,b1
[ \t]*14: R_C6000_PCR_S10[ \t]+\.text\.1
[ \t]*18:[ \t]+00803022[ \t]+bdec \.S2 4 <[^>]*>,b1
[ \t]*18: R_C6000_PCR_S10[ \t]+\.text\.1
[ \t]*1c:[ \t]+00000122[ \t]+bnop \.S2 0 <[^>]*>,0
[ \t]*1c: R_C6000_PCR_S12[ \t]+\.text\.1
[ \t]*20:[ \t]+00010122[ \t]+bnop \.S2 24 <[^>]*>,0
[ \t]*20: R_C6000_PCR_S12[ \t]+\.text\.1
[ \t]*\.\.\.
[ \t]*44:[ \t]+00080122[ \t]+bnop \.S2 60 <[^>]*>,0
[ \t]*44: R_C6000_PCR_S12[ \t]+\.text\.1
[ \t]*48:[ \t]+00090122[ \t]+bnop \.S2 64 <[^>]*>,0
[ \t]*48: R_C6000_PCR_S12[ \t]+\.text\.1
[ \t]*4c:[ \t]+00811022[ \t]+bdec \.S2 60 <[^>]*>,b1
[ \t]*4c: R_C6000_PCR_S10[ \t]+\.text\.1
[ \t]*50:[ \t]+00813022[ \t]+bdec \.S2 64 <[^>]*>,b1
[ \t]*50: R_C6000_PCR_S10[ \t]+\.text\.1
[ \t]*54:[ \t]+00000412[ \t]+b \.S2 60 <[^>]*>
[ \t]*54: R_C6000_PCR_S21[ \t]+\.text\.1
[ \t]*58:[ \t]+00000492[ \t]+b \.S2 64 <[^>]*>
[ \t]*58: R_C6000_PCR_S21[ \t]+\.text\.1
[ \t]*5c:[ \t]+00880162[ \t]+addkpc \.S2 60 <[^>]*>,b1,0
[ \t]*5c: R_C6000_PCR_S7[ \t]+\.text\.1
[ \t]*60:[ \t]+00890162[ \t]+addkpc \.S2 84 <[^>]*>,b1,0
[ \t]*60: R_C6000_PCR_S7[ \t]+\.text\.1
[ \t]*\.\.\.
 
Disassembly of section \.text\.1:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+00000000[ \t]+nop 1
 
0+4 <[^>]*>:
[ \t]*\.\.\.
 
0+20 <[^>]*>:
[ \t]*20:[ \t]+00000000[ \t]+nop 1
 
0+24 <[^>]*>:
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-416-16.d
0,0 → 1,12
#name: C6X array attribute merging, 416 16
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-416.s
#source: attr-array-16.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 16-byte
Tag_ABI_array_object_align_expected: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1b.rd
0,0 → 1,123
There are 17 section headers, starting at offset 0x21c4:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 000048 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 00008048 001048 0000d0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 00008118 001118 000025 00 A 0 0 1
\[ 4\] \.rela\.got RELA 00008140 001140 000024 0c A 2 10 4
\[ 5\] \.rela\.neardata RELA 00008164 001164 000018 0c A 2 11 4
\[ 6\] \.dynamic DYNAMIC 0000817c 00117c 0000a8 08 WA 3 0 4
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c A 2 8 4
\[ 8\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
\[ 9\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
\[10\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
\[11\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4
\[12\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4
\[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1
\[14\] \.shstrtab STRTAB 00000000 002149 00007b 00 0 0 1
\[15\] \.symtab SYMTAB 00000000 00246c 0001a0 10 16 19 4
\[16\] \.strtab STRTAB 00000000 00260c 000059 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is DYN \(Shared object file\)
Entry point 0x10000080
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x00224 0x00224 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x00130 0x00134 RWE 0x1000
DYNAMIC 0x00117c 0x0000817c 0x0000817c 0x000a8 0x000a8 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x117c contains 16 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x8118
0x00000006 \(SYMTAB\) 0x8048
0x0000000a \(STRSZ\) 37 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x70000000 \(C6000_DSBT_BASE\) 0x10000100
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x2
0x00000003 \(PLTGOT\) 0x1000010c
0x00000002 \(PLTRELSZ\) 24 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x8140
0x00000008 \(RELASZ\) 84 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x1140 contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000120 00000501 R_C6000_ABS32 10000130 \.bss \+ 0
1000011c 00000701 R_C6000_ABS32 00000000 b \+ 0
10000124 00000b01 R_C6000_ABS32 10000128 a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1164 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000128 00000a01 R_C6000_ABS32 10000088 sub0 \+ 0
1000012c 00000801 R_C6000_ABS32 00000000 g1 \+ 0
 
Relocation section '\.rela\.plt' at offset 0x2000 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000114 00000a1b R_C6000_JUMP_SLOT 10000088 sub0 \+ 0
10000118 00000c1b R_C6000_JUMP_SLOT 100000c0 sub \+ 0
 
Symbol table '\.dynsym' contains 13 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 8
2: 10000080 0 SECTION LOCAL DEFAULT 9
3: 10000100 0 SECTION LOCAL DEFAULT 10
4: 10000128 0 SECTION LOCAL DEFAULT 11
5: 10000130 0 SECTION LOCAL DEFAULT 12
6: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 00000000 0 NOTYPE WEAK DEFAULT UND b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
10: 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
11: 10000128 4 OBJECT GLOBAL DEFAULT 11 a
12: 100000c0 52 FUNC GLOBAL DEFAULT 9 sub
 
Symbol table '\.symtab' contains 26 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 00008048 0 SECTION LOCAL DEFAULT 2
3: 00008118 0 SECTION LOCAL DEFAULT 3
4: 00008140 0 SECTION LOCAL DEFAULT 4
5: 00008164 0 SECTION LOCAL DEFAULT 5
6: 0000817c 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 10000020 0 SECTION LOCAL DEFAULT 8
9: 10000080 0 SECTION LOCAL DEFAULT 9
10: 10000100 0 SECTION LOCAL DEFAULT 10
11: 10000128 0 SECTION LOCAL DEFAULT 11
12: 10000130 0 SECTION LOCAL DEFAULT 12
13: 00000000 0 SECTION LOCAL DEFAULT 13
14: 10000080 0 FUNC LOCAL HIDDEN 9 sub1
15: 0000817c 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
16: 10000130 4 OBJECT LOCAL DEFAULT 12 c
17: 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
18: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
19: 00000000 0 NOTYPE WEAK DEFAULT UND b
20: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
21: 00000000 0 NOTYPE WEAK DEFAULT UND g1
22: 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
23: 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
24: 10000128 4 OBJECT GLOBAL DEFAULT 11 a
25: 100000c0 52 FUNC GLOBAL DEFAULT 9 sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-local-1-rel.s
0,0 → 1,11
.text
.nocmp
mvk .S1 a,a1
mvkl .S1 b,a2
.data
a:
.word 0
b:
.word 0
c:
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-local-r.d
0,0 → 1,27
#name: C6X MVK relocations, local symbols, -r
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: mvk-reloc-local-1.s
#source: mvk-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*0: R_C6000_ABS_S16[ \t]+\.data
[ \t]*4:[ \t]+01000028[ \t]+mvk \.S1 0,a2
[ \t]*4: R_C6000_ABS_L16[ \t]+\.data\+0x4
[ \t]*8:[ \t]+01800068[ \t]+mvkh \.S1 0,a3
[ \t]*8: R_C6000_ABS_H16[ \t]+\.data\+0x8
[ \t]*\.\.\.
[ \t]*20:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*20: R_C6000_ABS_S16[ \t]+\.data\+0xc
[ \t]*24:[ \t]+01000028[ \t]+mvk \.S1 0,a2
[ \t]*24: R_C6000_ABS_L16[ \t]+\.data\+0x10
[ \t]*28:[ \t]+01800068[ \t]+mvkh \.S1 0,a3
[ \t]*28: R_C6000_ABS_H16[ \t]+\.data\+0xffffff14
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-local.d
0,0 → 1,21
#name: C6X MVK relocations, local symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld
#source: mvk-reloc-local-1.s
#source: mvk-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+00804028[ \t]+mvk \.S1 128,a1
10000004:[ \t]+01004228[ \t]+mvk \.S1 132,a2
10000008:[ \t]+01800068[ \t]+mvkh \.S1 0,a3
[ \t]*\.\.\.
10000020:[ \t]+00804628[ \t]+mvk \.S1 140,a1
10000024:[ \t]+01004828[ \t]+mvk \.S1 144,a2
10000028:[ \t]+01ffffe8[ \t]+mvkh \.S1 4294901760,a3
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/discard-unwind.ld
0,0 → 1,15
/* Script for unwinding ld tests */
SECTIONS
{
/* Read-only sections, merged into text segment: */
. = 0x8000;
.text :
{
*(.before)
*(.text)
*(.after)
*(.c6xabi.extab*)
} =0
/DISCARD/ : { *(.c6xabi.exidx*) }
.c6xabi.attribues 0 : { *(.c6xabi.atttributes) }
}
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-0.s
0,0 → 1,15
.c6xabi_attribute Tag_ABI_wchar_t, 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-pcr-s21-2.d
0,0 → 1,5
#name: C6X relocation underflow, PCR_S21
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x0fbffffc
#source: reloc-overflow-pcr-s21.s
#error: .*relocation truncated to fit: R_C6000_PCR_S21.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1r.dd
0,0 → 1,52
 
tmpdir/static-app-1r: file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <sub1>:
10000000:[ \t]*000c0362[ \t]*b \.S2 b3
10000004:[ \t]*00008000[ \t]*nop 5
 
10000008 <sub0>:
10000008:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
1000000c:[ \t]*01bc62f6[ \t]*stw \.D2T2 b3,\*\+b15\(12\)
10000010:[ \t]*073c82f6[ \t]*stw \.D2T2 b14,\*\+b15\(16\)
10000014:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000018:[ \t]*00000812[ \t]*b \.S2 10000040 <sub>
1000001c:[ \t]*00000112[ \t]*b \.S2 10000008 <sub0>
10000020:[ \t]*0ffffc12[ \t]*b \.S2 10000000 <sub1>
10000024:[ \t]*01bc62e6[ \t]*ldw \.D2T2 \*\+b15\(12\),b3
10000028:[ \t]*073c82e6[ \t]*ldw \.D2T2 \*\+b15\(16\),b14
1000002c:[ \t]*07800852[ \t]*addk \.S2 16,b15
10000030:[ \t]*00004000[ \t]*nop 3
10000034:[ \t]*000c0362[ \t]*b \.S2 b3
10000038:[ \t]*00008000[ \t]*nop 5
1000003c:[ \t]*00000000[ \t]*nop 1
 
10000040 <sub>:
10000040:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
10000044:[ \t]*023c62f4[ \t]*stw \.D2T1 a4,\*\+b15\(12\)
10000048:[ \t]*003c62e4[ \t]*ldw \.D2T1 \*\+b15\(12\),a0
1000004c:[ \t]*00006000[ \t]*nop 4
10000050:[ \t]*00014940[ \t]*add \.D1 a0,10,a0
10000054:[ \t]*020008f0[ \t]*or \.D1 0,a0,a4
10000058:[ \t]*07be0942[ \t]*add \.D2 b15,16,b15
1000005c:[ \t]*000c0362[ \t]*b \.S2 b3
10000060:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
10000064:[ \t]*0380056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b7
10000068:[ \t]*0400066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b8
1000006c:[ \t]*04800b6e[ \t]*ldw \.D2T2 \*\+b14\(44\),b9
[ \t]*\.\.\.
 
10000080 <fish>:
10000080:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000084:[ \t]*1ffff112[ \t]*callp \.S2 10000008 <sub0>,b3
10000088:[ \t]*0ffff112[ \t]*b \.S2 10000008 <sub0>
1000008c:[ \t]*10000012[ \t]*callp \.S2 10000080 <fish>,b3
10000090:[ \t]*00000012[ \t]*b \.S2 10000080 <fish>
10000094:[ \t]*0200086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b4
10000098:[ \t]*02800a6e[ \t]*ldw \.D2T2 \*\+b14\(40\),b5
1000009c:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
100000a0:[ \t]*0300056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b6
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-11.d
0,0 → 1,11
#name: C6X wchar_t attribute merging, 1 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-wchar-1.s
#source: attr-wchar-1.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_wchar_t: 2 bytes
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-overflow.d
0,0 → 1,5
#name: C6X GOT relocations, overflow
#as: -mlittle-endian -mdsbt
#ld: -melf32_tic6x_le -Tdsbt-overflow.ld --dsbt-index 4 -shared
#source: got-reloc-global.s
#error: .*relocation truncated to fit: R_C6000_SBR_GOT_U15_W.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/ehtype-reloc-1.d
0,0 → 1,14
#name: EHTYPE relocations (RELA)
#as: -mlittle-endian
#ld: -melf32_tic6x_le --defsym s1=0x2a -Tdsbt-inrange.ld
#source: ehtype-reloc-1.s
#objdump: -s -j.data -j.text -j.got
 
.*: *file format elf32-tic6x-le
 
Contents of section .data:
8018 78563412 .*
Contents of section .text:
10000000 08000000 0c000000 .*
Contents of section .got:
2001fff4 00000000 00000000 2a000000 18800000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x+-c674x.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x+ c674x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x+.s
#source: attr-arch-c674x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1b.rd
0,0 → 1,127
There are 18 section headers, starting at offset 0x2168:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 000044 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 00008044 001044 0000c0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 00008104 001104 000036 00 A 0 0 1
\[ 4\] \.rela\.got RELA 0000813c 00113c 000018 0c A 2 11 4
\[ 5\] \.rela\.neardata RELA 00008154 001154 000018 0c A 2 12 4
\[ 6\] \.rela\.bss RELA 0000816c 00116c 00000c 0c A 2 13 4
\[ 7\] \.dynamic DYNAMIC 00008178 001178 0000b8 08 WA 3 0 4
\[ 8\] \.rela\.plt RELA 10000000 002000 00000c 0c A 2 9 4
\[ 9\] \.plt PROGBITS 10000020 002020 000040 18 AX 0 0 32
\[10\] \.text PROGBITS 10000060 002060 000040 00 AX 0 0 32
\[11\] \.got PROGBITS 100000a0 0020a0 000020 00 WA 0 0 4
\[12\] \.neardata PROGBITS 100000c0 0020c0 00000c 00 WA 0 0 4
\[13\] \.bss NOBITS 100000cc 0020cc 000004 00 WA 0 0 4
\[14\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020cc 000019 00 0 0 1
\[15\] \.shstrtab STRTAB 00000000 0020e5 000080 00 0 0 1
\[16\] \.symtab SYMTAB 00000000 002438 0001a0 10 17 20 4
\[17\] \.strtab STRTAB 00000000 0025d8 000055 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is EXEC \(Executable file\)
Entry point 0x10000060
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x00230 0x00230 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x000cc 0x000d0 RWE 0x1000
DYNAMIC 0x001178 0x00008178 0x00008178 0x000b8 0x000b8 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.rela\.bss \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x1178 contains 18 entries:
Tag Type Name/Value
0x00000001 \(NEEDED\) Shared library: \[tmpdir/libtestb\.so\]
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x8104
0x00000006 \(SYMTAB\) 0x8044
0x0000000a \(STRSZ\) 54 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000015 \(DEBUG\) 0x0
0x70000000 \(C6000_DSBT_BASE\) 0x100000a0
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x0
0x00000003 \(PLTGOT\) 0x100000ac
0x00000002 \(PLTRELSZ\) 12 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x813c
0x00000008 \(RELASZ\) 72 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x113c contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000b8 00000701 R_C6000_ABS32 100000c0 b \+ 0
100000bc 00000b01 R_C6000_ABS32 100000cc a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1154 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000c4 00000801 R_C6000_ABS32 00000000 g1 \+ 0
100000c8 00000901 R_C6000_ABS32 00000000 g2 \+ 0
 
Relocation section '\.rela\.bss' at offset 0x116c contains 1 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000cc 00000b1a R_C6000_COPY 100000cc a \+ 0
 
Relocation section '\.rela\.plt' at offset 0x2000 contains 1 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000b4 00000a1b R_C6000_JUMP_SLOT 00000000 sub0 \+ 0
 
Symbol table '\.dynsym' contains 12 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 9
2: 10000060 0 SECTION LOCAL DEFAULT 10
3: 100000a0 0 SECTION LOCAL DEFAULT 11
4: 100000c0 0 SECTION LOCAL DEFAULT 12
5: 100000cc 0 SECTION LOCAL DEFAULT 13
6: 100000a0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 100000c0 4 OBJECT GLOBAL DEFAULT 12 b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 00000000 0 OBJECT WEAK DEFAULT UND g2
10: 00000000 0 FUNC GLOBAL DEFAULT UND sub0
11: 100000cc 4 OBJECT GLOBAL DEFAULT 13 a
 
Symbol table '\.symtab' contains 26 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 00008044 0 SECTION LOCAL DEFAULT 2
3: 00008104 0 SECTION LOCAL DEFAULT 3
4: 0000813c 0 SECTION LOCAL DEFAULT 4
5: 00008154 0 SECTION LOCAL DEFAULT 5
6: 0000816c 0 SECTION LOCAL DEFAULT 6
7: 00008178 0 SECTION LOCAL DEFAULT 7
8: 10000000 0 SECTION LOCAL DEFAULT 8
9: 10000020 0 SECTION LOCAL DEFAULT 9
10: 10000060 0 SECTION LOCAL DEFAULT 10
11: 100000a0 0 SECTION LOCAL DEFAULT 11
12: 100000c0 0 SECTION LOCAL DEFAULT 12
13: 100000cc 0 SECTION LOCAL DEFAULT 13
14: 00000000 0 SECTION LOCAL DEFAULT 14
15: 10000060 0 NOTYPE LOCAL DEFAULT 10 fish
16: 100000c4 8 OBJECT LOCAL DEFAULT 12 w
17: 00008178 0 OBJECT LOCAL DEFAULT 7 _DYNAMIC
18: 100000ac 0 OBJECT LOCAL DEFAULT 11 _GLOBAL_OFFSET_TABLE_
19: 100000a0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
20: 100000c0 4 OBJECT GLOBAL DEFAULT 12 b
21: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
22: 00000000 0 NOTYPE WEAK DEFAULT UND g1
23: 00000000 0 OBJECT WEAK DEFAULT UND g2
24: 00000000 0 FUNC GLOBAL DEFAULT UND sub0
25: 100000cc 4 OBJECT GLOBAL DEFAULT 13 a
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-2.s
0,0 → 1,127
.c6xabi_attribute Tag_ABI_PID, 2
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-u15-w-1.d
0,0 → 1,5
#name: C6X relocation overflow, SBR_U15_W
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --defsym s=0x20080
#source: reloc-overflow-sbr-u15-w.s
#error: .*relocation truncated to fit: R_C6000_SBR_U15_W.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1r.rd
0,0 → 1,123
There are 17 section headers, starting at offset 0x21c4:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 000048 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 00008048 001048 0000d0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 00008118 001118 000025 00 A 0 0 1
\[ 4\] \.rela\.got RELA 00008140 001140 000024 0c A 2 10 4
\[ 5\] \.rela\.neardata RELA 00008164 001164 000018 0c A 2 11 4
\[ 6\] \.dynamic DYNAMIC 0000817c 00117c 0000a8 08 WA 3 0 4
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c A 2 8 4
\[ 8\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
\[ 9\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
\[10\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
\[11\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4
\[12\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4
\[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1
\[14\] \.shstrtab STRTAB 00000000 002149 00007b 00 0 0 1
\[15\] \.symtab SYMTAB 00000000 00246c 0001a0 10 16 19 4
\[16\] \.strtab STRTAB 00000000 00260c 000059 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is DYN \(Shared object file\)
Entry point 0x10000080
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x00224 0x00224 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x00130 0x00134 RWE 0x1000
DYNAMIC 0x00117c 0x0000817c 0x0000817c 0x000a8 0x000a8 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x117c contains 16 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x8118
0x00000006 \(SYMTAB\) 0x8048
0x0000000a \(STRSZ\) 37 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x70000000 \(C6000_DSBT_BASE\) 0x10000100
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x2
0x00000003 \(PLTGOT\) 0x1000010c
0x00000002 \(PLTRELSZ\) 24 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x8140
0x00000008 \(RELASZ\) 84 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x1140 contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000120 00000501 R_C6000_ABS32 10000130 \.bss \+ 0
1000011c 00000701 R_C6000_ABS32 00000000 b \+ 0
10000124 00000b01 R_C6000_ABS32 10000128 a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1164 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000128 00000a01 R_C6000_ABS32 10000088 sub0 \+ 0
1000012c 00000801 R_C6000_ABS32 00000000 g1 \+ 0
 
Relocation section '\.rela\.plt' at offset 0x2000 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000114 00000a1b R_C6000_JUMP_SLOT 10000088 sub0 \+ 0
10000118 00000c1b R_C6000_JUMP_SLOT 100000c0 sub \+ 0
 
Symbol table '\.dynsym' contains 13 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 8
2: 10000080 0 SECTION LOCAL DEFAULT 9
3: 10000100 0 SECTION LOCAL DEFAULT 10
4: 10000128 0 SECTION LOCAL DEFAULT 11
5: 10000130 0 SECTION LOCAL DEFAULT 12
6: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 00000000 0 NOTYPE WEAK DEFAULT UND b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
10: 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
11: 10000128 4 OBJECT GLOBAL DEFAULT 11 a
12: 100000c0 52 FUNC GLOBAL DEFAULT 9 sub
 
Symbol table '\.symtab' contains 26 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 00008048 0 SECTION LOCAL DEFAULT 2
3: 00008118 0 SECTION LOCAL DEFAULT 3
4: 00008140 0 SECTION LOCAL DEFAULT 4
5: 00008164 0 SECTION LOCAL DEFAULT 5
6: 0000817c 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 10000020 0 SECTION LOCAL DEFAULT 8
9: 10000080 0 SECTION LOCAL DEFAULT 9
10: 10000100 0 SECTION LOCAL DEFAULT 10
11: 10000128 0 SECTION LOCAL DEFAULT 11
12: 10000130 0 SECTION LOCAL DEFAULT 12
13: 00000000 0 SECTION LOCAL DEFAULT 13
14: 10000080 0 FUNC LOCAL HIDDEN 9 sub1
15: 0000817c 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
16: 10000130 4 OBJECT LOCAL DEFAULT 12 c
17: 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
18: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
19: 00000000 0 NOTYPE WEAK DEFAULT UND b
20: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
21: 00000000 0 NOTYPE WEAK DEFAULT UND g1
22: 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
23: 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
24: 10000128 4 OBJECT GLOBAL DEFAULT 11 a
25: 100000c0 52 FUNC GLOBAL DEFAULT 9 sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c62x-c67x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c62x c67x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c62x.s
#source: attr-arch-c67x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C67x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x+-c62x.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x+ c62x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x+.s
#source: attr-arch-c62x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C67x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-unknown-2.d
0,0 → 1,6
#name: C6X unknown attribute merging 2
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-unknown-55-a.s
#source: attr-unknown-55-a.s
#error: .*error: unknown mandatory EABI object attribute 55
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-global-rel.d
0,0 → 1,20
#name: C6X MVK relocations, global symbols, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s0=0 --defsym s7fff=0x7fff --defsym s80000000=0x80000000 --defsym sffff8000=0xffff8000 --defsym sffffffff=0xffffffff
#source: mvk-reloc-global-rel.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+00800028[ \t]+mvk \.S1 0,a1
10000004:[ \t]+00ffffa8[ \t]+mvk \.S1 -1,a1
10000008:[ \t]+00800028[ \t]+mvk \.S1 0,a1
1000000c:[ \t]+00ffff28[ \t]+mvk \.S1 -2,a1
10000010:[ \t]+00c00028[ \t]+mvk \.S1 -32768,a1
10000014:[ \t]+00c00028[ \t]+mvk \.S1 -32768,a1
10000018:[ \t]+00bfffa8[ \t]+mvk \.S1 32767,a1
1000001c:[ \t]+00000000[ \t]+nop 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/ehtype-reloc-1.s
0,0 → 1,9
.globl s2
.globl _start
.text
_start:
.ehtype s1
.ehtype s2
.data
s2:
.word 0x12345678
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-local-1.s
0,0 → 1,5
.data
a:
.word a
b:
.word b
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x-c674x.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x c674x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x.s
#source: attr-arch-c674x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind.ld
0,0 → 1,20
/* Script for unwinding ld tests */
SECTIONS
{
/* Read-only sections, merged into text segment: */
. = 0x8000;
.text :
{
*(.before)
*(.text)
*(.after)
*(.c6xabi.extab*)
} =0
. = 0x9000;
.c6xabi.exidx : { *(.c6xabi.exidx*) }
. = 0xa000;
.got : { *(.got) *(.got.plt)}
. = 0x12340000;
.far : { *(.far) }
.c6xabi.attribues 0 : { *(.c6xabi.atttributes) }
}
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1r.rd
0,0 → 1,115
There are 17 section headers, starting at offset 0x2158:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 00003c 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 0000803c 00103c 0000a0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 000080dc 0010dc 000030 00 A 0 0 1
\[ 4\] \.rela\.got RELA 0000810c 00110c 000018 0c A 2 10 4
\[ 5\] \.rela\.bss RELA 00008124 001124 00000c 0c A 2 12 4
\[ 6\] \.dynamic DYNAMIC 00008130 001130 0000b8 08 WA 3 0 4
\[ 7\] \.rela\.plt RELA 10000000 002000 00000c 0c A 2 8 4
\[ 8\] \.plt PROGBITS 10000020 002020 000040 18 AX 0 0 32
\[ 9\] \.text PROGBITS 10000060 002060 000040 00 AX 0 0 32
\[10\] \.got PROGBITS 100000a0 0020a0 000020 00 WA 0 0 4
\[11\] \.neardata PROGBITS 100000c0 0020c0 000004 00 WA 0 0 4
\[12\] \.bss NOBITS 100000c4 0020c4 000004 00 WA 0 0 4
\[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020c4 000019 00 0 0 1
\[14\] \.shstrtab STRTAB 00000000 0020dd 00007b 00 0 0 1
\[15\] \.symtab SYMTAB 00000000 002400 000160 10 16 18 4
\[16\] \.strtab STRTAB 00000000 002560 00004d 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is EXEC \(Executable file\)
Entry point 0x10000060
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x001e8 0x001e8 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x000c4 0x000c8 RWE 0x1000
DYNAMIC 0x001130 0x00008130 0x00008130 0x000b8 0x000b8 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.bss \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x1130 contains 18 entries:
Tag Type Name/Value
0x00000001 \(NEEDED\) Shared library: \[tmpdir/libtestr\.so\]
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x80dc
0x00000006 \(SYMTAB\) 0x803c
0x0000000a \(STRSZ\) 48 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000015 \(DEBUG\) 0x0
0x70000000 \(C6000_DSBT_BASE\) 0x100000a0
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x0
0x00000003 \(PLTGOT\) 0x100000ac
0x00000002 \(PLTRELSZ\) 12 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x810c
0x00000008 \(RELASZ\) 48 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x110c contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000b8 00000701 R_C6000_ABS32 100000c0 b \+ 0
100000bc 00000901 R_C6000_ABS32 100000c4 a \+ 0
 
Relocation section '\.rela\.bss' at offset 0x1124 contains 1 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000c4 0000091a R_C6000_COPY 100000c4 a \+ 0
 
Relocation section '\.rela\.plt' at offset 0x2000 contains 1 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000b4 0000081b R_C6000_JUMP_SLOT 00000000 sub0 \+ 0
 
Symbol table '\.dynsym' contains 10 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 8
2: 10000060 0 SECTION LOCAL DEFAULT 9
3: 100000a0 0 SECTION LOCAL DEFAULT 10
4: 100000c0 0 SECTION LOCAL DEFAULT 11
5: 100000c4 0 SECTION LOCAL DEFAULT 12
6: 100000a0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 100000c0 4 OBJECT GLOBAL DEFAULT 11 b
8: 00000000 0 FUNC GLOBAL DEFAULT UND sub0
9: 100000c4 4 OBJECT GLOBAL DEFAULT 12 a
 
Symbol table '\.symtab' contains 22 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 0000803c 0 SECTION LOCAL DEFAULT 2
3: 000080dc 0 SECTION LOCAL DEFAULT 3
4: 0000810c 0 SECTION LOCAL DEFAULT 4
5: 00008124 0 SECTION LOCAL DEFAULT 5
6: 00008130 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 10000020 0 SECTION LOCAL DEFAULT 8
9: 10000060 0 SECTION LOCAL DEFAULT 9
10: 100000a0 0 SECTION LOCAL DEFAULT 10
11: 100000c0 0 SECTION LOCAL DEFAULT 11
12: 100000c4 0 SECTION LOCAL DEFAULT 12
13: 00000000 0 SECTION LOCAL DEFAULT 13
14: 10000060 0 NOTYPE LOCAL DEFAULT 9 fish
15: 00008130 0 OBJECT LOCAL DEFAULT 6 _DYNAMIC
16: 100000ac 0 OBJECT LOCAL DEFAULT 10 _GLOBAL_OFFSET_TABLE_
17: 100000a0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
18: 100000c0 4 OBJECT GLOBAL DEFAULT 11 b
19: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
20: 00000000 0 FUNC GLOBAL DEFAULT UND sub0
21: 100000c4 4 OBJECT GLOBAL DEFAULT 12 a
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1b.sd
0,0 → 1,7
 
tmpdir/libtestb\.so: file format elf32-tic6x-be
 
Contents of section \.got:
[ \t]*10000100 00000000 00000000 00000000 00000000 .*
[ \t]*10000110 00000000 10000020 10000020 00000000 .*
[ \t]*10000120 10000130 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-global-rel.d
0,0 → 1,20
#name: C6X PC-relative relocations, global symbols, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s7a=0x0fffff00 --defsym s7b=0x100000fc --defsym s10a=0x0ffff800 --defsym s10b=0x100007fc --defsym s12a=0x0fffe000 --defsym s12b=0x10001ffc --defsym s21a=0x0fc00000 --defsym s21b=0x103ffffc
#source: pcrel-reloc-global.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+00c00162[ \t]+addkpc \.S2 fffff00 <[^>]*>,b1,0
10000004:[ \t]+00bf0162[ \t]+addkpc \.S2 100000fc <[^>]*>,b1,0
10000008:[ \t]+08000012[ \t]+b \.S2 fc00000 <[^>]*>
1000000c:[ \t]+07ffff92[ \t]+b \.S2 103ffffc <[^>]*>
10000010:[ \t]+00c01022[ \t]+bdec \.S2 ffff800 <[^>]*>,b1
10000014:[ \t]+00bff022[ \t]+bdec \.S2 100007fc <[^>]*>,b1
10000018:[ \t]+08000122[ \t]+bnop \.S2 fffe000 <[^>]*>,0
1000001c:[ \t]+07ff0122[ \t]+bnop \.S2 10001ffc <[^>]*>,0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1.rd
0,0 → 1,112
There are 15 section headers, starting at offset 0x2180:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 00003c 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 0000803c 00103c 0000a0 10 A 3 5 4
\[ 3\] \.dynstr STRTAB 000080dc 0010dc 00001d 00 A 0 0 1
\[ 4\] \.rela\.got RELA 000080fc 0010fc 000024 0c A 2 8 4
\[ 5\] \.rela\.neardata RELA 00008120 001120 000030 0c A 2 9 4
\[ 6\] \.dynamic DYNAMIC 00008150 001150 000090 08 WA 3 0 4
\[ 7\] \.text PROGBITS 10000000 002000 0000c0 00 AX 0 0 32
\[ 8\] \.got PROGBITS 100000c0 0020c0 000020 00 WA 0 0 4
\[ 9\] \.neardata PROGBITS 100000e0 0020e0 000014 00 WA 0 0 4
\[10\] \.bss NOBITS 100000f4 0020f4 000004 00 WA 0 0 4
\[11\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 0020f4 000019 00 0 0 1
\[12\] \.shstrtab STRTAB 00000000 00210d 000071 00 0 0 1
\[13\] \.symtab SYMTAB 00000000 0023d8 0001a0 10 14 19 4
\[14\] \.strtab STRTAB 00000000 002578 000060 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is EXEC \(Executable file\)
Entry point 0x10000000
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x001e0 0x001e0 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x000f4 0x000f8 RWE 0x1000
DYNAMIC 0x001150 0x00008150 0x00008150 0x00090 0x00090 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.dynamic
01 \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x1150 contains 13 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x80dc
0x00000006 \(SYMTAB\) 0x803c
0x0000000a \(STRSZ\) 29 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000015 \(DEBUG\) 0x0
0x70000000 \(C6000_DSBT_BASE\) 0x100000c0
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x0
0x00000007 \(RELA\) 0x80fc
0x00000008 \(RELASZ\) 84 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x10fc contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000d8 00000401 R_C6000_ABS32 100000f4 \.bss \+ 0
100000d4 00000701 R_C6000_ABS32 100000e8 b \+ 0
100000dc 00000901 R_C6000_ABS32 100000e0 a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1120 contains 4 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
100000e0 00000101 R_C6000_ABS32 10000000 \.text \+ 8
100000e4 00000801 R_C6000_ABS32 00000000 g1 \+ 0
100000ec 00000801 R_C6000_ABS32 00000000 g1 \+ 0
100000f0 00000301 R_C6000_ABS32 100000e0 \.neardata \+ 4
 
Symbol table '\.dynsym' contains 10 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000000 0 SECTION LOCAL DEFAULT 7
2: 100000c0 0 SECTION LOCAL DEFAULT 8
3: 100000e0 0 SECTION LOCAL DEFAULT 9
4: 100000f4 0 SECTION LOCAL DEFAULT 10
5: 100000f4 4 OBJECT LOCAL DEFAULT 10 c
6: 100000c0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 100000e8 4 OBJECT GLOBAL DEFAULT 9 b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 100000e0 4 OBJECT GLOBAL DEFAULT 9 a
 
Symbol table '\.symtab' contains 26 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 0000803c 0 SECTION LOCAL DEFAULT 2
3: 000080dc 0 SECTION LOCAL DEFAULT 3
4: 000080fc 0 SECTION LOCAL DEFAULT 4
5: 00008120 0 SECTION LOCAL DEFAULT 5
6: 00008150 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 100000c0 0 SECTION LOCAL DEFAULT 8
9: 100000e0 0 SECTION LOCAL DEFAULT 9
10: 100000f4 0 SECTION LOCAL DEFAULT 10
11: 00000000 0 SECTION LOCAL DEFAULT 11
12: 10000000 0 FUNC LOCAL HIDDEN 7 sub1
13: 10000080 0 NOTYPE LOCAL DEFAULT 7 fish
14: 100000ec 8 OBJECT LOCAL DEFAULT 9 w
15: 00008150 0 OBJECT LOCAL DEFAULT 6 _DYNAMIC
16: 100000f4 4 OBJECT LOCAL DEFAULT 10 c
17: 100000cc 0 OBJECT LOCAL DEFAULT 8 _GLOBAL_OFFSET_TABLE_
18: 100000c0 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
19: 100000e8 4 OBJECT GLOBAL DEFAULT 9 b
20: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
21: 00000000 0 NOTYPE WEAK DEFAULT UND g1
22: 100000e4 4 OBJECT GLOBAL DEFAULT 9 g2
23: 10000008 52 FUNC GLOBAL DEFAULT 7 sub0
24: 100000e0 4 OBJECT GLOBAL DEFAULT 9 a
25: 10000040 52 FUNC GLOBAL DEFAULT 7 sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-compatibility-gnu-other.d
0,0 → 1,6
#name: C6X compatibility attribute merging, gnu other
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-compatibility-gnu.s
#source: attr-compatibility-other.s
#error: .*Object has vendor-specific contents that must be processed by the 'other' toolchain
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-20.d
0,0 → 1,11
#name: C6X wchar_t attribute merging, 2 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-wchar-2.s
#source: attr-wchar-0.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_wchar_t: 4 bytes
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-global-rel.s
0,0 → 1,14
.globl s0
.globl s7fff
.globl s80000000
.globl sffff8000
.globl sffffffff
.text
.nocmp
mvkl .S1 s80000000,a1
mvkl .S1 sffffffff,a1
mvkl .S1 s0,a1
mvkl .S1 sffffffff+0xffffffff,a1
mvk .S1 sffff8000,a1
mvk .S1 s0-0x8000,a1
mvk .S1 s7fff,a1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-816-8.d
0,0 → 1,10
#name: C6X stack attribute merging, 816 8
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-stack-816.s
#source: attr-stack-8.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-10-10.d
0,0 → 1,11
#name: C6X conformance attribute merging, 10 10
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-conformance-10.s
#source: attr-conformance-10.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ABI_conformance: "1.0"
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/weak-data.d
0,0 → 1,11
#name: C6X ABS relocs to undefined weak symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld
#source: weak.s
#objdump: -s -j .data
 
.*: *file format elf32-tic6x-le
 
 
Contents of section \.data:
[ \t]+0+80 00000000 00000000[ \t]+\.*[ \t]*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-01.d
0,0 → 1,11
#name: C6X PID attribute merging, 0 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pid-0.s
#source: attr-pid-1.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1b.sd
0,0 → 1,6
 
tmpdir/shlib-dynapp-1b: file format elf32-tic6x-be
 
Contents of section \.got:
[ \t]*100000a0 00000000 00000000 00000000 00000000 .*
[ \t]*100000b0 00000000 10000020 00000000 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/common.ld
0,0 → 1,11
SECTIONS
{
. = 0x80;
.far : { *(.far) *(COMMON) }
. = 0x100;
.bss : { *(.scommon) }
 
. = 0x10000000;
.text : { *(.text*) }
/DISCARD/ : { *(*) }
}
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1r.sd
0,0 → 1,7
 
tmpdir/libtestr\.so: file format elf32-tic6x-le
 
Contents of section \.got:
[ \t]*10000100 00000000 00000000 00000000 00000000 .*
[ \t]*10000110 00000000 20000010 20000010 00000000 .*
[ \t]*10000120 30010010 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-816-816.d
0,0 → 1,11
#name: C6X stack attribute merging, 816 816
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-stack-816.s
#source: attr-stack-816.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_stack_align_preserved: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1b.dd
0,0 → 1,67
 
tmpdir/libtestb\.so: file format elf32-tic6x-be
 
 
Disassembly of section \.plt:
 
10000020 <sub0@plt-0x18>:
10000020:[ \t]*0100036e[ \t]*ldw \.D2T2 \*\+b14\(12\),b2
10000024:[ \t]*0080046e[ \t]*ldw \.D2T2 \*\+b14\(16\),b1
10000028:[ \t]*00004000[ \t]*nop 3
1000002c:[ \t]*00080362[ \t]*b \.S2 b2
10000030:[ \t]*00008000[ \t]*nop 5
10000034:[ \t]*00000000[ \t]*nop 1
 
10000038 <sub0@plt>:
10000038:[ \t]*0100056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b2
1000003c:[ \t]*0000002a[ \t]*mvk \.S2 0,b0
10000040:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
10000044:[ \t]*00002000[ \t]*nop 2
10000048:[ \t]*00080362[ \t]*b \.S2 b2
1000004c:[ \t]*00008000[ \t]*nop 5
 
10000050 <sub@plt>:
10000050:[ \t]*0100066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b2
10000054:[ \t]*0000062a[ \t]*mvk \.S2 12,b0
10000058:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
1000005c:[ \t]*00002000[ \t]*nop 2
10000060:[ \t]*00080362[ \t]*b \.S2 b2
10000064:[ \t]*00008000[ \t]*nop 5
\.\.\.
 
Disassembly of section \.text:
 
10000080 <sub1>:
10000080:[ \t]*000c0362[ \t]*b \.S2 b3
10000084:[ \t]*00008000[ \t]*nop 5
 
10000088 <sub0>:
10000088:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
1000008c:[ \t]*01bc62f6[ \t]*stw \.D2T2 b3,\*\+b15\(12\)
10000090:[ \t]*073c82f6[ \t]*stw \.D2T2 b14,\*\+b15\(16\)
10000094:[ \t]*0700026e[ \t]*ldw \.D2T2 \*\+b14\(8\),b14
10000098:[ \t]*0ffffa12[ \t]*b \.S2 10000050 <sub@plt>
1000009c:[ \t]*0ffff712[ \t]*b \.S2 10000038 <sub0@plt>
100000a0:[ \t]*0ffffc12[ \t]*b \.S2 10000080 <sub1>
100000a4:[ \t]*01bc62e6[ \t]*ldw \.D2T2 \*\+b15\(12\),b3
100000a8:[ \t]*073c82e6[ \t]*ldw \.D2T2 \*\+b15\(16\),b14
100000ac:[ \t]*07800852[ \t]*addk \.S2 16,b15
100000b0:[ \t]*00004000[ \t]*nop 3
100000b4:[ \t]*000c0362[ \t]*b \.S2 b3
100000b8:[ \t]*00008000[ \t]*nop 5
100000bc:[ \t]*00000000[ \t]*nop 1
 
100000c0 <sub>:
100000c0:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
100000c4:[ \t]*023c62f4[ \t]*stw \.D2T1 a4,\*\+b15\(12\)
100000c8:[ \t]*003c62e4[ \t]*ldw \.D2T1 \*\+b15\(12\),a0
100000cc:[ \t]*00006000[ \t]*nop 4
100000d0:[ \t]*00014940[ \t]*add \.D1 a0,10,a0
100000d4:[ \t]*020008f0[ \t]*or \.D1 0,a0,a4
100000d8:[ \t]*07be0942[ \t]*add \.D2 b15,16,b15
100000dc:[ \t]*000c0362[ \t]*b \.S2 b3
100000e0:[ \t]*0300096e[ \t]*ldw \.D2T2 \*\+b14\(36\),b6
100000e4:[ \t]*0380076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b7
100000e8:[ \t]*0400086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b8
100000ec:[ \t]*04800c6e[ \t]*ldw \.D2T2 \*\+b14\(48\),b9
\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x-c64x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x c64x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x.s
#source: attr-arch-c64x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-8.s
0,0 → 1,2
.c6xabi_attribute Tag_ABI_array_object_align_expected, 0
.c6xabi_attribute Tag_ABI_array_object_alignment, 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-abs16-1.d
0,0 → 1,5
#name: C6X relocation overflow, ABS16
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x10000
#source: reloc-overflow-abs16.s
#error: .*relocation truncated to fit: R_C6000_ABS16.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-11-none.d
0,0 → 1,10
#name: C6X conformance attribute merging, 11 none
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-conformance-11.s
#source: attr-conformance-none.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-local-2-rel.s
0,0 → 1,21
.text
.nocmp
ldw .D2T2 *+b14(e),b1
ldw .D2T2 *+b14(f),b1
ldh .D2T2 *+b14(f),b1
ldh .D2T2 *+b14(g),b1
ldb .D2T2 *+b14(g),b1
ldb .D2T2 *+b14(h),b1
mvk .S1 $dpr_byte(h),a1
mvkl .S1 $dpr_byte(g),a1
mvkl .S1 $dpr_hword(f),a1
mvkl .S1 $dpr_word(e),a1
.data
e:
.word 0
f:
.short 0
g:
.byte 0
h:
.byte 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c674x-c64x.d
0,0 → 1,10
#name: C6X arch attribute merging, c674x c64x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c674x.s
#source: attr-arch-c64x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1r.sd
0,0 → 1,6
 
tmpdir/shlib-dynapp-1r: file format elf32-tic6x-le
 
Contents of section \.got:
[ \t]*100000a0 00000000 00000000 00000000 00000000 .*
[ \t]*100000b0 00000000 20000010 00000000 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1b.dd
0,0 → 1,40
 
tmpdir/shlib-dynapp-1b: file format elf32-tic6x-be
 
 
Disassembly of section \.plt:
 
10000020 <sub0@plt-0x18>:
10000020:[ \t]*0100036e[ \t]*ldw \.D2T2 \*\+b14\(12\),b2
10000024:[ \t]*0080046e[ \t]*ldw \.D2T2 \*\+b14\(16\),b1
10000028:[ \t]*00004000[ \t]*nop 3
1000002c:[ \t]*00080362[ \t]*b \.S2 b2
10000030:[ \t]*00008000[ \t]*nop 5
10000034:[ \t]*00000000[ \t]*nop 1
 
10000038 <sub0@plt>:
10000038:[ \t]*0100056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b2
1000003c:[ \t]*0000002a[ \t]*mvk \.S2 0,b0
10000040:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
10000044:[ \t]*00002000[ \t]*nop 2
10000048:[ \t]*00080362[ \t]*b \.S2 b2
1000004c:[ \t]*00008000[ \t]*nop 5
[ \t]*\.\.\.
 
Disassembly of section \.text:
 
10000060 <fish>:
10000060:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000064:[ \t]*1ffffb12[ \t]*callp \.S2 10000038 <sub0@plt>,b3
10000068:[ \t]*0ffffb12[ \t]*b \.S2 10000038 <sub0@plt>
1000006c:[ \t]*10000012[ \t]*callp \.S2 10000060 <fish>,b3
10000070:[ \t]*00000012[ \t]*b \.S2 10000060 <fish>
10000074:[ \t]*02000b6e[ \t]*ldw \.D2T2 \*\+b14\(44\),b4
10000078:[ \t]*0280086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b5
1000007c:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
10000080:[ \t]*0300066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b6
10000084:[ \t]*020003a8[ \t]*mvk \.S1 7,a4
10000088:[ \t]*02000068[ \t]*mvkh \.S1 0,a4
1000008c:[ \t]*02800328[ \t]*mvk \.S1 6,a5
10000090:[ \t]*02800068[ \t]*mvkh \.S1 0,a5
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x+-c67x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x+ c67x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x+.s
#source: attr-arch-c67x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C67x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1r.dd
0,0 → 1,67
 
tmpdir/libtestr\.so: file format elf32-tic6x-le
 
 
Disassembly of section \.plt:
 
10000020 <sub0@plt-0x18>:
10000020:[ \t]*0100036e[ \t]*ldw \.D2T2 \*\+b14\(12\),b2
10000024:[ \t]*0080046e[ \t]*ldw \.D2T2 \*\+b14\(16\),b1
10000028:[ \t]*00004000[ \t]*nop 3
1000002c:[ \t]*00080362[ \t]*b \.S2 b2
10000030:[ \t]*00008000[ \t]*nop 5
10000034:[ \t]*00000000[ \t]*nop 1
 
10000038 <sub0@plt>:
10000038:[ \t]*0100056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b2
1000003c:[ \t]*0000002a[ \t]*mvk \.S2 0,b0
10000040:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
10000044:[ \t]*00002000[ \t]*nop 2
10000048:[ \t]*00080362[ \t]*b \.S2 b2
1000004c:[ \t]*00008000[ \t]*nop 5
 
10000050 <sub@plt>:
10000050:[ \t]*0100066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b2
10000054:[ \t]*0000062a[ \t]*mvk \.S2 12,b0
10000058:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
1000005c:[ \t]*00002000[ \t]*nop 2
10000060:[ \t]*00080362[ \t]*b \.S2 b2
10000064:[ \t]*00008000[ \t]*nop 5
\.\.\.
 
Disassembly of section \.text:
 
10000080 <sub1>:
10000080:[ \t]*000c0362[ \t]*b \.S2 b3
10000084:[ \t]*00008000[ \t]*nop 5
 
10000088 <sub0>:
10000088:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
1000008c:[ \t]*01bc62f6[ \t]*stw \.D2T2 b3,\*\+b15\(12\)
10000090:[ \t]*073c82f6[ \t]*stw \.D2T2 b14,\*\+b15\(16\)
10000094:[ \t]*0700026e[ \t]*ldw \.D2T2 \*\+b14\(8\),b14
10000098:[ \t]*0ffffa12[ \t]*b \.S2 10000050 <sub@plt>
1000009c:[ \t]*0ffff712[ \t]*b \.S2 10000038 <sub0@plt>
100000a0:[ \t]*0ffffc12[ \t]*b \.S2 10000080 <sub1>
100000a4:[ \t]*01bc62e6[ \t]*ldw \.D2T2 \*\+b15\(12\),b3
100000a8:[ \t]*073c82e6[ \t]*ldw \.D2T2 \*\+b15\(16\),b14
100000ac:[ \t]*07800852[ \t]*addk \.S2 16,b15
100000b0:[ \t]*00004000[ \t]*nop 3
100000b4:[ \t]*000c0362[ \t]*b \.S2 b3
100000b8:[ \t]*00008000[ \t]*nop 5
100000bc:[ \t]*00000000[ \t]*nop 1
 
100000c0 <sub>:
100000c0:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
100000c4:[ \t]*023c62f4[ \t]*stw \.D2T1 a4,\*\+b15\(12\)
100000c8:[ \t]*003c62e4[ \t]*ldw \.D2T1 \*\+b15\(12\),a0
100000cc:[ \t]*00006000[ \t]*nop 4
100000d0:[ \t]*00014940[ \t]*add \.D1 a0,10,a0
100000d4:[ \t]*020008f0[ \t]*or \.D1 0,a0,a4
100000d8:[ \t]*07be0942[ \t]*add \.D2 b15,16,b15
100000dc:[ \t]*000c0362[ \t]*b \.S2 b3
100000e0:[ \t]*0300096e[ \t]*ldw \.D2T2 \*\+b14\(36\),b6
100000e4:[ \t]*0380076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b7
100000e8:[ \t]*0400086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b8
100000ec:[ \t]*04800c6e[ \t]*ldw \.D2T2 \*\+b14\(48\),b9
\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1.sd
0,0 → 1,6
 
tmpdir/static-app-1: file format elf32-tic6x-le
 
Contents of section \.got:
[ \t]*100000c0 00000000 00000000 00000000 00000000 .*
[ \t]*100000d0 00000000 00000000 f4000010 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-1.s
0,0 → 1,6
.c6xabi_attribute Tag_ABI_wchar_t, 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x+-c674x.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x+ c674x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x+.s
#source: attr-arch-c674x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-12.d
0,0 → 1,6
#name: C6X wchar_t attribute merging, 1 2
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-wchar-1.s
#source: attr-wchar-2.s
#warning: .*differ in wchar_t size
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-s16-1.d
0,0 → 1,5
#name: C6X relocation overflow, SBR_S16
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --defsym s=0x8080
#source: reloc-overflow-sbr-s16.s
#error: .*relocation truncated to fit: R_C6000_SBR_S16.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-10.d
0,0 → 1,11
#name: C6X PID attribute merging, 1 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pid-1.s
#source: attr-pid-0.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1r.dd
0,0 → 1,36
 
tmpdir/shlib-dynapp-1r: file format elf32-tic6x-le
 
 
Disassembly of section \.plt:
 
10000020 <sub0@plt-0x18>:
10000020:[ \t]*0100036e[ \t]*ldw \.D2T2 \*\+b14\(12\),b2
10000024:[ \t]*0080046e[ \t]*ldw \.D2T2 \*\+b14\(16\),b1
10000028:[ \t]*00004000[ \t]*nop 3
1000002c:[ \t]*00080362[ \t]*b \.S2 b2
10000030:[ \t]*00008000[ \t]*nop 5
10000034:[ \t]*00000000[ \t]*nop 1
 
10000038 <sub0@plt>:
10000038:[ \t]*0100056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b2
1000003c:[ \t]*0000002a[ \t]*mvk \.S2 0,b0
10000040:[ \t]*0000006a[ \t]*mvkh \.S2 0,b0
10000044:[ \t]*00002000[ \t]*nop 2
10000048:[ \t]*00080362[ \t]*b \.S2 b2
1000004c:[ \t]*00008000[ \t]*nop 5
[ \t]*\.\.\.
 
Disassembly of section \.text:
 
10000060 <fish>:
10000060:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000064:[ \t]*1ffffb12[ \t]*callp \.S2 10000038 <sub0@plt>,b3
10000068:[ \t]*0ffffb12[ \t]*b \.S2 10000038 <sub0@plt>
1000006c:[ \t]*10000012[ \t]*callp \.S2 10000060 <fish>,b3
10000070:[ \t]*00000012[ \t]*b \.S2 10000060 <fish>
10000074:[ \t]*0200096e[ \t]*ldw \.D2T2 \*\+b14\(36\),b4
10000078:[ \t]*0280086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b5
1000007c:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
10000080:[ \t]*0300066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b6
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-u15-w-2.d
0,0 → 1,5
#name: C6X relocation underflow, SBR_U15_W
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --defsym s=0x7c
#source: reloc-overflow-sbr-u15-w.s
#error: .*relocation truncated to fit: R_C6000_SBR_U15_W.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-unknown-3.d
0,0 → 1,12
#name: C6X unknown attribute merging 3
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-unknown-71-a.s
#source: attr-unknown-71-a.s
#warning: .*warning: unknown EABI object attribute 71
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_unknown_71: "a"
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x-c67x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x c67x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x.s
#source: attr-arch-c67x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/static-app-1.dd
0,0 → 1,56
 
tmpdir/static-app-1: file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <sub1>:
10000000:[ \t]*000c0362[ \t]*b \.S2 b3
10000004:[ \t]*00008000[ \t]*nop 5
 
10000008 <sub0>:
10000008:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
1000000c:[ \t]*01bc62f6[ \t]*stw \.D2T2 b3,\*\+b15\(12\)
10000010:[ \t]*073c82f6[ \t]*stw \.D2T2 b14,\*\+b15\(16\)
10000014:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000018:[ \t]*00000812[ \t]*b \.S2 10000040 <sub>
1000001c:[ \t]*00000112[ \t]*b \.S2 10000008 <sub0>
10000020:[ \t]*0ffffc12[ \t]*b \.S2 10000000 <sub1>
10000024:[ \t]*01bc62e6[ \t]*ldw \.D2T2 \*\+b15\(12\),b3
10000028:[ \t]*073c82e6[ \t]*ldw \.D2T2 \*\+b15\(16\),b14
1000002c:[ \t]*07800852[ \t]*addk \.S2 16,b15
10000030:[ \t]*00004000[ \t]*nop 3
10000034:[ \t]*000c0362[ \t]*b \.S2 b3
10000038:[ \t]*00008000[ \t]*nop 5
1000003c:[ \t]*00000000[ \t]*nop 1
 
10000040 <sub>:
10000040:[ \t]*07be09c2[ \t]*sub \.D2 b15,16,b15
10000044:[ \t]*023c62f4[ \t]*stw \.D2T1 a4,\*\+b15\(12\)
10000048:[ \t]*003c62e4[ \t]*ldw \.D2T1 \*\+b15\(12\),a0
1000004c:[ \t]*00006000[ \t]*nop 4
10000050:[ \t]*00014940[ \t]*add \.D1 a0,10,a0
10000054:[ \t]*020008f0[ \t]*or \.D1 0,a0,a4
10000058:[ \t]*07be0942[ \t]*add \.D2 b15,16,b15
1000005c:[ \t]*000c0362[ \t]*b \.S2 b3
10000060:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
10000064:[ \t]*0380056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b7
10000068:[ \t]*0400066e[ \t]*ldw \.D2T2 \*\+b14\(24\),b8
1000006c:[ \t]*04800d6e[ \t]*ldw \.D2T2 \*\+b14\(52\),b9
[ \t]*\.\.\.
 
10000080 <fish>:
10000080:[ \t]*0700006e[ \t]*ldw \.D2T2 \*\+b14\(0\),b14
10000084:[ \t]*1ffff112[ \t]*callp \.S2 10000008 <sub0>,b3
10000088:[ \t]*0ffff112[ \t]*b \.S2 10000008 <sub0>
1000008c:[ \t]*10000012[ \t]*callp \.S2 10000080 <fish>,b3
10000090:[ \t]*00000012[ \t]*b \.S2 10000080 <fish>
10000094:[ \t]*0200086e[ \t]*ldw \.D2T2 \*\+b14\(32\),b4
10000098:[ \t]*02800a6e[ \t]*ldw \.D2T2 \*\+b14\(40\),b5
1000009c:[ \t]*0300076e[ \t]*ldw \.D2T2 \*\+b14\(28\),b6
100000a0:[ \t]*0300056e[ \t]*ldw \.D2T2 \*\+b14\(20\),b6
100000a4:[ \t]*020003a8[ \t]*mvk \.S1 7,a4
100000a8:[ \t]*02000068[ \t]*mvkh \.S1 0,a4
100000ac:[ \t]*028002a8[ \t]*mvk \.S1 5,a5
100000b0:[ \t]*02800068[ \t]*mvkh \.S1 0,a5
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-pcr-s7-1.d
0,0 → 1,5
#name: C6X relocation overflow, PCR_S7
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x10000100
#source: reloc-overflow-pcr-s7.s
#error: .*relocation truncated to fit: R_C6000_PCR_S7.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-compatibility-other.s
0,0 → 1,5
.c6xabi_attribute Tag_ABI_compatibility, 1, "other"
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-dsbt-0.s
0,0 → 1,5
.c6xabi_attribute Tag_ABI_DSBT, 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-local-2.s
0,0 → 1,8
.data
c:
.word d
d:
.word c
.short d
.byte c
.byte d
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-compatibility-other-gnu.d
0,0 → 1,6
#name: C6X compatibility attribute merging, other gnu
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-compatibility-other.s
#source: attr-compatibility-gnu.s
#error: .*Object tag '1, gnu' is incompatible with tag '1, other'
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-21.d
0,0 → 1,6
#name: C6X wchar_t attribute merging, 2 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-wchar-2.s
#source: attr-wchar-1.s
#warning: .*differ in wchar_t size
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-4-8.d
0,0 → 1,6
#name: C6X array attribute merging, 4 8
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-4.s
#source: attr-array-8.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-none-none.d
0,0 → 1,10
#name: C6X conformance attribute merging, none none
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-conformance-none.s
#source: attr-conformance-none.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-48.s
0,0 → 1,2
.c6xabi_attribute Tag_ABI_array_object_align_expected, 1
.c6xabi_attribute Tag_ABI_array_object_alignment, 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-10-11.d
0,0 → 1,10
#name: C6X conformance attribute merging, 10 11
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-conformance-10.s
#source: attr-conformance-11.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-10.s
0,0 → 1,10
.c6xabi_attribute Tag_ABI_conformance, "1.0"
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-local-r-rel.d
0,0 → 1,55
#name: C6X SB-relative relocations, local symbols, -r, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -r -melf32_tic6x_le
#source: sbr-reloc-local-1-rel.s
#source: sbr-reloc-local-2-rel.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
0+ <[^>]*>:
[ \t]*0:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
[ \t]*0: R_C6000_SBR_U15_W[ \t]+\.data
[ \t]*4:[ \t]+0080016e[ \t]+ldw \.D2T2 \*\+b14\(4\),b1
[ \t]*4: R_C6000_SBR_U15_W[ \t]+\.data
[ \t]*8:[ \t]+0080024e[ \t]+ldh \.D2T2 \*\+b14\(4\),b1
[ \t]*8: R_C6000_SBR_U15_H[ \t]+\.data
[ \t]*c:[ \t]+0080034e[ \t]+ldh \.D2T2 \*\+b14\(6\),b1
[ \t]*c: R_C6000_SBR_U15_H[ \t]+\.data
[ \t]*10:[ \t]+0080062e[ \t]+ldb \.D2T2 \*\+b14\(6\),b1
[ \t]*10: R_C6000_SBR_U15_B[ \t]+\.data
[ \t]*14:[ \t]+0080072e[ \t]+ldb \.D2T2 \*\+b14\(7\),b1
[ \t]*14: R_C6000_SBR_U15_B[ \t]+\.data
[ \t]*18:[ \t]+008003a8[ \t]+mvk \.S1 7,a1
[ \t]*18: R_C6000_SBR_S16[ \t]+\.data
[ \t]*1c:[ \t]+00800328[ \t]+mvk \.S1 6,a1
[ \t]*1c: R_C6000_SBR_L16_B[ \t]+\.data
[ \t]*20:[ \t]+00800128[ \t]+mvk \.S1 2,a1
[ \t]*20: R_C6000_SBR_L16_H[ \t]+\.data
[ \t]*24:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*24: R_C6000_SBR_L16_W[ \t]+\.data
[ \t]*\.\.\.
[ \t]*40:[ \t]+0080026e[ \t]+ldw \.D2T2 \*\+b14\(8\),b1
[ \t]*40: R_C6000_SBR_U15_W[ \t]+\.data
[ \t]*44:[ \t]+0080036e[ \t]+ldw \.D2T2 \*\+b14\(12\),b1
[ \t]*44: R_C6000_SBR_U15_W[ \t]+\.data
[ \t]*48:[ \t]+0080064e[ \t]+ldh \.D2T2 \*\+b14\(12\),b1
[ \t]*48: R_C6000_SBR_U15_H[ \t]+\.data
[ \t]*4c:[ \t]+0080074e[ \t]+ldh \.D2T2 \*\+b14\(14\),b1
[ \t]*4c: R_C6000_SBR_U15_H[ \t]+\.data
[ \t]*50:[ \t]+00800e2e[ \t]+ldb \.D2T2 \*\+b14\(14\),b1
[ \t]*50: R_C6000_SBR_U15_B[ \t]+\.data
[ \t]*54:[ \t]+00800f2e[ \t]+ldb \.D2T2 \*\+b14\(15\),b1
[ \t]*54: R_C6000_SBR_U15_B[ \t]+\.data
[ \t]*58:[ \t]+008007a8[ \t]+mvk \.S1 15,a1
[ \t]*58: R_C6000_SBR_S16[ \t]+\.data
[ \t]*5c:[ \t]+00800728[ \t]+mvk \.S1 14,a1
[ \t]*5c: R_C6000_SBR_L16_B[ \t]+\.data
[ \t]*60:[ \t]+00800328[ \t]+mvk \.S1 6,a1
[ \t]*60: R_C6000_SBR_L16_H[ \t]+\.data
[ \t]*64:[ \t]+00800128[ \t]+mvk \.S1 2,a1
[ \t]*64: R_C6000_SBR_L16_W[ \t]+\.data
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-8-8.d
0,0 → 1,10
#name: C6X array attribute merging, 8 8
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-8.s
#source: attr-array-8.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-416-8.d
0,0 → 1,10
#name: C6X array attribute merging, 416 8
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-416.s
#source: attr-array-8.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-816-4.d
0,0 → 1,6
#name: C6X array attribute merging, 816 4
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-816.s
#source: attr-array-4.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-02.d
0,0 → 1,11
#name: C6X PID attribute merging, 0 2
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pid-0.s
#source: attr-pid-2.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-global-addend-1.d
0,0 → 1,5
#name: C6X GOT relocations, addend
#as: -mlittle-endian -mdsbt
#ld: -melf32_tic6x_le -Tdsbt.ld --dsbt-index 4 -shared
#source: got-reloc-global-addend-1.s
#error: .*relocation R_C6000_SBR_GOT_U15_W with non-zero addend 4.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-global-rel.d
0,0 → 1,24
#name: C6X SB-relative relocations, global symbols, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -melf32_tic6x_le -Tsbr.ld --defsym sw1=0x80 --defsym sw2=0x2007c --defsym sh1=0x80 --defsym sh2=0x1007e --defsym sb1=0x80 --defsym sb2=0x807f --defsym sb16a=0xffff8080 --defsym sb16b=0x807f --defsym sbw=0x123456f8 --defsym shw=0x2468ad70 --defsym sww=0x48d15a60
#source: sbr-reloc-global-rel.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
10000004:[ \t]+00ffff6e[ \t]+ldw \.D2T2 \*\+b14\(131068\),b1
10000008:[ \t]+0080004e[ \t]+ldh \.D2T2 \*\+b14\(0\),b1
1000000c:[ \t]+00ffff4e[ \t]+ldh \.D2T2 \*\+b14\(65534\),b1
10000010:[ \t]+0080002e[ \t]+ldb \.D2T2 \*\+b14\(0\),b1
10000014:[ \t]+00ffff2e[ \t]+ldb \.D2T2 \*\+b14\(32767\),b1
10000018:[ \t]+00c00028[ \t]+mvk \.S1 -32768,a1
1000001c:[ \t]+00bfffa8[ \t]+mvk \.S1 32767,a1
10000020:[ \t]+00ab3c28[ \t]+mvk \.S1 22136,a1
10000024:[ \t]+00ab3c28[ \t]+mvk \.S1 22136,a1
10000028:[ \t]+00ab3c28[ \t]+mvk \.S1 22136,a1
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-816.s
0,0 → 1,2
.c6xabi_attribute Tag_ABI_stack_align_needed, 0
.c6xabi_attribute Tag_ABI_stack_align_preserved, 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/dsbt-overflow.ld
0,0 → 1,68
EXTERN (__c6xabi_DSBT_BASE);
SECTIONS
{
PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x0)); . = SEGMENT_START("text-segment", 0x0) + SIZEOF_HEADERS;
. = 0x8000;
.hash : { *(.hash) }
.gnu.hash : { *(.gnu.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
.gnu.version : { *(.gnu.version) }
.gnu.version_d : { *(.gnu.version_d) }
.gnu.version_r : { *(.gnu.version_r) }
.rel.init : { *(.rel.init) }
.rela.init : { *(.rela.init) }
.rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
.rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
.rel.fini : { *(.rel.fini) }
.rela.fini : { *(.rela.fini) }
.rel.const : { *(.rel.const .rel.const.* .rel.gnu.linkonce.r.*) }
.rela.const : { *(.rela.const .rela.const.* .rela.gnu.linkonce.r.*) }
.rel.rodata : { *(.rel.rodata .rel.rodata.*) }
.rela.rodata : { *(.rela.rodata .rela.rodata.*) }
.rel.data.rel.ro : { *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) }
.rela.data.rel.ro : { *(.rela.data.rel.ro* .rela.gnu.linkonce.d.rel.ro.*) }
.rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
.rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
.rel.fardata : { *(.rel.fardata .rel.fardata.*) }
.rela.fardata : { *(.rela.fardata .rela.fardata.*) }
.rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) }
.rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) }
.rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) }
.rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) }
.rel.ctors : { *(.rel.ctors) }
.rela.ctors : { *(.rela.ctors) }
.rel.dtors : { *(.rel.dtors) }
.rela.dtors : { *(.rela.dtors) }
.rel.got : { *(.rel.got) }
.rela.got : { *(.rela.got) }
.rel.neardata : { *(.rel.neardata .rel.neardata.* .rel.gnu.linkonce.s.*) }
.rela.neardata : { *(.rela.neardata .rela.neardata.* .rela.gnu.linkonce.s.*) }
.rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.sb.*) }
.rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.sb.*) }
.rel.neardata2 : { *(.rel.neardata2 .rel.neardata2.* .rel.gnu.linkonce.s2.*) }
.rela.neardata2 : { *(.rela.neardata2 .rela.neardata2.* .rela.gnu.linkonce.s2.*) }
.rel.bss2 : { *(.rel.bss2 .rel.bss2.* .rel.gnu.linkonce.sb2.*) }
.rela.bss2 : { *(.rela.bss2 .rela.bss2.* .rela.gnu.linkonce.sb2.*) }
.rel.far : { *(.rel.far .rel.far.* .rel.gnu.linkonce.b.*) }
.rela.far : { *(.rela.far .rela.far.* .rela.gnu.linkonce.b.*) }
.data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) }
.dynamic : { *(.dynamic) }
.data : { *(.data*) }
. = 0x10000000;
.rel.plt : { *(.rel.plt) }
.rela.plt : { *(.rela.plt) }
.plt : { *(.plt) }
.text : { *(.text*) }
. = 0x20000000;
PROVIDE_HIDDEN (__c6xabi_DSBT_BASE = .);
.dsbt : { *(.dsbt) }
. = 0x2001fff8;
.got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) }
.neardata : { *(.neardata .neardata.* .gnu.linkonce.s.*) }
.rodata : { *(.rodata .rodata.*) }
.bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.sb.*) *(.scommon) }
.far : { *(.dynfar) *(.far .far.* .gnu.linkonce.b.*) *(COMMON) }
.c6xabi.attributes 0 : { KEEP (*(.c6xabi.attributes)) KEEP (*(.gnu.attributes)) }
/DISCARD/ : { *(*) }
}
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-abs16-2.d
0,0 → 1,5
#name: C6X relocation underflow, ABS16
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0xffff7fff
#source: reloc-overflow-abs16.s
#error: .*relocation truncated to fit: R_C6000_ABS16.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1.s
0,0 → 1,44
.text
.nocmp
.align 2
.hidden sub1
.type sub1, @function
sub1:
ret .s2 B3
nop 5
 
.global sub0
.type sub0, @function
sub0:
sub .d2 B15, 16, B15
stw .d2t2 B3, *+B15(12)
stw .d2t2 B14, *+B15(16)
ldw .d2t2 *+B14($DSBT_index(__c6xabi_DSBT_BASE)), B14
call .s2 (sub)
call .s2 (sub0)
call .s2 (sub1)
.L2:
ldw .d2t2 *+B15(12), B3
ldw .d2t2 *+B15(16), B14
addk .s2 16, B15
nop 3
ret .s2 B3
nop 5
.size sub0, .-sub0
 
.global a
.section .neardata,"aw",@progbits
.align 2
.type a, @object
.size a, 4
a:
.long sub0
.weak g1
.global g2
.type g2, @object
.size g2, 4
g2:
.long g1
 
.hidden c
.scomm c,4,4
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-local-rel.d
0,0 → 1,44
#name: C6X PC-relative relocations, local symbols, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -melf32_tic6x_le -Tgeneric.ld
#source: pcrel-reloc-local-1.s
#source: pcrel-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+00000000[ \t]+nop 1
10000004:[ \t]+00900162[ \t]+addkpc \.S2 10000040 <[^>]*>,b1,0
10000008:[ \t]+00910162[ \t]+addkpc \.S2 10000044 <[^>]*>,b1,0
1000000c:[ \t]+00000812[ \t]+b \.S2 10000040 <[^>]*>
10000010:[ \t]+00000892[ \t]+b \.S2 10000044 <[^>]*>
10000014:[ \t]+00821022[ \t]+bdec \.S2 10000040 <[^>]*>,b1
10000018:[ \t]+00823022[ \t]+bdec \.S2 10000044 <[^>]*>,b1
1000001c:[ \t]+00100122[ \t]+bnop \.S2 10000040 <[^>]*>,0
10000020:[ \t]+00090122[ \t]+bnop \.S2 10000044 <[^>]*>,0
[ \t]*\.\.\.
 
10000040 <[^>]*>:
10000040:[ \t]+00000000[ \t]+nop 1
 
10000044 <[^>]*>:
[ \t]*\.\.\.
10000064:[ \t]+00100122[ \t]+bnop \.S2 100000a0 <[^>]*>,0
10000068:[ \t]+00110122[ \t]+bnop \.S2 100000a4 <[^>]*>,0
1000006c:[ \t]+00821022[ \t]+bdec \.S2 100000a0 <[^>]*>,b1
10000070:[ \t]+00823022[ \t]+bdec \.S2 100000a4 <[^>]*>,b1
10000074:[ \t]+00000812[ \t]+b \.S2 100000a0 <[^>]*>
10000078:[ \t]+00000892[ \t]+b \.S2 100000a4 <[^>]*>
1000007c:[ \t]+00900162[ \t]+addkpc \.S2 100000a0 <[^>]*>,b1,0
10000080:[ \t]+00890162[ \t]+addkpc \.S2 100000a4 <[^>]*>,b1,0
[ \t]*\.\.\.
 
100000a0 <[^>]*>:
100000a0:[ \t]+00000000[ \t]+nop 1
 
100000a4 <[^>]*>:
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x+-c67x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x+ c67x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x+.s
#source: attr-arch-c67x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-global-addend-1.s
0,0 → 1,11
.text
.nocmp
ldw .d2t2 *+B14($DSBT_index(__c6xabi_DSBT_BASE)), B14
ldw .d2t1 *+B14($GOT(a)+4), A1
 
.global a
.section .neardata,"aw",@progbits
.align 2
.type a, @object
.size a, 4
a:
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-u15-h-1.d
0,0 → 1,5
#name: C6X relocation overflow, SBR_U15_H
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --defsym s=0x10080
#source: reloc-overflow-sbr-u15-h.s
#error: .*relocation truncated to fit: R_C6000_SBR_U15_H.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-16-16.d
0,0 → 1,12
#name: C6X stack attribute merging, 16 16
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-stack-16.s
#source: attr-stack-16.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_stack_align_needed: 16-byte
Tag_ABI_stack_align_preserved: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-global-rel.s
0,0 → 1,24
.globl sw1
.globl sw2
.globl sh1
.globl sh2
.globl sb1
.globl sb2
.globl sb16a
.globl sb16b
.globl sbw
.globl shw
.globl sww
.text
.nocmp
ldw .D2T2 *+b14(sw1),b1
ldw .D2T2 *+b14(sw2),b1
ldh .D2T2 *+b14(sh1),b1
ldh .D2T2 *+b14(sh2),b1
ldb .D2T2 *+b14(sb1),b1
ldb .D2T2 *+b14(sb2),b1
mvk .S1 $dpr_byte(sb16a),a1
mvk .S1 $dpr_byte(sb16b),a1
mvkl .S1 $dpr_byte(sbw),a1
mvkl .S1 $dpr_hword(shw),a1
mvkl .S1 $dpr_word(sww),a1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcr-reloc.d
0,0 → 1,39
#name: C6X PCR relocations
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld
#source: pcr-reloc.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+00800264[ \t]+ldw \.D1T1 \*\+a0\(0\),a1
10000004:[ \t]+00800264[ \t]+ldw \.D1T1 \*\+a0\(0\),a1
10000008:[ \t]+00800264[ \t]+ldw \.D1T1 \*\+a0\(0\),a1
 
1000000c <[^>]*>:
1000000c:[ \t]+004003e2[ \t]+mvc \.S2 pce1,b0
10000010:[ \t]+01000264[ \t]+ldw \.D1T1 \*\+a0\(0\),a2
10000014:[ \t]+01001a2a[ \t]+mvk \.S2 52,b2
10000018:[ \t]+0100006a[ \t]+mvkh \.S2 0,b2
1000001c:[ \t]+01000a2a[ \t]+mvk \.S2 20,b2
10000020:[ \t]+0100006a[ \t]+mvkh \.S2 0,b2
10000024:[ \t]+01001e2a[ \t]+mvk \.S2 60,b2
10000028:[ \t]+0100006a[ \t]+mvkh \.S2 0,b2
1000002c:[ \t]+01000e2a[ \t]+mvk \.S2 28,b2
10000030:[ \t]+0100006a[ \t]+mvkh \.S2 0,b2
 
10000034 <[^>]*>:
10000034:[ \t]+00800264[ \t]+ldw \.D1T1 \*\+a0\(0\),a1
 
10000038 <[^>]*>:
10000038:[ \t]+004003e2[ \t]+mvc \.S2 pce1,b0
 
1000003c <[^>]*>:
1000003c:[ \t]+00800264[ \t]+ldw \.D1T1 \*\+a0\(0\),a1
10000040:[ \t]+017ff02a[ \t]+mvk \.S2 -32,b2
10000044:[ \t]+017fffea[ \t]+mvkh \.S2 4294901760,b2
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-2.s
0,0 → 1,39
.c6xabi_attribute Tag_ABI_wchar_t, 2
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-unknown-71-b.s
0,0 → 1,39
.c6xabi_attribute 71, "b"
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-local-1.s
0,0 → 1,24
.text
.nocmp
ldw .D2T2 *+b14(a),b1
ldw .D2T2 *+b14(b),b1
ldh .D2T2 *+b14(b),b1
ldh .D2T2 *+b14(c),b1
ldb .D2T2 *+b14(c),b1
ldb .D2T2 *+b14(d),b1
mvk .S1 $dpr_byte(d),a1
mvkl .S1 $dpr_byte(c),a1
mvkh .S1 $dpr_byte(d),a1
mvkl .S1 $dpr_hword(b),a1
mvkh .S1 $dpr_hword(c),a1
mvkl .S1 $dpr_word(a),a1
mvkh .S1 $dpr_word(b),a1
.data
a:
.word 0
b:
.short 0
c:
.byte 0
d:
.byte 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-s16-2.d
0,0 → 1,5
#name: C6X relocation underflow, SBR_S16
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --defsym s=0xffff807f
#source: reloc-overflow-sbr-s16.s
#error: .*relocation truncated to fit: R_C6000_SBR_S16.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-local-r.d
0,0 → 1,23
#name: C6X data relocations, local symbols, -r
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: data-reloc-local-1.s
#source: data-reloc-local-2.s
#objdump: -r -s -j .data
 
.*: *file format elf32-tic6x-le
 
RELOCATION RECORDS FOR \[\.data\]:
OFFSET TYPE VALUE
0+ R_C6000_ABS32 \.data
0+4 R_C6000_ABS32 \.data\+0x00000004
0+8 R_C6000_ABS32 \.data\+0x0000000c
0+c R_C6000_ABS32 \.data\+0x00000008
0+10 R_C6000_ABS16 \.data\+0x0000000c
0+12 R_C6000_ABS8 \.data\+0x00000008
0+13 R_C6000_ABS8 \.data\+0x0000000c
 
 
Contents of section \.data:
[ \t]*0000 00000000 00000000 00000000 00000000 .*
[ \t]*0010 00000000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c62x-c64x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c62x c64x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c62x.s
#source: attr-arch-c64x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C64x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-1.d
0,0 → 1,10
#ld: -T unwind.ld
#objdump: -s
 
.*: file format.*
 
#...
Contents of section .c6xabi.exidx:
9000 (00f8ff7f 07020083 1cf8ff7f 01000000|7ffff800 83000207 7ffff81c 00000001) .*
Contents of section .far:
#...
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-11.d
0,0 → 1,11
#name: C6X PID attribute merging, 1 1
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pid-1.s
#source: attr-pid-1.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_PID: Data addressing position-independent, GOT near DP
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcr-reloc.s
0,0 → 1,28
.text
.align 5
_start:
L0:
ldw .d1t1 *a0,a1
ldw .d1t1 *a0,a1
ldw .d1t1 *a0,a1
L1:
MVC .s2 PCE1, b0
ldw .d1t1 *a0,a2
mvk .s2 $PCR_OFFSET (S0,L1), b2
mvkh .s2 $PCR_OFFSET (S0,L1), b2
mvk .s2 $PCR_OFFSET (S0,L2), b2
mvkh .s2 $PCR_OFFSET (S0,L2), b2
mvk .s2 $PCR_OFFSET (S1,L1), b2
mvkh .s2 $PCR_OFFSET (S1,L1), b2
mvk .s2 $PCR_OFFSET (S1,L2), b2
mvkh .s2 $PCR_OFFSET (S1,L2), b2
 
S0:
ldw .d1t1 *a0,a1
L2:
MVC .s2 PCE1, b0
 
S1:
ldw .d1t1 *a0,a1
mvkl .s2 $PCR_OFFSET (L0,L2), b2
mvkh .s2 $PCR_OFFSET (L0,L2), b2
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-16-8.d
0,0 → 1,6
#name: C6X stack attribute merging, 16 8
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-stack-16.s
#source: attr-stack-8.s
#error: .*requires more stack alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x+-c67x.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x+ c67x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x+.s
#source: attr-arch-c67x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c674x-c674x.d
0,0 → 1,10
#name: C6X arch attribute merging, c674x c674x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c674x.s
#source: attr-arch-c674x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-unknown-4.d
0,0 → 1,11
#name: C6X unknown attribute merging 4
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-unknown-71-a.s
#source: attr-unknown-71-b.s
#warning: .*warning: unknown EABI object attribute 71
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-local-1.s
0,0 → 1,16
.text
.nocmp
nop
addkpc .S2 f1,b1,0
addkpc .S2 f2,b1,0
b .S2 f1
b .S2 f2
bdec .S2 f1,b1
bdec .S2 f2,b1
bnop .S2 f1,0
bnop .S2 f2,0
.section .text.1,"ax",@progbits
f1:
nop
f2:
nop
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-pcr-s7-2.d
0,0 → 1,5
#name: C6X relocation underflow, PCR_S7
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x0ffffefc
#source: reloc-overflow-pcr-s7.s
#error: .*relocation truncated to fit: R_C6000_PCR_S7.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-16-816.d
0,0 → 1,12
#name: C6X stack attribute merging, 16 816
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-stack-16.s
#source: attr-stack-816.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_stack_align_needed: 16-byte
Tag_ABI_stack_align_preserved: 16-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-s16.s
0,0 → 1,3
.text
.nocmp
mvk .S1 $dpr_byte(s),a1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-48-4.d
0,0 → 1,12
#name: C6X array attribute merging, 48 4
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-48.s
#source: attr-array-4.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 4-byte
Tag_ABI_array_object_align_expected: 4-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-dsbt-1.s
0,0 → 1,12
.c6xabi_attribute Tag_ABI_DSBT, 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-1.s
0,0 → 1,25
.cfi_sections .c6xabi.exidx
.text
.global _start
.type _start, %function
_start:
.cfi_startproc
.cfi_offset B3, 0
.cfi_def_cfa_offset 8
nop
.p2align 6
.cfi_endproc
.personalityindex 3
.endp
 
# Section with no unwinding information.
# Linker should insert a cantunwind entry.
.section .after, "xa"
.global __c6xabi_unwind_cpp_pr3
.type __c6xabi_unwind_cpp_pr3, %function
__c6xabi_unwind_cpp_pr3:
nop
.p2align 6
 
.section .far
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-pcr-s10-1.d
0,0 → 1,5
#name: C6X relocation overflow, PCR_S10
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x10000800
#source: reloc-overflow-pcr-s10.s
#error: .*relocation truncated to fit: R_C6000_PCR_S10.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c62x-c64x.d
0,0 → 1,10
#name: C6X arch attribute merging, c62x c64x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c62x.s
#source: attr-arch-c64x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C64x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x-c64x.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x c64x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x.s
#source: attr-arch-c64x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C64x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-wchar-22.d
0,0 → 1,11
#name: C6X wchar_t attribute merging, 2 2
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-wchar-2.s
#source: attr-wchar-2.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_wchar_t: 4 bytes
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-11.s
0,0 → 1,11
.c6xabi_attribute Tag_ABI_conformance, "1.1"
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-local-rel.d
0,0 → 1,35
#name: C6X SB-relative relocations, local symbols, REL
#as: -mlittle-endian -mgenerate-rel
#ld: -melf32_tic6x_le -Tsbr.ld
#source: sbr-reloc-local-1-rel.s
#source: sbr-reloc-local-2-rel.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
10000004:[ \t]+0080016e[ \t]+ldw \.D2T2 \*\+b14\(4\),b1
10000008:[ \t]+0080024e[ \t]+ldh \.D2T2 \*\+b14\(4\),b1
1000000c:[ \t]+0080034e[ \t]+ldh \.D2T2 \*\+b14\(6\),b1
10000010:[ \t]+0080062e[ \t]+ldb \.D2T2 \*\+b14\(6\),b1
10000014:[ \t]+0080072e[ \t]+ldb \.D2T2 \*\+b14\(7\),b1
10000018:[ \t]+008003a8[ \t]+mvk \.S1 7,a1
1000001c:[ \t]+00800328[ \t]+mvk \.S1 6,a1
10000020:[ \t]+00800128[ \t]+mvk \.S1 2,a1
10000024:[ \t]+00800028[ \t]+mvk \.S1 0,a1
[ \t]*\.\.\.
10000040:[ \t]+0080026e[ \t]+ldw \.D2T2 \*\+b14\(8\),b1
10000044:[ \t]+0080036e[ \t]+ldw \.D2T2 \*\+b14\(12\),b1
10000048:[ \t]+0080064e[ \t]+ldh \.D2T2 \*\+b14\(12\),b1
1000004c:[ \t]+0080074e[ \t]+ldh \.D2T2 \*\+b14\(14\),b1
10000050:[ \t]+00800e2e[ \t]+ldb \.D2T2 \*\+b14\(14\),b1
10000054:[ \t]+00800f2e[ \t]+ldb \.D2T2 \*\+b14\(15\),b1
10000058:[ \t]+008007a8[ \t]+mvk \.S1 15,a1
1000005c:[ \t]+00800728[ \t]+mvk \.S1 14,a1
10000060:[ \t]+00800328[ \t]+mvk \.S1 6,a1
10000064:[ \t]+00800128[ \t]+mvk \.S1 2,a1
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x+-c62x.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x+ c62x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x+.s
#source: attr-arch-c62x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C64x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-20.d
0,0 → 1,10
#name: C6X PID attribute merging, 2 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pid-2.s
#source: attr-pid-0.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-global-addend-2.d
0,0 → 1,5
#name: C6X GOT relocations, addend
#as: -mlittle-endian -mdsbt
#ld: -melf32_tic6x_le -Tdsbt.ld --dsbt-index 4 -shared
#source: got-reloc-global-addend-2.s
#error: .*relocation R_C6000_SBR_GOT_L16_W with non-zero addend 4.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-global.d
0,0 → 1,12
#name: C6X data relocations, global symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s0=0 --defsym sff=0xff --defsym sffff=0xffff --defsym s80000000=0x80000000 --defsym sffff8000=0xffff8000 --defsym sffffff80=0xffffff80 --defsym sffffffff=0xffffffff
#source: data-reloc-global.s
#objdump: -r -s -j .data
 
.*: *file format elf32-tic6x-le
 
Contents of section \.data:
[ \t]*0080 00000080 ffffffff 00000000 feffffff .*
[ \t]*0090 00000000 ffffffff 00800080 0000ffff .*
[ \t]*00a0 808000 .*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-inrange.d
0,0 → 1,15
#name: C6X GOT relocations, no overflow
#as: -mlittle-endian -mdsbt -mpic -mpid=near
#ld: -melf32_tic6x_le -Tdsbt-inrange.ld --dsbt-index 4 -shared
#source: got-reloc-global.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+0700046e[ \t]+ldw \.D2T2 \*\+b14\(16\),b14
10000004:[ \t]+00ffff6c[ \t]+ldw \.D2T1 \*\+b14\(131068\),a1
[ \t]+...
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-abs-s16-1.d
0,0 → 1,5
#name: C6X relocation overflow, ABS_S16
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x8000
#source: reloc-overflow-abs-s16.s
#error: .*relocation truncated to fit: R_C6000_ABS_S16.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-16-8.d
0,0 → 1,6
#name: C6X array attribute merging, 16 8
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-16.s
#source: attr-array-8.s
#error: .*requires more array alignment than .* preserves
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-2.s
0,0 → 1,23
.weak a
.weak b
 
.text
.nocmp
.align 2
.global sub
.type sub, @function
sub:
sub .d2 B15, 16, B15
stw .d2t1 A4, *+B15(12)
ldw .d2t1 *+B15(12), A0
nop 4
add .d1 A0, 10, A0
mv .d1 A0, A4
add .d2 B15, 16, B15
ret .s2 B3
ldw .d2t2 *+B14($GOT(a)), B6
ldw .d2t2 *+B14($GOT(b)), B7
ldw .d2t2 *+B14($GOT(c)), B8
ldw .d2t2 *+B14(c), B9
nop 1
.size sub, .-sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-4-48.d
0,0 → 1,12
#name: C6X array attribute merging, 4 48
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-array-4.s
#source: attr-array-48.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_array_object_alignment: 4-byte
Tag_ABI_array_object_align_expected: 4-byte
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-local.d
0,0 → 1,41
#name: C6X SB-relative relocations, local symbols
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld
#source: sbr-reloc-local-1.s
#source: sbr-reloc-local-2.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
 
10000000 <[^>]*>:
10000000:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
10000004:[ \t]+0080016e[ \t]+ldw \.D2T2 \*\+b14\(4\),b1
10000008:[ \t]+0080024e[ \t]+ldh \.D2T2 \*\+b14\(4\),b1
1000000c:[ \t]+0080034e[ \t]+ldh \.D2T2 \*\+b14\(6\),b1
10000010:[ \t]+0080062e[ \t]+ldb \.D2T2 \*\+b14\(6\),b1
10000014:[ \t]+0080072e[ \t]+ldb \.D2T2 \*\+b14\(7\),b1
10000018:[ \t]+008003a8[ \t]+mvk \.S1 7,a1
1000001c:[ \t]+00800328[ \t]+mvk \.S1 6,a1
10000020:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
10000024:[ \t]+00800128[ \t]+mvk \.S1 2,a1
10000028:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
1000002c:[ \t]+00800028[ \t]+mvk \.S1 0,a1
10000030:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
[ \t]*\.\.\.
10000040:[ \t]+0080026e[ \t]+ldw \.D2T2 \*\+b14\(8\),b1
10000044:[ \t]+0080036e[ \t]+ldw \.D2T2 \*\+b14\(12\),b1
10000048:[ \t]+0080064e[ \t]+ldh \.D2T2 \*\+b14\(12\),b1
1000004c:[ \t]+0080074e[ \t]+ldh \.D2T2 \*\+b14\(14\),b1
10000050:[ \t]+00800e2e[ \t]+ldb \.D2T2 \*\+b14\(14\),b1
10000054:[ \t]+00800f2e[ \t]+ldb \.D2T2 \*\+b14\(15\),b1
10000058:[ \t]+008007a8[ \t]+mvk \.S1 15,a1
1000005c:[ \t]+00800728[ \t]+mvk \.S1 14,a1
10000060:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
10000064:[ \t]+00800328[ \t]+mvk \.S1 6,a1
10000068:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
1000006c:[ \t]+00800128[ \t]+mvk \.S1 2,a1
10000070:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
[ \t]*\.\.\.
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-dsbt-00.d
0,0 → 1,10
#name: C6X DSBT attribute merging, 0 0
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-dsbt-0.s
#source: attr-dsbt-0.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x+-c64x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x+ c64x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x+.s
#source: attr-arch-c64x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/got-reloc-global-addend-2.s
0,0 → 1,11
.text
.nocmp
ldw .d2t2 *+B14($DSBT_index(__c6xabi_DSBT_BASE)), B14
mvkl .s1 $DPR_GOT(a)+4, A1
 
.global a
.section .neardata,"aw",@progbits
.align 2
.type a, @object
.size a, 4
a:
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-sbr-u15-h-2.d
0,0 → 1,5
#name: C6X relocation underflow, SBR_U15_H
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --defsym s=0x7e
#source: reloc-overflow-sbr-u15-h.s
#error: .*relocation truncated to fit: R_C6000_SBR_U15_H.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/mvk-reloc-local-2-rel.s
0,0 → 1,11
.text
.nocmp
mvk .S1 d,a1
mvkl .S1 e,a2
.data
d:
.word 0
e:
.word 0
f:
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/dsbt-index-error.d
0,0 → 1,5
#name: C6X invalid DSBT_INDEX
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld --dsbt-index 5 --dsbt-size 3
#source: dsbt-index.s
#error: .*invalid --dsbt-index 5, outside DSBT size.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/data-reloc-global.s
0,0 → 1,23
.globl s0
.globl sff
.globl sffff
.globl s80000000
.globl sffff8000
.globl sffffff80
.globl sffffffff
.data
.word s80000000
.word sffffffff
.word s0
.word sffffffff+0xffffffff
.word s80000000+0x80000000
.short sffffffff
.short sffff
.short sffff8000
.short s0-0x8000
.short s80000000+0x80000000
.byte sffffffff
.byte sff
.byte sffffff80
.byte s0-0x80
.byte s80000000+0x80000000
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-array-16.s
0,0 → 1,2
.c6xabi_attribute Tag_ABI_array_object_align_expected, 2
.c6xabi_attribute Tag_ABI_array_object_alignment, 2
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/dsbt-be.ld
0,0 → 1,67
OUTPUT_FORMAT("elf32-tic6x-be", "elf32-tic6x-be",
"elf32-tic6x-be")
EXTERN (__c6xabi_DSBT_BASE);
SECTIONS
{
PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x0)); . = SEGMENT_START("text-segment", 0x0) + SIZEOF_HEADERS;
. = 0x8000;
.hash : { *(.hash) }
.gnu.hash : { *(.gnu.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
.gnu.version : { *(.gnu.version) }
.gnu.version_d : { *(.gnu.version_d) }
.gnu.version_r : { *(.gnu.version_r) }
.rel.init : { *(.rel.init) }
.rela.init : { *(.rela.init) }
.rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
.rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
.rel.fini : { *(.rel.fini) }
.rela.fini : { *(.rela.fini) }
.rel.const : { *(.rel.const .rel.const.* .rel.gnu.linkonce.r.*) }
.rela.const : { *(.rela.const .rela.const.* .rela.gnu.linkonce.r.*) }
.rel.rodata : { *(.rel.rodata .rel.rodata.*) }
.rela.rodata : { *(.rela.rodata .rela.rodata.*) }
.rel.data.rel.ro : { *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*) }
.rela.data.rel.ro : { *(.rela.data.rel.ro* .rela.gnu.linkonce.d.rel.ro.*) }
.rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
.rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
.rel.fardata : { *(.rel.fardata .rel.fardata.*) }
.rela.fardata : { *(.rela.fardata .rela.fardata.*) }
.rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) }
.rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) }
.rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) }
.rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) }
.rel.ctors : { *(.rel.ctors) }
.rela.ctors : { *(.rela.ctors) }
.rel.dtors : { *(.rel.dtors) }
.rela.dtors : { *(.rela.dtors) }
.rel.got : { *(.rel.got) }
.rela.got : { *(.rela.got) }
.rel.neardata : { *(.rel.neardata .rel.neardata.* .rel.gnu.linkonce.s.*) }
.rela.neardata : { *(.rela.neardata .rela.neardata.* .rela.gnu.linkonce.s.*) }
.rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.sb.*) }
.rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.sb.*) }
.rel.neardata2 : { *(.rel.neardata2 .rel.neardata2.* .rel.gnu.linkonce.s2.*) }
.rela.neardata2 : { *(.rela.neardata2 .rela.neardata2.* .rela.gnu.linkonce.s2.*) }
.rel.bss2 : { *(.rel.bss2 .rel.bss2.* .rel.gnu.linkonce.sb2.*) }
.rela.bss2 : { *(.rela.bss2 .rela.bss2.* .rela.gnu.linkonce.sb2.*) }
.rel.far : { *(.rel.far .rel.far.* .rel.gnu.linkonce.b.*) }
.rela.far : { *(.rela.far .rela.far.* .rela.gnu.linkonce.b.*) }
.data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) }
.dynamic : { *(.dynamic) }
.data : { *(.data*) }
. = 0x10000000;
.rel.plt : { *(.rel.plt) }
.rela.plt : { *(.rela.plt) }
.plt : { *(.plt) }
.text : { *(.text*) }
PROVIDE_HIDDEN (__c6xabi_DSBT_BASE = .);
.got : { *(.dsbt) *(.got.plt) *(.igot.plt) *(.got) *(.igot) }
.neardata : { *(.neardata .neardata.* .gnu.linkonce.s.*) }
.rodata : { *(.rodata .rodata.*) }
.bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.sb.*) *(.scommon) }
.far : { *(.dynfar) *(.far .far.* .gnu.linkonce.b.*) *(COMMON) }
.c6xabi.attributes 0 : { KEEP (*(.c6xabi.attributes)) KEEP (*(.gnu.attributes)) }
/DISCARD/ : { *(*) }
}
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1.od
0,0 → 1,13
 
tmpdir/shlib-dynapp-1: file format elf32-tic6x-le
 
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
100000b8 R_C6000_ABS32 b
100000bc R_C6000_ABS32 a
100000c4 R_C6000_ABS32 g1
100000c8 R_C6000_ABS32 g2
100000cc R_C6000_COPY a
100000b4 R_C6000_JUMP_SLOT sub0
 
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c674x-c67x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c674x c67x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c674x.s
#source: attr-arch-c67x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/sbr-reloc-local-2.s
0,0 → 1,24
.text
.nocmp
ldw .D2T2 *+b14(e),b1
ldw .D2T2 *+b14(f),b1
ldh .D2T2 *+b14(f),b1
ldh .D2T2 *+b14(g),b1
ldb .D2T2 *+b14(g),b1
ldb .D2T2 *+b14(h),b1
mvk .S1 $dpr_byte(h),a1
mvkl .S1 $dpr_byte(g),a1
mvkh .S1 $dpr_byte(h),a1
mvkl .S1 $dpr_hword(f),a1
mvkh .S1 $dpr_hword(g),a1
mvkl .S1 $dpr_word(e),a1
mvkh .S1 $dpr_word(f),a1
.data
e:
.word 0
f:
.short 0
g:
.byte 0
h:
.byte 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x-c67x.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x c67x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x.s
#source: attr-arch-c67x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C67x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-conformance-11-10.d
0,0 → 1,10
#name: C6X conformance attribute merging, 11 10
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-conformance-11.s
#source: attr-conformance-10.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-2.d
0,0 → 1,10
#ld: -T unwind.ld
#objdump: -s
 
.*: file format.*
 
#...
Contents of section .c6xabi.exidx:
9000 (00f8ff7f 07020083 1cf8ff7f 01000000|7ffff800 83000207 7ffff81c 00000001) .*
Contents of section .far:
#...
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c64x-c64x+.d
0,0 → 1,10
#name: C6X arch attribute merging, c64x c64x+
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c64x.s
#source: attr-arch-c64x+.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C64x\+
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-pid-12.d
0,0 → 1,12
#name: C6X PID attribute merging, 1 2
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-pid-1.s
#source: attr-pid-2.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_ABI_PID: Data addressing position-independent, GOT near DP
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x+-c64x.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x+ c64x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x+.s
#source: attr-arch-c64x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-unknown-5.d
0,0 → 1,12
#name: C6X unknown attribute merging 5
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-unknown-1000-1.s
#source: attr-unknown-1000-1.s
#warning: .*warning: unknown EABI object attribute 1000
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C674x
Tag_unknown_1000: 1 \(0x1\)
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/pcrel-reloc-local-2.s
0,0 → 1,16
.text
.nocmp
nop
bnop .S2 f3,0
bnop .S2 f4,0
bdec .S2 f3,b1
bdec .S2 f4,b1
b .S2 f3
b .S2 f4
addkpc .S2 f3,b1,0
addkpc .S2 f4,b1,0
.section .text.1,"ax",@progbits
f3:
nop
f4:
nop
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-compatibility-other-other.d
0,0 → 1,6
#name: C6X compatibility attribute merging, other other
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-compatibility-other.s
#source: attr-compatibility-other.s
#error: .*Object has vendor-specific contents that must be processed by the 'other' toolchain
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-stack-16.s
0,0 → 1,2
.c6xabi_attribute Tag_ABI_stack_align_needed, 1
.c6xabi_attribute Tag_ABI_stack_align_preserved, 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-app-1rb.od
0,0 → 1,11
 
tmpdir/shlib-dynapp-1rb: file format elf32-tic6x-be
 
DYNAMIC RELOCATION RECORDS
OFFSET TYPE VALUE
100000b8 R_C6000_ABS32 b
100000bc R_C6000_ABS32 a
100000c4 R_C6000_COPY a
100000b4 R_C6000_JUMP_SLOT sub0
 
 
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/shlib-1.rd
0,0 → 1,123
There are 17 section headers, starting at offset 0x21c4:
 
Section Headers:
\[Nr\] Name Type Addr Off Size ES Flg Lk Inf Al
\[ 0\] NULL 00000000 000000 000000 00 0 0 0
\[ 1\] \.hash HASH 00008000 001000 000048 04 A 2 0 4
\[ 2\] \.dynsym DYNSYM 00008048 001048 0000d0 10 A 3 6 4
\[ 3\] \.dynstr STRTAB 00008118 001118 000025 00 A 0 0 1
\[ 4\] \.rela\.got RELA 00008140 001140 000024 0c A 2 10 4
\[ 5\] \.rela\.neardata RELA 00008164 001164 000018 0c A 2 11 4
\[ 6\] \.dynamic DYNAMIC 0000817c 00117c 0000a8 08 WA 3 0 4
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c A 2 8 4
\[ 8\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
\[ 9\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
\[10\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
\[11\] \.neardata PROGBITS 10000128 002128 000008 00 WA 0 0 4
\[12\] \.bss NOBITS 10000130 002130 000004 00 WA 0 0 4
\[13\] \.c6xabi\.attributes C6000_ATTRIBUTES 00000000 002130 000019 00 0 0 1
\[14\] \.shstrtab STRTAB 00000000 002149 00007b 00 0 0 1
\[15\] \.symtab SYMTAB 00000000 00246c 0001a0 10 16 19 4
\[16\] \.strtab STRTAB 00000000 00260c 000059 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Elf file type is DYN \(Shared object file\)
Entry point 0x10000080
There are 4 program headers, starting at offset 52
 
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x001000 0x00008000 0x00008000 0x00224 0x00224 RW 0x1000
LOAD 0x002000 0x10000000 0x10000000 0x00130 0x00134 RWE 0x1000
DYNAMIC 0x00117c 0x0000817c 0x0000817c 0x000a8 0x000a8 RW 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x20000 RWE 0x8
 
Section to Segment mapping:
Segment Sections\.\.\.
00 \.hash \.dynsym \.dynstr \.rela\.got \.rela\.neardata \.dynamic
01 \.rela\.plt \.plt \.text \.got \.neardata \.bss
02 \.dynamic
03
 
Dynamic section at offset 0x117c contains 16 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x8000
0x00000005 \(STRTAB\) 0x8118
0x00000006 \(SYMTAB\) 0x8048
0x0000000a \(STRSZ\) 37 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x70000000 \(C6000_DSBT_BASE\) 0x10000100
0x70000001 \(C6000_DSBT_SIZE\) 0x3
0x70000003 \(C6000_DSBT_INDEX\) 0x2
0x00000003 \(PLTGOT\) 0x1000010c
0x00000002 \(PLTRELSZ\) 24 \(bytes\)
0x00000014 \(PLTREL\) RELA
0x00000017 \(JMPREL\) 0x10000000
0x00000007 \(RELA\) 0x8140
0x00000008 \(RELASZ\) 84 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000000 \(NULL\) 0x0
 
Relocation section '\.rela\.got' at offset 0x1140 contains 3 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000120 00000501 R_C6000_ABS32 10000130 \.bss \+ 0
1000011c 00000701 R_C6000_ABS32 00000000 b \+ 0
10000124 00000b01 R_C6000_ABS32 10000128 a \+ 0
 
Relocation section '\.rela\.neardata' at offset 0x1164 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000128 00000a01 R_C6000_ABS32 10000088 sub0 \+ 0
1000012c 00000801 R_C6000_ABS32 00000000 g1 \+ 0
 
Relocation section '\.rela\.plt' at offset 0x2000 contains 2 entries:
Offset Info Type Sym\. Value Symbol's Name \+ Addend
10000114 00000a1b R_C6000_JUMP_SLOT 10000088 sub0 \+ 0
10000118 00000c1b R_C6000_JUMP_SLOT 100000c0 sub \+ 0
 
Symbol table '\.dynsym' contains 13 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000020 0 SECTION LOCAL DEFAULT 8
2: 10000080 0 SECTION LOCAL DEFAULT 9
3: 10000100 0 SECTION LOCAL DEFAULT 10
4: 10000128 0 SECTION LOCAL DEFAULT 11
5: 10000130 0 SECTION LOCAL DEFAULT 12
6: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
7: 00000000 0 NOTYPE WEAK DEFAULT UND b
8: 00000000 0 NOTYPE WEAK DEFAULT UND g1
9: 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
10: 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
11: 10000128 4 OBJECT GLOBAL DEFAULT 11 a
12: 100000c0 52 FUNC GLOBAL DEFAULT 9 sub
 
Symbol table '\.symtab' contains 26 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00008000 0 SECTION LOCAL DEFAULT 1
2: 00008048 0 SECTION LOCAL DEFAULT 2
3: 00008118 0 SECTION LOCAL DEFAULT 3
4: 00008140 0 SECTION LOCAL DEFAULT 4
5: 00008164 0 SECTION LOCAL DEFAULT 5
6: 0000817c 0 SECTION LOCAL DEFAULT 6
7: 10000000 0 SECTION LOCAL DEFAULT 7
8: 10000020 0 SECTION LOCAL DEFAULT 8
9: 10000080 0 SECTION LOCAL DEFAULT 9
10: 10000100 0 SECTION LOCAL DEFAULT 10
11: 10000128 0 SECTION LOCAL DEFAULT 11
12: 10000130 0 SECTION LOCAL DEFAULT 12
13: 00000000 0 SECTION LOCAL DEFAULT 13
14: 10000080 0 FUNC LOCAL HIDDEN 9 sub1
15: 0000817c 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
16: 10000130 4 OBJECT LOCAL DEFAULT 12 c
17: 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
18: 10000100 0 NOTYPE LOCAL DEFAULT ABS __c6xabi_DSBT_BASE
19: 00000000 0 NOTYPE WEAK DEFAULT UND b
20: 00020000 0 OBJECT GLOBAL DEFAULT ABS __stacksize
21: 00000000 0 NOTYPE WEAK DEFAULT UND g1
22: 1000012c 4 OBJECT GLOBAL DEFAULT 11 g2
23: 10000088 52 FUNC GLOBAL DEFAULT 9 sub0
24: 10000128 4 OBJECT GLOBAL DEFAULT 11 a
25: 100000c0 52 FUNC GLOBAL DEFAULT 9 sub
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/unwind-2.s
0,0 → 1,23
.cfi_sections .c6xabi.exidx
.text
 
.global __c6xabi_unwind_cpp_pr3
.type __c6xabi_unwind_cpp_pr3, %function
__c6xabi_unwind_cpp_pr3:
.global _start
.type _start, %function
_start:
.cfi_startproc
.cfi_offset B3, 0
.cfi_def_cfa_offset 8
nop
.p2align 6
.cfi_endproc
.personalityindex 3
.endp
 
# last text section has unwind information. Linker should append a
# terminating cantunwind entry.
 
.section .far
.word 0
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/reloc-overflow-pcr-s10-2.d
0,0 → 1,5
#name: C6X relocation underflow, PCR_S10
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tgeneric.ld --defsym s=0x0ffff7fc
#source: reloc-overflow-pcr-s10.s
#error: .*relocation truncated to fit: R_C6000_PCR_S10.*
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/weak.d
0,0 → 1,19
#name: C6X relocs to weak symbols, little endian
#as: -mlittle-endian
#ld: -melf32_tic6x_le -Tsbr.ld
#source: weak.s
#objdump: -dr
 
.*: *file format elf32-tic6x-le
 
 
Disassembly of section \.text:
10000000 <[^>]*>:
10000000:[ \t]+000c0362[ \t]+b \.S2 b3
10000004:[ \t]+a00c0362[ \t]+\[a2\] b \.S2 b3
10000008:[ \t]+000c0363[ \t]+b \.S2 b3
1000000c:[ \t]+00800028[ \t]+\|\| mvk \.S1 0,a1
10000010:[ \t]+0080006e[ \t]+ldw \.D2T2 \*\+b14\(0\),b1
10000014:[ \t]+00800028[ \t]+mvk \.S1 0,a1
10000018:[ \t]+00800068[ \t]+mvkh \.S1 0,a1
1000001c:[ \t]+00000000[ \t]+nop 1
/trunk/gnu/binutils/ld/testsuite/ld-tic6x/attr-arch-c67x-c62x.d
0,0 → 1,10
#name: C6X arch attribute merging, c67x c62x
#as: -mlittle-endian
#ld: -r -melf32_tic6x_le
#source: attr-arch-c67x.s
#source: attr-arch-c62x.s
#readelf: -A
 
Attribute Section: c6xabi
File Attributes
Tag_ISA: C67x

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.