f60cf82f20
binutils/testsuite/ * binutils-all/i386/compressed-1b.d: Updated for text/data/bss section alignment change. * binutils-all/i386/compressed-1c.d: Likewise. * binutils-all/x86-64/compressed-1b.d: Likewise. * binutils-all/x86-64/compressed-1c.d: Likewise. gas/ * config/tc-i386.c (md_begin): Don't align text/data/bss sections for ELF. gas/testsuite/ * gas/i386/size-3.d: Updated for text/data/bss section alignment change. * gas/i386/x86-64-size-1.d: Likewise. * gas/i386/x86-64-unwind.d: Likewise. * gas/i386/ilp32/x86-64-size-1.d: Likewise. * gas/i386/ilp32/x86-64-size-5.d: Likewise. * gas/i386/ilp32/x86-64-unwind.d: Likewise. ld/testsuite/ * ld-i386/pr12718.d: Updated for text/data/bss section alignment change. * ld-i386/tlsbindesc.dd: Likewise. * ld-i386/tlsbindesc.rd: Likewise. * ld-i386/tlsnopic.dd: Likewise. * ld-i386/tlspic.dd: Likewise. * ld-x86-64/ilp32-4.d: Likewise. * ld-x86-64/pr12718.d: Likewise. * ld-x86-64/split-by-file.rd: Likewise. * ld-x86-64/tlsbin.dd: Likewise. * ld-x86-64/tlsbin.rd: Likewise. * ld-x86-64/tlsbindesc.dd: Likewise. * ld-x86-64/tlsbindesc.rd: Likewise. * ld-x86-64/tlsdesc.dd: Likewise. * ld-x86-64/tlsdesc.rd: Likewise. * ld-x86-64/tlspic.dd: Likewise. * ld-x86-64/tlspic.rd: Likewise.
158 lines
4.9 KiB
Text
158 lines
4.9 KiB
Text
#source: tlsnopic1.s
|
|
#source: tlsnopic2.s
|
|
#as: --32
|
|
#ld: -shared -melf_i386 --no-ld-generated-unwind-info
|
|
#objdump: -drj.text
|
|
#target: i?86-*-*
|
|
|
|
.*: +file format elf32-i386.*
|
|
|
|
Disassembly of section .text:
|
|
|
|
[0-9a-f]+ <fn3>:
|
|
+[0-9a-f]+: 55[ ]+push %ebp
|
|
+[0-9a-f]+: 89 e5[ ]+mov %esp,%ebp
|
|
# @indntpoff IE against global var
|
|
+[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+c,%eax
|
|
# ->R_386_TLS_TPOFF sg1
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# @indntpoff direct %gs access IE against global var
|
|
+[0-9a-f]+: 8b 15 ([0-9a-f]{2} ){4}[ ]+mov 0x[0-9a-f]+0,%edx
|
|
# ->R_386_TLS_TPOFF sg2
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# @indntpoff IE against hidden var
|
|
+[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+4,%eax
|
|
# ->R_386_TLS_TPOFF [0x14000000]
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# @indntpoff direct %gs access IE against hidden var
|
|
+[0-9a-f]+: 8b 15 ([0-9a-f]{2} ){4}[ ]+mov 0x[0-9a-f]+8,%edx
|
|
# ->R_386_TLS_TPOFF [0x18000000]
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# @indntpoff IE against local var
|
|
+[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+4,%eax
|
|
# ->R_386_TLS_TPOFF [0x00000000]
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# @indntpoff direct %gs access IE against local var
|
|
+[0-9a-f]+: 8b 15 ([0-9a-f]{2} ){4}[ ]+mov 0x[0-9a-f]+8,%edx
|
|
# ->R_386_TLS_TPOFF [0x04000000]
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# LE @tpoff, global var
|
|
+[0-9a-f]+: ba fd ff ff ff[ ]+mov \$0xfffffffd,%edx
|
|
# R_386_TLS_TPOFF32 sg3
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 29 d0[ ]+sub %edx,%eax
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# LE @tpoff, local var
|
|
+[0-9a-f]+: b8 f7 ff ff ff[ ]+mov \$0xfffffff7,%eax
|
|
# R_386_TLS_TPOFF32
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 29 c2[ ]+sub %eax,%edx
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# LE @ntpoff, global var
|
|
+[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 8d 90 02 00 00 00[ ]+lea 0x2\(%eax\),%edx
|
|
# R_386_TLS_TPOFF sg4
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# LE @ntpoff, hidden var, non-canonical sequence
|
|
+[0-9a-f]+: b8 1c 00 00 00[ ]+mov \$0x1c,%eax
|
|
# R_386_TLS_TPOFF
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 01 c2[ ]+add %eax,%edx
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# LE @ntpoff, local var, non-canonical sequence
|
|
+[0-9a-f]+: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 81 c2 0d 00 00 00[ ]+add \$0xd,%edx
|
|
# R_386_TLS_TPOFF
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# Direct %gs access
|
|
# LE @ntpoff, global var
|
|
+[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax
|
|
# R_386_TLS_TPOFF sg5
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# LE @ntpoff, local var
|
|
+[0-9a-f]+: 65 8b 15 13 00 00 00 mov %gs:0x13,%edx
|
|
# R_386_TLS_TPOFF
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
# LE @ntpoff, hidden var
|
|
+[0-9a-f]+: 65 8b 15 21 00 00 00 mov %gs:0x21,%edx
|
|
# R_386_TLS_TPOFF
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 90[ ]+nop *
|
|
+[0-9a-f]+: 8b 5d fc[ ]+mov -0x4\(%ebp\),%ebx
|
|
+[0-9a-f]+: c9[ ]+leave *
|
|
+[0-9a-f]+: c3[ ]+ret *
|