section.s 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. # RUN: llvm-mc -triple i386-pc-linux-gnu -filetype=obj -o %t %s
  2. # RUN: llvm-readobj -s -sd < %t | FileCheck %s
  3. .section test1
  4. .byte 1
  5. .section test2
  6. .byte 2
  7. .previous
  8. .byte 1
  9. .section test2
  10. .byte 2
  11. .previous
  12. .byte 1
  13. .section test1
  14. .byte 1
  15. .previous
  16. .byte 1
  17. .section test2
  18. .byte 2
  19. .pushsection test3
  20. .byte 3
  21. .pushsection test4
  22. .byte 4
  23. .pushsection test5
  24. .byte 5
  25. .popsection
  26. .byte 4
  27. .popsection
  28. .byte 3
  29. .popsection
  30. .byte 2
  31. .pushsection test3
  32. .byte 3
  33. .pushsection test4
  34. .byte 4
  35. .previous
  36. .byte 3
  37. .popsection
  38. .byte 3
  39. .previous
  40. .byte 2
  41. .section test1
  42. .byte 1
  43. .popsection
  44. .byte 2
  45. .previous
  46. .byte 1
  47. .previous
  48. # CHECK: Sections [
  49. # CHECK: Section {
  50. # CHECK: Name: test1
  51. # CHECK-NEXT: Type: SHT_PROGBITS
  52. # CHECK-NEXT: Flags [ (0x0)
  53. # CHECK-NEXT: ]
  54. # CHECK-NEXT: Address: 0x0
  55. # CHECK-NEXT: Offset: 0x34
  56. # CHECK-NEXT: Size: 7
  57. # CHECK-NEXT: Link: 0
  58. # CHECK-NEXT: Info: 0
  59. # CHECK-NEXT: AddressAlignment: 1
  60. # CHECK-NEXT: EntrySize: 0
  61. # CHECK-NEXT: SectionData (
  62. # CHECK-NEXT: 0000: 01010101 010101
  63. # CHECK-NEXT: )
  64. # CHECK-NEXT: }
  65. # CHECK: Section {
  66. # CHECK: Name: test2
  67. # CHECK-NEXT: Type: SHT_PROGBITS
  68. # CHECK-NEXT: Flags [ (0x0)
  69. # CHECK-NEXT: ]
  70. # CHECK-NEXT: Address: 0x0
  71. # CHECK-NEXT: Offset: 0x3B
  72. # CHECK-NEXT: Size: 6
  73. # CHECK-NEXT: Link: 0
  74. # CHECK-NEXT: Info: 0
  75. # CHECK-NEXT: AddressAlignment: 1
  76. # CHECK-NEXT: EntrySize: 0
  77. # CHECK-NEXT: SectionData (
  78. # CHECK-NEXT: 0000: 02020202 0202
  79. # CHECK-NEXT: )
  80. # CHECK-NEXT: }
  81. # CHECK: Section {
  82. # CHECK: Name: test3
  83. # CHECK-NEXT: Type: SHT_PROGBITS
  84. # CHECK-NEXT: Flags [ (0x0)
  85. # CHECK-NEXT: ]
  86. # CHECK-NEXT: Address: 0x0
  87. # CHECK-NEXT: Offset: 0x41
  88. # CHECK-NEXT: Size: 5
  89. # CHECK-NEXT: Link: 0
  90. # CHECK-NEXT: Info: 0
  91. # CHECK-NEXT: AddressAlignment: 1
  92. # CHECK-NEXT: EntrySize: 0
  93. # CHECK-NEXT: SectionData (
  94. # CHECK-NEXT: 0000: 03030303 03
  95. # CHECK-NEXT: )
  96. # CHECK-NEXT: }
  97. # CHECK: Section {
  98. # CHECK: Name: test4
  99. # CHECK-NEXT: Type: SHT_PROGBITS
  100. # CHECK-NEXT: Flags [ (0x0)
  101. # CHECK-NEXT: ]
  102. # CHECK-NEXT: Address: 0x0
  103. # CHECK-NEXT: Offset: 0x46
  104. # CHECK-NEXT: Size: 3
  105. # CHECK-NEXT: Link: 0
  106. # CHECK-NEXT: Info: 0
  107. # CHECK-NEXT: AddressAlignment: 1
  108. # CHECK-NEXT: EntrySize: 0
  109. # CHECK-NEXT: SectionData (
  110. # CHECK-NEXT: 0000: 040404
  111. # CHECK-NEXT: )
  112. # CHECK-NEXT: }
  113. # CHECK: Section {
  114. # CHECK: Name: test5
  115. # CHECK-NEXT: Type: SHT_PROGBITS
  116. # CHECK-NEXT: Flags [ (0x0)
  117. # CHECK-NEXT: ]
  118. # CHECK-NEXT: Address: 0x0
  119. # CHECK-NEXT: Offset: 0x49
  120. # CHECK-NEXT: Size: 1
  121. # CHECK-NEXT: Link: 0
  122. # CHECK-NEXT: Info: 0
  123. # CHECK-NEXT: AddressAlignment: 1
  124. # CHECK-NEXT: EntrySize: 0
  125. # CHECK-NEXT: SectionData (
  126. # CHECK-NEXT: 0000: 05
  127. # CHECK-NEXT: )
  128. # CHECK-NEXT: }