1*87aa9c9eSJonas Devlieghere# REQUIRES: x86 2*87aa9c9eSJonas Devlieghere# RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux %s -o %t 3*87aa9c9eSJonas Devlieghere# RUN: lldb-test object-file %t | FileCheck %s 4*87aa9c9eSJonas Devlieghere 5*87aa9c9eSJonas Devlieghere## Check that we are able to parse ELF files with more than SHN_LORESERVE 6*87aa9c9eSJonas Devlieghere## sections. This generates a file that contains 64k sections from 7*87aa9c9eSJonas Devlieghere## aaaaaaaa..dddddddd, plus a couple of standard ones (.strtab, etc.) 8*87aa9c9eSJonas Devlieghere## Check the number is correct plus the names of a couple of chosen sections. 9*87aa9c9eSJonas Devlieghere 10*87aa9c9eSJonas Devlieghere# CHECK: Showing 65540 sections 11*87aa9c9eSJonas Devlieghere# CHECK: Name: aaaaaaaa 12*87aa9c9eSJonas Devlieghere# CHECK: Name: bbbbbbbb 13*87aa9c9eSJonas Devlieghere# CHECK: Name: cccccccc 14*87aa9c9eSJonas Devlieghere# CHECK: Name: abcdabcd 15*87aa9c9eSJonas Devlieghere# CHECK: Name: dddddddd 16*87aa9c9eSJonas Devlieghere 17*87aa9c9eSJonas Devlieghere.macro gen_sections4 x 18*87aa9c9eSJonas Devlieghere .section a\x 19*87aa9c9eSJonas Devlieghere .section b\x 20*87aa9c9eSJonas Devlieghere .section c\x 21*87aa9c9eSJonas Devlieghere .section d\x 22*87aa9c9eSJonas Devlieghere.endm 23*87aa9c9eSJonas Devlieghere 24*87aa9c9eSJonas Devlieghere.macro gen_sections16 x 25*87aa9c9eSJonas Devlieghere gen_sections4 a\x 26*87aa9c9eSJonas Devlieghere gen_sections4 b\x 27*87aa9c9eSJonas Devlieghere gen_sections4 c\x 28*87aa9c9eSJonas Devlieghere gen_sections4 d\x 29*87aa9c9eSJonas Devlieghere.endm 30*87aa9c9eSJonas Devlieghere 31*87aa9c9eSJonas Devlieghere.macro gen_sections64 x 32*87aa9c9eSJonas Devlieghere gen_sections16 a\x 33*87aa9c9eSJonas Devlieghere gen_sections16 b\x 34*87aa9c9eSJonas Devlieghere gen_sections16 c\x 35*87aa9c9eSJonas Devlieghere gen_sections16 d\x 36*87aa9c9eSJonas Devlieghere.endm 37*87aa9c9eSJonas Devlieghere 38*87aa9c9eSJonas Devlieghere.macro gen_sections256 x 39*87aa9c9eSJonas Devlieghere gen_sections64 a\x 40*87aa9c9eSJonas Devlieghere gen_sections64 b\x 41*87aa9c9eSJonas Devlieghere gen_sections64 c\x 42*87aa9c9eSJonas Devlieghere gen_sections64 d\x 43*87aa9c9eSJonas Devlieghere.endm 44*87aa9c9eSJonas Devlieghere 45*87aa9c9eSJonas Devlieghere.macro gen_sections1024 x 46*87aa9c9eSJonas Devlieghere gen_sections256 a\x 47*87aa9c9eSJonas Devlieghere gen_sections256 b\x 48*87aa9c9eSJonas Devlieghere gen_sections256 c\x 49*87aa9c9eSJonas Devlieghere gen_sections256 d\x 50*87aa9c9eSJonas Devlieghere.endm 51*87aa9c9eSJonas Devlieghere 52*87aa9c9eSJonas Devlieghere.macro gen_sections4096 x 53*87aa9c9eSJonas Devlieghere gen_sections1024 a\x 54*87aa9c9eSJonas Devlieghere gen_sections1024 b\x 55*87aa9c9eSJonas Devlieghere gen_sections1024 c\x 56*87aa9c9eSJonas Devlieghere gen_sections1024 d\x 57*87aa9c9eSJonas Devlieghere.endm 58*87aa9c9eSJonas Devlieghere 59*87aa9c9eSJonas Devlieghere.macro gen_sections16384 x 60*87aa9c9eSJonas Devlieghere gen_sections4096 a\x 61*87aa9c9eSJonas Devlieghere gen_sections4096 b\x 62*87aa9c9eSJonas Devlieghere gen_sections4096 c\x 63*87aa9c9eSJonas Devlieghere gen_sections4096 d\x 64*87aa9c9eSJonas Devlieghere.endm 65*87aa9c9eSJonas Devlieghere 66*87aa9c9eSJonas Devliegheregen_sections16384 a 67*87aa9c9eSJonas Devliegheregen_sections16384 b 68*87aa9c9eSJonas Devliegheregen_sections16384 c 69*87aa9c9eSJonas Devliegheregen_sections16384 d 70*87aa9c9eSJonas Devlieghere 71*87aa9c9eSJonas Devlieghere.global _start 72*87aa9c9eSJonas Devlieghere_start: 73