Rafael Espindola | 64185cc | 2010-11-13 01:06:27 +0000 | [diff] [blame^] | 1 | // RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | elf-dump | FileCheck %s |
| 2 | |
| 3 | // Test that we don't regress on the size of the line info section. We used |
| 4 | // to handle negative line diffs incorrectly which manifested as very |
| 5 | // large integers being passed to DW_LNS_advance_line. |
| 6 | |
| 7 | // FIXME: This size is the same as gnu as, but we can probably do a bit better. |
| 8 | // FIXME2: We need a debug_line dumper so that we can test the actual contents. |
| 9 | |
| 10 | // CHECK: # Section 0x00000004 |
| 11 | // CHECK-NEXT: (('sh_name', 0x00000012) # '.debug_line' |
| 12 | // CHECK-NEXT: ('sh_type', 0x00000001) |
| 13 | // CHECK-NEXT: ('sh_flags', 0x00000000) |
| 14 | // CHECK-NEXT: ('sh_addr', 0x00000000) |
| 15 | // CHECK-NEXT: ('sh_offset', 0x00000044) |
| 16 | // CHECK-NEXT: ('sh_size', 0x0000003d) |
| 17 | // CHECK-NEXT: ('sh_link', 0x00000000) |
| 18 | // CHECK-NEXT: ('sh_info', 0x00000000) |
| 19 | // CHECK-NEXT: ('sh_addralign', 0x00000001) |
| 20 | // CHECK-NEXT: ('sh_entsize', 0x00000000) |
| 21 | // CHECK-NEXT: ), |
| 22 | |
| 23 | .section .debug_line,"",@progbits |
| 24 | .text |
| 25 | foo: |
| 26 | .file 1 "Driver.ii" |
| 27 | .loc 1 2 0 |
| 28 | nop |
| 29 | .loc 1 4 0 |
| 30 | nop |
| 31 | .loc 1 3 0 |
| 32 | nop |