tlsmark.s 555 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. .section ".tdata","awT",@progbits
  2. x: .int 1
  3. y: .int 2
  4. .section ".toc","aw",@progbits
  5. .p2align 3
  6. .LC0:
  7. .quad y@dtpmod
  8. .quad y@dtprel
  9. .LC1:
  10. .quad y@dtpmod
  11. .quad 0
  12. .text
  13. .global _start
  14. _start:
  15. b .L2
  16. .L1:
  17. bl __tls_get_addr(x@tlsgd)
  18. nop
  19. ld 4,0(3)
  20. addi 3,2,x@got@tlsld
  21. b .L3
  22. .L2:
  23. addi 3,2,x@got@tlsgd
  24. b .L1
  25. .L3:
  26. bl __tls_get_addr(x@tlsld)
  27. nop
  28. ld 4,x@dtprel(3)
  29. addi 3,2,.LC0@toc
  30. b .L5
  31. .L4:
  32. addi 3,2,.LC1@toc
  33. b .L6
  34. .L5:
  35. bl .__tls_get_addr(.LC0@tlsgd)
  36. nop
  37. ld 5,0(3)
  38. b .L4
  39. .L6:
  40. bl .__tls_get_addr(.LC1@tlsld)
  41. nop
  42. ld 5,y@dtprel(3)