30 lines
		
	
	
		
			875 B
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			875 B
		
	
	
	
		
			LLVM
		
	
	
	
; RUN: llc -mtriple=hexagon-unknown-elf < %s | FileCheck %s
 | 
						|
; RUN: llc -mtriple=hexagon-unknown-linux-musl  < %s | FileCheck %s
 | 
						|
 | 
						|
define i32 @foo() nounwind noinline uwtable "function-instrument"="xray-always" {
 | 
						|
; CHECK-LABEL: .Lxray_sled_0:
 | 
						|
; CHECK:       jump .Ltmp0
 | 
						|
; CHECK:         nop
 | 
						|
; CHECK:         nop
 | 
						|
; CHECK:         nop
 | 
						|
; CHECK:         nop
 | 
						|
; CHECK-LABEL: .Ltmp0:
 | 
						|
  ret i32 0
 | 
						|
; CHECK-LABEL: .Lxray_sled_1:
 | 
						|
; CHECK:       jump .Ltmp1
 | 
						|
; CHECK:         nop
 | 
						|
; CHECK:         nop
 | 
						|
; CHECK:         nop
 | 
						|
; CHECK:         nop
 | 
						|
; CHECK-LABEL: .Ltmp1:
 | 
						|
; CHECK:       jumpr r31
 | 
						|
}
 | 
						|
; CHECK-LABEL: xray_instr_map
 | 
						|
; CHECK-LABEL: .Lxray_sleds_start0:
 | 
						|
; CHECK:       .word {{.*}}Lxray_sled_0
 | 
						|
; CHECK:       .word {{.*}}Lxray_sled_1
 | 
						|
; CHECK-LABEL: .Lxray_sleds_end0:
 | 
						|
; CHECK-LABEL: xray_fn_idx
 | 
						|
; CHECK:       .word {{.*}}Lxray_sleds_start0
 | 
						|
; CHECK-NEXT:  .word {{.*}}Lxray_sleds_end0
 |