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/trunk/gnu/binutils/ld/testsuite/ld-x86-64
    from Rev 163 to Rev 166
    Reverse comparison

Rev 163 → Rev 166

/ilp32-10.d
0,0 → 1,3
#as: --x32
#ld: -shared -melf32_x86_64
#error: .*relocation R_X86_64_PC32 against undefined symbol `bar' can not be used when making a shared object; recompile with -fPIC
/ilp32-10.s
0,0 → 1,3
.globl foo
foo:
mov bar(%rip), %rax
/x86-64.exp
111,6 → 111,10
{"TLS X32 LD->LE transition" "-melf32_x86_64"
"--x32" {tlsld2.s}
{{objdump -dwr tlsld2.dd}} "tlsld2"}
{"build 32-bit object with 33 locals" "-e 0" "--32" {32bit.s} {{ ld incompatible.l }} "dummy" }
{"build 64-bit object" "-e 0 --defsym foo=1" "--64" {64bit.s} {} "dummy" }
{"link mixed objects" "-e 0 tmpdir/32bit.o tmpdir/64bit.o" "" {} { { ld incompatible.l } } "mixed"}
}
 
run_ld_link_tests $x86_64tests
207,6 → 211,7
run_dump_test "ilp32-7"
run_dump_test "ilp32-8"
run_dump_test "ilp32-9"
run_dump_test "ilp32-10"
run_dump_test "ia32-1"
run_dump_test "ia32-2"
run_dump_test "ia32-3"
/tlsbin.dd
174,9 → 174,7
401136: 90[ ]+nop *
401137: c9[ ]+leaveq *
401138: c3[ ]+retq *
401139: 90[ ]+nop *
40113a: 90[ ]+nop *
40113b: 90[ ]+nop *
401139: 0f 1f 00[ ]+nopl \(%rax\)
 
0+40113c <_start>:
40113c: 55[ ]+push %rbp
/64bit.s
0,0 → 1,4
.text
bar:
call foo
 
/ilp32-4.d
1,36 → 1,30
#source: start.s
#as: --x32
#ld: -m elf32_x86_64 -shared --no-ld-generated-unwind-info
#readelf: -d -S --wide
 
There are 10 section headers, starting at offset 0x22c:
There are 9 section headers, starting at offset 0x1d8:
 
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 00000094 000094 000030 04 A 2 0 4
\[ 2\] .dynsym DYNSYM 000000c4 0000c4 000070 10 A 3 2 4
\[ 3\] .dynstr STRTAB 00000134 000134 00001d 00 A 0 0 1
\[ 4\] .rela.dyn RELA 00000154 000154 00000c 0c A 2 0 4
\[ 5\] .text PROGBITS 00000160 000160 000005 00 AX 0 0 4
\[ 6\] .dynamic DYNAMIC 00200168 000168 000078 08 WA 3 0 4
\[ 7\] .shstrtab STRTAB 00000000 0001e0 00004a 00 0 0 1
\[ 8\] .symtab SYMTAB 00000000 0003bc 0000e0 10 9 9 4
\[ 9\] .strtab STRTAB 00000000 00049c 000043 00 0 0 1
\[ 1\] .hash HASH 00000094 000094 00002c 04 A 2 0 4
\[ 2\] .dynsym DYNSYM 000000c0 0000c0 000060 10 A 3 2 4
\[ 3\] .dynstr STRTAB 00000120 000120 000019 00 A 0 0 1
\[ 4\] .text PROGBITS 0000013c 00013c 000001 00 AX 0 0 4
\[ 5\] .dynamic DYNAMIC 00200140 000140 000058 08 WA 3 0 4
\[ 6\] .shstrtab STRTAB 00000000 000198 000040 00 0 0 1
\[ 7\] .symtab SYMTAB 00000000 000340 0000c0 10 8 8 4
\[ 8\] .strtab STRTAB 00000000 000400 00003f 00 0 0 1
Key to Flags:
W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\), l \(large\)
I \(info\), L \(link order\), G \(group\), T \(TLS\), E \(exclude\), x \(unknown\)
O \(extra OS processing required\) o \(OS specific\), p \(processor specific\)
 
Dynamic section at offset 0x168 contains 10 entries:
Dynamic section at offset 0x140 contains 6 entries:
Tag Type Name/Value
0x00000004 \(HASH\) 0x94
0x00000005 \(STRTAB\) 0x134
0x00000006 \(SYMTAB\) 0xc4
0x0000000a \(STRSZ\) 29 \(bytes\)
0x00000005 \(STRTAB\) 0x120
0x00000006 \(SYMTAB\) 0xc0
0x0000000a \(STRSZ\) 25 \(bytes\)
0x0000000b \(SYMENT\) 16 \(bytes\)
0x00000007 \(RELA\) 0x154
0x00000008 \(RELASZ\) 12 \(bytes\)
0x00000009 \(RELAENT\) 12 \(bytes\)
0x00000016 \(TEXTREL\) 0x0
0x00000000 \(NULL\) 0x0
/tlsbindesc.dd
165,9 → 165,7
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: c9[ ]+leaveq *
[0-9a-f]+: c3[ ]+retq *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 90[ ]+nop *
[0-9a-f]+: 0f 1f 00[ ]+nopl \(%rax\)
 
