brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.8 KiB · a101789 Raw
88 lines · plain
1; RUN: llc -mtriple=aarch64-unknown-linux-gnu < %s | FileCheck %s -check-prefixes=CHECK,CHECK-LINUX2; RUN: llc -mtriple=aarch64-apple-darwin      < %s | FileCheck %s -check-prefixes=CHECK,CHECK-MACOS3 4define i32 @foo() nounwind noinline uwtable "function-instrument"="xray-always" {5; CHECK-LABEL: foo:6; CHECK-LABEL: Lxray_sled_0:7; CHECK-NEXT:  b  #328; CHECK-COUNT-7:  nop9; CHECK-NEXT:  Ltmp[[#]]:10  ret i32 011; CHECK-LABEL: Lxray_sled_1:12; CHECK-NEXT:  b  #3213; CHECK-COUNT-7:  nop14; CHECK-NEXT:  Ltmp[[#]]:15; CHECK-NEXT:  ret16}17 18; CHECK-LINUX-LABEL: .section xray_instr_map,"ao",@progbits,foo{{$}}19; CHECK-LINUX-LABEL: Lxray_sleds_start0:20; CHECK-LINUX:         .xword .Lxray_sled_021; CHECK-LINUX:         .xword .Lxray_sled_122; CHECK-LINUX-LABEL: Lxray_sleds_end0:23 24; CHECK-MACOS-LABEL: .section __DATA,xray_instr_map,regular,live_support{{$}}25; CHECK-MACOS-LABEL: lxray_sleds_start0:26; CHECK-MACOS:         .quad Lxray_sled_027; CHECK-MACOS:         .quad Lxray_sled_128; CHECK-MACOS-LABEL: Lxray_sleds_end0:29 30define i32 @bar() nounwind noinline uwtable "function-instrument"="xray-never" "function-instrument"="xray-always" {31; CHECK-LABEL: bar:32; CHECK-LABEL: Lxray_sled_2:33; CHECK-NEXT:  b  #3234; CHECK-COUNT-7:  nop35; CHECK-NEXT:  Ltmp[[#]]:36  ret i32 037; CHECK-LABEL: Lxray_sled_3:38; CHECK-NEXT:  b  #3239; CHECK-COUNT-7:  nop40; CHECK-NEXT:  Ltmp[[#]]:41; CHECK-NEXT:  ret42}43 44; CHECK-LINUX-LABEL: .section xray_instr_map,"ao",@progbits,bar{{$}}45; CHECK-LINUX-LABEL: Lxray_sleds_start1:46; CHECK-LINUX:         .xword .Lxray_sled_247; CHECK-LINUX:         .xword .Lxray_sled_348; CHECK-LINUX-LABEL: Lxray_sleds_end1:49 50; CHECK-MACOS-LABEL: .section __DATA,xray_instr_map,regular,live_support{{$}}51; CHECK-MACOS-LABEL: lxray_sleds_start1:52; CHECK-MACOS:         .quad Lxray_sled_253; CHECK-MACOS:         .quad Lxray_sled_354; CHECK-MACOS-LABEL: Lxray_sleds_end1:55 56define i32 @instrumented() nounwind noinline uwtable "xray-instruction-threshold"="1" {57; CHECK-LABEL: instrumented:58; CHECK-LABEL: Lxray_sled_4:59; CHECK-NEXT:  b  #3260; CHECK-COUNT-7:  nop61; CHECK-NEXT:  Ltmp[[#]]:62  ret i32 063; CHECK-LABEL: Lxray_sled_5:64; CHECK-NEXT:  b  #3265; CHECK-COUNT-7:  nop66; CHECK-NEXT:  Ltmp[[#]]:67; CHECK-NEXT:  ret68}69 70; CHECK-LINUX-LABEL: .section xray_instr_map,"ao",@progbits,instrumented{{$}}71; CHECK-LINUX-LABEL: Lxray_sleds_start2:72; CHECK-LINUX:         .xword .Lxray_sled_473; CHECK-LINUX:         .xword .Lxray_sled_574; CHECK-LINUX-LABEL: Lxray_sleds_end2:75 76; CHECK-MACOS-LABEL: .section __DATA,xray_instr_map,regular,live_support{{$}}77; CHECK-MACOS-LABEL: lxray_sleds_start2:78; CHECK-MACOS:         .quad Lxray_sled_479; CHECK-MACOS:         .quad Lxray_sled_580; CHECK-MACOS-LABEL: Lxray_sleds_end2:81 82define i32 @not_instrumented() nounwind noinline uwtable "xray-instruction-threshold"="1" "function-instrument"="xray-never" {83; CHECK-LABEL: not_instrumented84; CHECK-NOT: Lxray_sled_685  ret i32 086; CHECK:  ret87}88