Home | History | Annotate | Download | only in ld-i386
      1 #source: tlsgdesc.s
      2 #as: --32
      3 #ld: -shared -melf_i386 --no-ld-generated-unwind-info
      4 #objdump: -drj.text
      5 #target: i?86-*-*
      6 
      7 .*: +file format elf32-i386.*
      8 
      9 Disassembly of section .text:
     10 
     11 [0-9a-f]+ <fc1>:
     12  +[0-9a-f]+:	55[ 	]+push   %ebp
     13  +[0-9a-f]+:	89 e5[ 	]+mov    %esp,%ebp
     14  +[0-9a-f]+:	53[ 	]+push   %ebx
     15  +[0-9a-f]+:	50[ 	]+push   %eax
     16  +[0-9a-f]+:	e8 00 00 00 00[ 	]+call   [0-9a-f]+ <.*>
     17  +[0-9a-f]+:	5b[ 	]+pop    %ebx
     18  +[0-9a-f]+:	81 c3 ([0-9a-f]{2} ){4}[ 	]+add    \$0x[0-9a-f]+,%ebx
     19  +[0-9a-f]+:	90[ 	]+nop *
     20  +[0-9a-f]+:	90[ 	]+nop *
     21  +[0-9a-f]+:	90[ 	]+nop *
     22  +[0-9a-f]+:	90[ 	]+nop *
     23 #  @gottpoff IE against global var
     24  +[0-9a-f]+:	65 8b 0d 00 00 00 00[ 	]+mov    %gs:0x0,%ecx
     25  +[0-9a-f]+:	90[ 	]+nop *
     26  +[0-9a-f]+:	90[ 	]+nop *
     27  +[0-9a-f]+:	2b 8b e0 ff ff ff[ 	]+sub    -0x20\(%ebx\),%ecx
     28 #				->R_386_TLS_TPOFF32	sG3
     29  +[0-9a-f]+:	90[ 	]+nop *
     30  +[0-9a-f]+:	90[ 	]+nop *
     31  +[0-9a-f]+:	90[ 	]+nop *
     32  +[0-9a-f]+:	90[ 	]+nop *
     33 #  @gotntpoff IE against global var
     34  +[0-9a-f]+:	65 8b 0d 00 00 00 00[ 	]+mov    %gs:0x0,%ecx
     35  +[0-9a-f]+:	90[ 	]+nop *
     36  +[0-9a-f]+:	90[ 	]+nop *
     37  +[0-9a-f]+:	03 8b f0 ff ff ff[ 	]+add    -0x10\(%ebx\),%ecx
     38 #				->R_386_TLS_TPOFF	sG4
     39  +[0-9a-f]+:	90[ 	]+nop *
     40  +[0-9a-f]+:	90[ 	]+nop *
     41  +[0-9a-f]+:	90[ 	]+nop *
     42  +[0-9a-f]+:	90[ 	]+nop *
     43 #  GD
     44  +[0-9a-f]+:	8d 04 1d f8 ff ff ff[ 	]+lea    -0x8\(,%ebx,1\),%eax
     45 #				->R_386_TLS_DTPMOD32	sG1
     46  +[0-9a-f]+:	e8 ([0-9a-f]{2} ){4}[ 	]+call   [0-9a-f]+ <___tls_get_addr@plt>
     47 #				->R_386_JUMP_SLOT	___tls_get_addr
     48  +[0-9a-f]+:	90[ 	]+nop *
     49  +[0-9a-f]+:	90[ 	]+nop *
     50  +[0-9a-f]+:	90[ 	]+nop *
     51  +[0-9a-f]+:	90[ 	]+nop *
     52  +[0-9a-f]+:	8d 83 18 00 00 00[ 	]+lea    0x18\(%ebx\),%eax
     53 #				->R_386_TLS_DESC	sG1
     54  +[0-9a-f]+:	ff 10[ 	]+call   \*\(%eax\)
     55  +[0-9a-f]+:	90[ 	]+nop *
     56  +[0-9a-f]+:	90[ 	]+nop *
     57  +[0-9a-f]+:	90[ 	]+nop *
     58  +[0-9a-f]+:	90[ 	]+nop *
     59  +[0-9a-f]+:	8d 83 10 00 00 00[ 	]+lea    0x10\(%ebx\),%eax
     60 #				->R_386_TLS_DESC	sG2
     61  +[0-9a-f]+:	ff 10[ 	]+call   \*\(%eax\)
     62  +[0-9a-f]+:	90[ 	]+nop *
     63  +[0-9a-f]+:	90[ 	]+nop *
     64  +[0-9a-f]+:	90[ 	]+nop *
     65  +[0-9a-f]+:	90[ 	]+nop *
     66  +[0-9a-f]+:	8d 04 1d e8 ff ff ff[ 	]+lea    -0x18\(,%ebx,1\),%eax
     67 #				->R_386_TLS_DTPMOD32	sG2
     68  +[0-9a-f]+:	e8 ([0-9a-f]{2} ){4}[ 	]+call   [0-9a-f]+ <___tls_get_addr@plt>
     69 #				->R_386_JUMP_SLOT	___tls_get_addr
     70  +[0-9a-f]+:	90[ 	]+nop *
     71  +[0-9a-f]+:	90[ 	]+nop *
     72  +[0-9a-f]+:	90[ 	]+nop *
     73  +[0-9a-f]+:	90[ 	]+nop *
     74 #  GD -> IE because variable is referenced through @gottpoff too
     75  +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
     76  +[0-9a-f]+:	2b 83 e0 ff ff ff[ 	]+sub    -0x20\(%ebx\),%eax
     77 #				->R_386_TLS_TPOFF32	sG3
     78  +[0-9a-f]+:	90[ 	]+nop *
     79  +[0-9a-f]+:	90[ 	]+nop *
     80  +[0-9a-f]+:	90[ 	]+nop *
     81  +[0-9a-f]+:	90[ 	]+nop *
     82  +[0-9a-f]+:	8b 83 e0 ff ff ff[ 	]+mov    -0x20\(%ebx\),%eax
     83 #				->R_386_TLS_TPOFF32	sG3
     84  +[0-9a-f]+:	f7 d8[ 	]+neg    %eax
     85  +[0-9a-f]+:	90[ 	]+nop *
     86  +[0-9a-f]+:	90[ 	]+nop *
     87  +[0-9a-f]+:	90[ 	]+nop *
     88  +[0-9a-f]+:	90[ 	]+nop *
     89 #  GD -> IE because variable is referenced through @gotntpoff too
     90  +[0-9a-f]+:	8b 83 f0 ff ff ff[ 	]+mov    -0x10\(%ebx\),%eax
     91 #				->R_386_TLS_TPOFF	sG4
     92  +[0-9a-f]+:	66 90[ 	]+xchg   %ax,%ax
     93  +[0-9a-f]+:	90[ 	]+nop *
     94  +[0-9a-f]+:	90[ 	]+nop *
     95  +[0-9a-f]+:	90[ 	]+nop *
     96  +[0-9a-f]+:	90[ 	]+nop *
     97  +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
     98  +[0-9a-f]+:	03 83 f0 ff ff ff[ 	]+add    -0x10\(%ebx\),%eax
     99 #				->R_386_TLS_TPOFF	sG4
    100  +[0-9a-f]+:	90[ 	]+nop *
    101  +[0-9a-f]+:	90[ 	]+nop *
    102  +[0-9a-f]+:	90[ 	]+nop *
    103  +[0-9a-f]+:	90[ 	]+nop *
    104 #  GD -> IE because variable is referenced through @gotntpoff too
    105  +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
    106  +[0-9a-f]+:	03 83 e4 ff ff ff[ 	]+add    -0x1c\(%ebx\),%eax
    107 #				->R_386_TLS_TPOFF	sG5
    108  +[0-9a-f]+:	90[ 	]+nop *
    109  +[0-9a-f]+:	90[ 	]+nop *
    110  +[0-9a-f]+:	90[ 	]+nop *
    111  +[0-9a-f]+:	90[ 	]+nop *
    112  +[0-9a-f]+:	8b 83 e4 ff ff ff[ 	]+mov    -0x1c\(%ebx\),%eax
    113 #				->R_386_TLS_TPOFF	sG5
    114  +[0-9a-f]+:	66 90[ 	]+xchg   %ax,%ax
    115  +[0-9a-f]+:	90[ 	]+nop *
    116  +[0-9a-f]+:	90[ 	]+nop *
    117  +[0-9a-f]+:	90[ 	]+nop *
    118  +[0-9a-f]+:	90[ 	]+nop *
    119 #  GD -> IE because variable is referenced through @gottpoff too
    120  +[0-9a-f]+:	8b 83 f4 ff ff ff[ 	]+mov    -0xc\(%ebx\),%eax
    121 #				->R_386_TLS_TPOFF32	sG6
    122  +[0-9a-f]+:	f7 d8[ 	]+neg    %eax
    123  +[0-9a-f]+:	90[ 	]+nop *
    124  +[0-9a-f]+:	90[ 	]+nop *
    125  +[0-9a-f]+:	90[ 	]+nop *
    126  +[0-9a-f]+:	90[ 	]+nop *
    127  +[0-9a-f]+:	65 a1 00 00 00 00[ 	]+mov    %gs:0x0,%eax
    128  +[0-9a-f]+:	2b 83 f4 ff ff ff[ 	]+sub    -0xc\(%ebx\),%eax
    129 #				->R_386_TLS_TPOFF32	sG6
    130  +[0-9a-f]+:	90[ 	]+nop *
    131  +[0-9a-f]+:	90[ 	]+nop *
    132  +[0-9a-f]+:	90[ 	]+nop *
    133  +[0-9a-f]+:	90[ 	]+nop *
    134 #  @gotntpoff IE against global var
    135  +[0-9a-f]+:	65 8b 0d 00 00 00 00[ 	]+mov    %gs:0x0,%ecx
    136  +[0-9a-f]+:	90[ 	]+nop *
    137  +[0-9a-f]+:	90[ 	]+nop *
    138  +[0-9a-f]+:	03 8b e4 ff ff ff[ 	]+add    -0x1c\(%ebx\),%ecx
    139 #				->R_386_TLS_TPOFF	sG5
    140  +[0-9a-f]+:	90[ 	]+nop *
    141  +[0-9a-f]+:	90[ 	]+nop *
    142  +[0-9a-f]+:	90[ 	]+nop *
    143  +[0-9a-f]+:	90[ 	]+nop *
    144 #  @gottpoff IE against global var
    145  +[0-9a-f]+:	65 8b 0d 00 00 00 00[ 	]+mov    %gs:0x0,%ecx
    146  +[0-9a-f]+:	90[ 	]+nop *
    147  +[0-9a-f]+:	90[ 	]+nop *
    148  +[0-9a-f]+:	2b 8b f4 ff ff ff[ 	]+sub    -0xc\(%ebx\),%ecx
    149 #				->R_386_TLS_TPOFF32	sG6
    150  +[0-9a-f]+:	90[ 	]+nop *
    151  +[0-9a-f]+:	90[ 	]+nop *
    152  +[0-9a-f]+:	90[ 	]+nop *
    153  +[0-9a-f]+:	90[ 	]+nop *
    154  +[0-9a-f]+:	8b 5d fc[ 	]+mov    -0x4\(%ebp\),%ebx
    155  +[0-9a-f]+:	c9[ 	]+leave *
    156  +[0-9a-f]+:	c3[ 	]+ret *
    157