66 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
| # Test that an empty .debug_aranges section doesn't confuse (or crash) us.
 | |
| 
 | |
| # REQUIRES: x86
 | |
| 
 | |
| # RUN: llvm-mc %s -triple x86_64-pc-linux -filetype=obj >%t
 | |
| # RUN: %lldb %t -o "breakpoint set -n f" -b | FileCheck %s
 | |
| 
 | |
| # CHECK: Breakpoint 1: where = {{.*}}`f, address = 0x0000000000000047
 | |
| 
 | |
| 	.text
 | |
| 	.globl	f                       # -- Begin function f
 | |
| 	.type	f,@function
 | |
|         .rept 0x47
 | |
|         nop
 | |
|         .endr
 | |
| f:                                      # @f
 | |
| .Lfunc_begin0:
 | |
| 	retq
 | |
| .Lfunc_end0:
 | |
| 	.size	f, .Lfunc_end0-f
 | |
|                                         # -- End function
 | |
| 	.section	.debug_str,"MS",@progbits,1
 | |
| .Linfo_string3:
 | |
| 	.asciz	"f"                     # string offset=83
 | |
| 	.section	.debug_abbrev,"",@progbits
 | |
| 	.byte	1                       # Abbreviation Code
 | |
| 	.byte	17                      # DW_TAG_compile_unit
 | |
| 	.byte	1                       # DW_CHILDREN_yes
 | |
| 	.byte	17                      # DW_AT_low_pc
 | |
| 	.byte	1                       # DW_FORM_addr
 | |
| 	.byte	18                      # DW_AT_high_pc
 | |
| 	.byte	6                       # DW_FORM_data4
 | |
| 	.byte	0                       # EOM(1)
 | |
| 	.byte	0                       # EOM(2)
 | |
| 	.byte	2                       # Abbreviation Code
 | |
| 	.byte	46                      # DW_TAG_subprogram
 | |
| 	.byte	0                       # DW_CHILDREN_no
 | |
| 	.byte	17                      # DW_AT_low_pc
 | |
| 	.byte	1                       # DW_FORM_addr
 | |
| 	.byte	18                      # DW_AT_high_pc
 | |
| 	.byte	6                       # DW_FORM_data4
 | |
| 	.byte	3                       # DW_AT_name
 | |
| 	.byte	14                      # DW_FORM_strp
 | |
| 	.byte	0                       # EOM(1)
 | |
| 	.byte	0                       # EOM(2)
 | |
| 	.byte	0                       # EOM(3)
 | |
| 	.section	.debug_info,"",@progbits
 | |
| .Lcu_begin0:
 | |
| 	.long	.Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
 | |
| .Ldebug_info_start0:
 | |
| 	.short	4                       # DWARF version number
 | |
| 	.long	.debug_abbrev           # Offset Into Abbrev. Section
 | |
| 	.byte	8                       # Address Size (in bytes)
 | |
| 	.byte	1                       # Abbrev [1] 0xb:0x35 DW_TAG_compile_unit
 | |
| 	.quad	.Lfunc_begin0           # DW_AT_low_pc
 | |
| 	.long	.Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
 | |
| 	.byte	2                       # Abbrev [2] 0x2a:0x15 DW_TAG_subprogram
 | |
| 	.quad	.Lfunc_begin0           # DW_AT_low_pc
 | |
| 	.long	.Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
 | |
| 	.long	.Linfo_string3          # DW_AT_name
 | |
| 	.byte	0                       # End Of Children Mark
 | |
| .Ldebug_info_end0:
 | |
| 
 | |
| 	.section	".note.GNU-stack","",@progbits
 | |
| 	.section	.debug_aranges,"",@progbits
 |