1 .section .toc,"aw" 2x4t: 3 .quad x4 4x5t: 5 .quad x5 6x6t: 7 .quad x6 8 9 .section .sdata,"aw" 10x1: 11 .byte 1 12x2: 13 .byte 2 14x3: 15 .byte 3 16x4: 17 .byte 4 18x5: 19 .byte 5 20x6: 21 .byte 6 22 23 .globl _start 24 .text 25_start: 26# no need for got entry, optimise to nop,addi 27 addis 9,2,x1@got@ha 28 ld 9,x1@got@l(9) 29# must keep got entry, optimise to nop,addi,ld 30 addis 4,2,x2@got@ha 31 addi 5,4,x2@got@l 32 ld 6,0(5) 33 34# no need for toc entry, optimise to nop,addi 35 addis 9,2,x4t@toc@ha 36 ld 9,x4t@toc@l(9) 37# must keep toc entry, optimise to nop,addi,ld 38# if we had a reloc tying the ld to x5/x5t then we could throw away 39# the toc entry and optimise to nop,nop,addi 40 addis 4,2,x5t@toc@ha 41 addi 5,4,x5t@toc@l 42 ld 6,0(5) 43