4 // The goal with this test is:
5 // 1. Have main() followed by foo()
6 // 2. Have the no-return call to abort() in main be the last instruction
7 // 3. Have the next instruction be the start of foo()
8 // 4. The debug info for argv uses a location list.
9 // clang at -O1 on x86_64 or arm64 has debuginfo like
10 // DW_AT_location (0x00000049:
11 // [0x0000000100003f15, 0x0000000100003f25): DW_OP_reg4 RSI
12 // [0x0000000100003f25, 0x0000000100003f5b): DW_OP_reg15 R15)
15 int main(int argc
, char **argv
) {
20 printf("%s %d\n", argv
[0], argc
);
21 abort(); /// argv is still be accessible here
23 void foo(int in
) { printf("%d\n", in
); }