1 ; RUN: opt < %s -pgo-instr-gen -S | FileCheck %s 2 ; RUN: opt < %s -passes=pgo-instr-gen -S | FileCheck %s 3 4 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" 5 target triple = "x86_64-apple-macosx10.12.0" 6 7 define i32 @f1() { 8 ; CHECK-LABEL: @f1 9 entry: 10 ; CHECK: call void @llvm.instrprof.increment 11 ; CHECK-NOT: ptrtoint void (i8*)* asm sideeffect 12 ; CHECK-NOT: call void @llvm.instrprof.value.profile 13 ; CHECK: tail call void asm sideeffect 14 tail call void asm sideeffect "", "imr,~{memory},~{dirflag},~{fpsr},~{flags}"(i8* undef) #0 15 ret i32 0 16 } 17 18 define i32 @f2() { 19 entry: 20 ; CHECK: call void @llvm.instrprof.increment 21 ; CHECK-NOT: call void @llvm.instrprof.value.profile 22 call void (i32, ...) bitcast (void (...)* @foo to void (i32, ...)*)(i32 21) 23 ret i32 0 24 } 25 26 declare void @foo(...) #0 27 28 attributes #0 = { nounwind } 29