You've already forked linux-packaging-mono
							
							
		
			
	
	
		
			96 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
		
		
			
		
	
	
			96 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
|   | # RUN: llvm-mc -triple x86_64-pc-linux -filetype=obj %s -o %t | ||
|  | # RUN: llvm-dwarfdump -v %t | FileCheck %s | ||
|  | 
 | ||
|  | # CHECK: .debug_info contents: | ||
|  | # CHECK: DW_TAG_compile_unit | ||
|  | # CHECK: DW_AT_ranges [DW_FORM_sec_offset] (0x00000000 | ||
|  | # CHECK-NEXT:  [0x0000000000000000 - 0x0000000000000001) ".text.foo1" | ||
|  | # CHECK-NEXT:  [0x0000000000000000 - 0x0000000000000002) ".text.foo2" [4] | ||
|  | # CHECK-NEXT:  [0x0000000000000000 - 0x0000000000000003) ".text.foo2" [5]) | ||
|  | 
 | ||
|  | # CHECK: .debug_ranges contents: | ||
|  | # CHECK:   00000000 0000000000000000 0000000000000001 | ||
|  | # CHECK:   00000000 0000000000000000 0000000000000002 | ||
|  | # CHECK:   00000000 0000000000000000 0000000000000003 | ||
|  | # CHECK:   00000000 <End of list> | ||
|  | 
 | ||
|  | # RUN: llvm-dwarfdump %t | FileCheck %s --check-prefix=BRIEF | ||
|  | # BRIEF: DW_TAG_compile_unit | ||
|  | # BRIEF: DW_AT_ranges         (0x00000000 | ||
|  | # BRIEF-NEXT:  [0x0000000000000000 - 0x0000000000000001) | ||
|  | # BRIEF-NEXT:  [0x0000000000000000 - 0x0000000000000002) | ||
|  | # BRIEF-NEXT:  [0x0000000000000000 - 0x0000000000000003)) | ||
|  | 
 | ||
|  | ## Asm code for testcase is a reduced and modified output from next | ||
|  | ## invocation and source: | ||
|  | # clang test.cpp -S -o test.s -gmlt -ffunction-sections | ||
|  | # test.cpp: | ||
|  | #   void foo1() { }   | ||
|  | #   void foo2() { }   | ||
|  | 
 | ||
|  | .section .text.foo1,"ax",@progbits
 | ||
|  | .Lfunc_begin0: | ||
|  |  nop | ||
|  | .Lfunc_end0: | ||
|  | 
 | ||
|  | .section .text.foo2,"ax",@progbits, unique, 1
 | ||
|  | .Lfunc_begin1: | ||
|  |  nop | ||
|  |  nop | ||
|  | .Lfunc_end1: | ||
|  | 
 | ||
|  | .section .text.foo2,"ax",@progbits, unique, 2
 | ||
|  | .Lfunc_begin2: | ||
|  |  nop | ||
|  |  nop | ||
|  |  nop | ||
|  | .Lfunc_end2: | ||
|  | 
 | ||
|  | .section .debug_abbrev,"",@progbits
 | ||
|  | .byte 1                       # Abbreviation Code | ||
|  | .byte 17                      # DW_TAG_compile_unit | ||
|  | .byte 0                       # DW_CHILDREN_no | ||
|  | .byte 37                      # DW_AT_producer | ||
|  | .byte 14                      # DW_FORM_strp | ||
|  | .byte 19                      # DW_AT_language | ||
|  | .byte 5                       # DW_FORM_data2 | ||
|  | .byte 3                       # DW_AT_name | ||
|  | .byte 14                      # DW_FORM_strp | ||
|  | .byte 16                      # DW_AT_stmt_list | ||
|  | .byte 23                      # DW_FORM_sec_offset | ||
|  | .byte 27                      # DW_AT_comp_dir | ||
|  | .byte 14                      # DW_FORM_strp | ||
|  | .byte 17                      # DW_AT_low_pc | ||
|  | .byte 1                       # DW_FORM_addr | ||
|  | .byte 85                      # DW_AT_ranges | ||
|  | .byte 23                      # DW_FORM_sec_offset | ||
|  | .byte 0                       # EOM(1) | ||
|  | .byte 0                       # EOM(2) | ||
|  | .byte 0                       # EOM(3) | ||
|  | 
 | ||
|  | .section .debug_info,"",@progbits
 | ||
|  | .Lcu_begin0: | ||
|  | .long 38                      # Length of Unit | ||
|  | .short 4                      # DWARF version number | ||
|  | .long .debug_abbrev           # Offset Into Abbrev. Section | ||
|  | .byte 8                       # Address Size (in bytes) | ||
|  | .byte 1                       # Abbrev [1] 0xb:0x1f DW_TAG_compile_unit | ||
|  | .long 0                       # DW_AT_producer | ||
|  | .short 4                      # DW_AT_language | ||
|  | .long 0                       # DW_AT_name | ||
|  | .long 0                       # DW_AT_stmt_list | ||
|  | .long 0                       # DW_AT_comp_dir | ||
|  | .quad 0                       # DW_AT_low_pc | ||
|  | .long .Ldebug_ranges0         # DW_AT_ranges | ||
|  | 
 | ||
|  | .section .debug_ranges,"",@progbits
 | ||
|  | .Ldebug_ranges0: | ||
|  | .quad .Lfunc_begin0 | ||
|  | .quad .Lfunc_end0 | ||
|  | .quad .Lfunc_begin1 | ||
|  | .quad .Lfunc_end1 | ||
|  | .quad .Lfunc_begin2 | ||
|  | .quad .Lfunc_end2 | ||
|  | .quad 0
 | ||
|  | .quad 0
 |