tlsget2.d 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #source: tlsget.s
  2. #as: -a64 -mpower10
  3. #ld: -shared --plt-align=0 --power10-stubs=yes tlsdll.so
  4. #objdump: -dr
  5. #target: powerpc64*-*-*
  6. .*: file format .*
  7. Disassembly of section \.text:
  8. .* <.*\.plt_call\..*>:
  9. .*: (f8 41 00 18|18 00 41 f8) std r2,24\(r1\)
  10. .*: (60 00 00 00|00 00 00 60) nop
  11. .*: (04 10 .. ..|.. .. 10 04) pld r12,.*
  12. .*: (e5 80 .. ..|.. .. 80 e5)
  13. .*: (7d 89 03 a6|a6 03 89 7d) mtctr r12
  14. .*: (4e 80 04 20|20 04 80 4e) bctr
  15. .* <.*\.plt_call\.__tls_get_addr_opt.*>:
  16. .*: (e8 03 00 00|00 00 03 e8) ld r0,0\(r3\)
  17. .*: (e9 83 00 08|08 00 83 e9) ld r12,8\(r3\)
  18. .*: (2c 20 00 00|00 00 20 2c) cmpdi r0,0
  19. .*: (7c 60 1b 78|78 1b 60 7c) mr r0,r3
  20. .*: (7c 6c 6a 14|14 6a 6c 7c) add r3,r12,r13
  21. .*: (4d 82 00 20|20 00 82 4d) beqlr
  22. .*: (7c 03 03 78|78 03 03 7c) mr r3,r0
  23. .*: (7c 08 02 a6|a6 02 08 7c) mflr r0
  24. .*: (f8 01 00 08|08 00 01 f8) std r0,8\(r1\)
  25. .*: (f8 41 00 18|18 00 41 f8) std r2,24\(r1\)
  26. .*: (04 10 .. ..|.. .. 10 04) pld r12,.*
  27. .*: (e5 80 .. ..|.. .. 80 e5)
  28. .*: (7d 89 03 a6|a6 03 89 7d) mtctr r12
  29. .*: (4e 80 04 21|21 04 80 4e) bctrl
  30. .*: (e8 41 00 18|18 00 41 e8) ld r2,24\(r1\)
  31. .*: (e8 01 00 08|08 00 01 e8) ld r0,8\(r1\)
  32. .*: (7c 08 03 a6|a6 03 08 7c) mtlr r0
  33. .*: (4e 80 00 20|20 00 80 4e) blr
  34. #...
  35. .* <_start>:
  36. .*: (06 10 .. ..|.. .. 10 06) pla r3,.*
  37. .*: (38 60 .. ..|.. .. 60 38)
  38. .*: (4b ff .. ..|.. .. ff 4b) bl .* <.*\.plt_call\.__tls_get_addr_opt[^\+]*>
  39. .*: (60 00 00 00|00 00 00 60) nop
  40. .*: (38 62 .. ..|.. .. 62 38) addi r3,r2,.*
  41. .*: (4b ff .. ..|.. .. ff 4b) bl .* <.*\.plt_call\.__tls_get_addr_opt[^\+]*>
  42. .*: (60 00 00 00|00 00 00 60) nop
  43. .*: (4b ff .. ..|.. .. ff 4b) bl .* <.*\.plt_call\..*:.*\+0x4>
  44. .*: (4b ff .. ..|.. .. ff 4b) bl .* <.*.plt_call\..*:[^\+]*>
  45. .*: (e8 41 00 18|18 00 41 e8) ld r2,24\(r1\)
  46. .* <fun>:
  47. .*: (06 10 00 00|00 00 10 06) pla r3,8.*
  48. .*: (38 60 00 08|08 00 60 38)
  49. .*: (4e 80 00 20|20 00 80 4e) blr
  50. .*: (60 00 00 00|00 00 00 60) nop
  51. .*: (00 00 00 00|d0 02 01 00) .*
  52. .*: (00 01 02 d0|00 00 00 00) .*
  53. .* <__glink_PLTresolve>:
  54. .*: (7c 08 02 a6|a6 02 08 7c) mflr r0
  55. .*: (42 9f 00 05|05 00 9f 42) bcl 20,4\*cr7\+so,.* <__glink_PLTresolve\+0x8>
  56. .*: (7d 68 02 a6|a6 02 68 7d) mflr r11
  57. .*: (7c 08 03 a6|a6 03 08 7c) mtlr r0
  58. .*: (e8 0b ff f0|f0 ff 0b e8) ld r0,-16\(r11\)
  59. .*: (7d 8b 60 50|50 60 8b 7d) subf r12,r11,r12
  60. .*: (7d 60 5a 14|14 5a 60 7d) add r11,r0,r11
  61. .*: (38 0c ff d4|d4 ff 0c 38) addi r0,r12,-44
  62. .*: (e9 8b 00 00|00 00 8b e9) ld r12,0\(r11\)
  63. .*: (78 00 f0 82|82 f0 00 78) srdi r0,r0,2
  64. .*: (7d 89 03 a6|a6 03 89 7d) mtctr r12
  65. .*: (e9 6b 00 08|08 00 6b e9) ld r11,8\(r11\)
  66. .*: (4e 80 04 20|20 04 80 4e) bctr
  67. .* <__tls_get_addr_opt@plt>:
  68. .*: (4b ff .. ..|.. .. ff 4b) b .* <__glink_PLTresolve>