[0-9a-f]+ <_start>:
[0-9a-f]+: 55[ ]+push %rbp
/ilp32-4.s
0,0 → 1,3
.globl _start
_start:
ret
/incompatible.l
0,0 → 1,3
.*incompatible.*
/ilp32-5.d
4,5 → 4,5
 
#...
[0-9a-f]+ +[0-9a-f]+ +R_X86_64_RELATIVE +[0-9a-f]+
[0-9a-f]+ +[0-9a-f]+ +R_X86_64_PC32 +[0-9a-f]+ +foo - 4
[0-9a-f]+ +[0-9a-f]+ +R_X86_64_GLOB_DAT +[0-9a-f]+ +foo \+ 0
[0-9a-f]+ +[0-9a-f]+ +R_X86_64_32 +[0-9a-f]+ +foo \+ 0
/tlspic.dd
226,5 → 226,4
+11a7: 90[ ]+nop *
+11a8: c9[ ]+leaveq *
+11a9: c3[ ]+retq *
+11aa: 90[ ]+nop *
+11ab: 90[ ]+nop *
+11aa: 66 90[ ]+xchg %ax,%ax
/32bit.s
0,0 → 1,78
 
.section .rodata.str1.1,"aMS",@progbits,1
 
.LC0: .word 1
.LC1: .word 2
.LC2: .word 3
.LC3: .word 4
.LC4: .word 5
.LC5: .word 6
.LC6: .word 7
.LC7: .word 8
.LC8: .word 9
.LC9: .word 10
.LC10: .word 11
.LC11: .word 12
.LC12: .word 13
.LC13: .word 14
.LC14: .word 15
.LC15: .word 16
.LC16: .word 17
.LC17: .word 18
.LC18: .word 19
.LC19: .word 20
.LC20: .word 21
.LC21: .word 22
.LC22: .word 23
.LC23: .word 24
.LC24: .word 25
.LC25: .word 26
.LC26: .word 27
.LC27: .word 28
.LC28: .word 29
.LC29: .word 30
.LC30: .word 31
.LC31: .word 32
.LC32: .word 33
.LC33: .word 34
 
.text
.p2align 4,,15
.globl foo
.type foo, @function
foo:
 
leal .LC0@GOTOFF(%ecx), %eax
leal .LC1@GOTOFF(%ecx), %eax
leal .LC2@GOTOFF(%ecx), %eax
leal .LC3@GOTOFF(%ecx), %eax
leal .LC4@GOTOFF(%ecx), %eax
leal .LC5@GOTOFF(%ecx), %eax
leal .LC6@GOTOFF(%ecx), %eax
leal .LC7@GOTOFF(%ecx), %eax
leal .LC8@GOTOFF(%ecx), %eax
leal .LC9@GOTOFF(%ecx), %eax
leal .LC10@GOTOFF(%ecx), %eax
leal .LC11@GOTOFF(%ecx), %eax
leal .LC12@GOTOFF(%ecx), %eax
leal .LC13@GOTOFF(%ecx), %eax
leal .LC14@GOTOFF(%ecx), %eax
leal .LC15@GOTOFF(%ecx), %eax
leal .LC16@GOTOFF(%ecx), %eax
leal .LC17@GOTOFF(%ecx), %eax
leal .LC18@GOTOFF(%ecx), %eax
leal .LC19@GOTOFF(%ecx), %eax
leal .LC20@GOTOFF(%ecx), %eax
leal .LC21@GOTOFF(%ecx), %eax
leal .LC22@GOTOFF(%ecx), %eax
leal .LC23@GOTOFF(%ecx), %eax
leal .LC24@GOTOFF(%ecx), %eax
leal .LC25@GOTOFF(%ecx), %eax
leal .LC26@GOTOFF(%ecx), %eax
leal .LC27@GOTOFF(%ecx), %eax
leal .LC28@GOTOFF(%ecx), %eax
leal .LC29@GOTOFF(%ecx), %eax
leal .LC30@GOTOFF(%ecx), %eax
leal .LC31@GOTOFF(%ecx), %eax
leal .LC32@GOTOFF(%ecx), %eax
leal .LC33@GOTOFF(%ecx), %eax
/ilp32-5.s
1,6 → 1,6
.globl bar
bar:
mov foo(%rip), %rax
mov foo@GOTPCREL(%rip), %rax
 
.data
xxx:

powered by: WebSVN 2.1.0

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