1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=x86_64-apple-darwin | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: .section __LLVM_STACKMAPS,__llvm_stackmaps 4*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: __LLVM_StackMaps: 5*9880d681SAndroid Build Coastguard Worker; version 6*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .byte 1 7*9880d681SAndroid Build Coastguard Worker; reserved 8*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .byte 0 9*9880d681SAndroid Build Coastguard Worker; reserved 10*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 0 11*9880d681SAndroid Build Coastguard Worker; # functions 12*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .long 2 13*9880d681SAndroid Build Coastguard Worker; # constants 14*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .long 2 15*9880d681SAndroid Build Coastguard Worker; # records 16*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .long 2 17*9880d681SAndroid Build Coastguard Worker; function address & stack size 18*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .quad _foo 19*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .quad 8 20*9880d681SAndroid Build Coastguard Worker; function address & stack size 21*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .quad _bar 22*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .quad 8 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Worker; Constants Array: 25*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .quad 9223372036854775807 26*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .quad -9223372036854775808 27*9880d681SAndroid Build Coastguard Worker 28*9880d681SAndroid Build Coastguard Worker; Patchpoint ID 29*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .quad 0 30*9880d681SAndroid Build Coastguard Worker; Instruction offset 31*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .long L{{.*}}-_foo 32*9880d681SAndroid Build Coastguard Worker; reserved 33*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 0 34*9880d681SAndroid Build Coastguard Worker; # locations 35*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 1 36*9880d681SAndroid Build Coastguard Worker; ConstantIndex 37*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .byte 5 38*9880d681SAndroid Build Coastguard Worker; reserved 39*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .byte 8 40*9880d681SAndroid Build Coastguard Worker; Dwarf RegNum 41*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 0 42*9880d681SAndroid Build Coastguard Worker; Offset 43*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .long 0 44*9880d681SAndroid Build Coastguard Worker; padding 45*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 0 46*9880d681SAndroid Build Coastguard Worker; NumLiveOuts 47*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 0 48*9880d681SAndroid Build Coastguard Worker 49*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .p2align 3 50*9880d681SAndroid Build Coastguard Worker 51*9880d681SAndroid Build Coastguard Workerdeclare void @llvm.experimental.stackmap(i64, i32, ...) 52*9880d681SAndroid Build Coastguard Worker 53*9880d681SAndroid Build Coastguard Workerdefine void @foo() { 54*9880d681SAndroid Build Coastguard Worker tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 0, i32 0, i64 9223372036854775807) 55*9880d681SAndroid Build Coastguard Worker ret void 56*9880d681SAndroid Build Coastguard Worker} 57*9880d681SAndroid Build Coastguard Worker 58*9880d681SAndroid Build Coastguard Worker; Patchpoint ID 59*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .quad 0 60*9880d681SAndroid Build Coastguard Worker; Instruction Offset 61*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .long L{{.*}}-_bar 62*9880d681SAndroid Build Coastguard Worker; reserved 63*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 0 64*9880d681SAndroid Build Coastguard Worker; # locations 65*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 1 66*9880d681SAndroid Build Coastguard Worker; ConstantIndex 67*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .byte 5 68*9880d681SAndroid Build Coastguard Worker; reserved 69*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .byte 8 70*9880d681SAndroid Build Coastguard Worker; Dwarf RegNum 71*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 0 72*9880d681SAndroid Build Coastguard Worker; Offset 73*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .long 1 74*9880d681SAndroid Build Coastguard Worker; padding 75*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 0 76*9880d681SAndroid Build Coastguard Worker; NumLiveOuts 77*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: .short 0 78*9880d681SAndroid Build Coastguard Worker 79*9880d681SAndroid Build Coastguard Worker 80*9880d681SAndroid Build Coastguard Workerdefine void @bar() { 81*9880d681SAndroid Build Coastguard Worker tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 0, i32 0, i64 -9223372036854775808) 82*9880d681SAndroid Build Coastguard Worker ret void 83*9880d681SAndroid Build Coastguard Worker} 84