forked from OSchip/llvm-project
Add positive test for sqrt "partial inlining". NFC.
llvm-svn: 291001
This commit is contained in:
parent
6309895770
commit
fc74da13a9
|
@ -0,0 +1,23 @@
|
|||
; RUN: opt -S -partially-inline-libcalls < %s | FileCheck %s
|
||||
; RUN: opt -S -passes=partially-inline-libcalls < %s | FileCheck %s
|
||||
|
||||
target triple = "x86_64-unknown-linux-gnu"
|
||||
|
||||
define float @f(float %val) {
|
||||
; CHECK: @f
|
||||
; CHECK: entry:
|
||||
; CHECK-NEXT: %[[RES:.+]] = tail call float @sqrtf(float %val) #0
|
||||
; CHECK-NEXT: %[[CMP:.+]] = fcmp oeq float %[[RES]], %[[RES]]
|
||||
; CHECK-NEXT: br i1 %[[CMP]], label %[[EXIT:.+]], label %[[CALL:.+]]
|
||||
; CHECK: [[CALL]]:
|
||||
; CHECK-NEXT: %[[RES2:.+]] = tail call float @sqrtf(float %val){{$}}
|
||||
; CHECK-NEXT: br label %[[EXIT]]
|
||||
; CHECK: [[EXIT]]:
|
||||
; CHECK-NEXT: %[[RET:.+]] = phi float [ %[[RES]], %entry ], [ %[[RES2]], %[[CALL]] ]
|
||||
; CHECK-NEXT: ret float %[[RET]]
|
||||
entry:
|
||||
%res = tail call float @sqrtf(float %val)
|
||||
ret float %res
|
||||
}
|
||||
|
||||
declare float @sqrtf(float)
|
Loading…
Reference in New Issue