Home | History | Annotate | Download | only in X86
      1 ; When logging arguments is specified, emit the entry sled accordingly.
      2 
      3 ; RUN: llc -verify-machineinstrs -filetype=asm -o - -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s
      4 ; RUN: llc -verify-machineinstrs -filetype=asm -o - -mtriple=x86_64-darwin-unknown < %s | FileCheck %s
      5 
      6 define i32 @callee(i32 %arg) nounwind noinline uwtable "function-instrument"="xray-always" "xray-log-args"="1" {
      7   ret i32 %arg
      8 }
      9 ; CHECK-LABEL: Lxray_sleds_start0:
     10 ; CHECK:  .quad {{\.?}}Lxray_sled_0
     11 ; CHECK:  .quad {{_?}}callee
     12 ; CHECK:  .byte 0x03
     13 ; CHECK:  .byte 0x01
     14 ; CHECK:  .byte 0x00
     15 ; CHECK:  .{{(zero|space)}}  13
     16 ; CHECK:  .quad {{\.?}}Lxray_sled_1
     17 ; CHECK:  .quad {{_?}}callee
     18 ; CHECK:  .byte 0x01
     19 ; CHECK:  .byte 0x01
     20 ; CHECK:  .byte 0x00
     21 ; CHECK:  .{{(zero|space)}}  13
     22 
     23 define i32 @caller(i32 %arg) nounwind noinline uwtable "function-instrument"="xray-always" "xray-log-args"="1" {
     24   %retval = tail call i32 @callee(i32 %arg)
     25   ret i32 %retval
     26 }
     27 ; CHECK-LABEL: Lxray_sleds_start1:
     28 ; CHECK:  .quad {{\.?}}Lxray_sled_2
     29 ; CHECK:  .quad {{_?}}caller
     30 ; CHECK:  .byte 0x03
     31 ; CHECK:  .byte 0x01
     32 ; CHECK:  .byte 0x00
     33 ; CHECK:  .{{(zero|space)}}  13
     34 ; CHECK:  .quad {{\.?}}Lxray_sled_3
     35 ; CHECK:  .quad {{_?}}caller
     36 ; CHECK:  .byte 0x02
     37 ; CHECK:  .byte 0x01
     38 ; CHECK:  .byte 0x00
     39 ; CHECK:  .{{(zero|space)}}  13
     40