You've already forked linux-packaging-mono
Imported Upstream version 5.18.0.161
Former-commit-id: 4db48158d3a35497b8f118ab21b5f08ac3d86d98
This commit is contained in:
parent
37fbf886a3
commit
e19d552987
46
external/llvm/test/Transforms/Reassociate/fast-fp-commute.ll
vendored
Normal file
46
external/llvm/test/Transforms/Reassociate/fast-fp-commute.ll
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
; RUN: opt -reassociate -S < %s | FileCheck %s
|
||||
|
||||
declare void @use(float)
|
||||
|
||||
define void @test1(float %x, float %y) {
|
||||
; CHECK-LABEL: @test1(
|
||||
; CHECK-NEXT: [[TMP1:%.*]] = fmul fast float %y, %x
|
||||
; CHECK-NEXT: [[TMP2:%.*]] = fmul fast float %y, %x
|
||||
; CHECK-NEXT: [[TMP3:%.*]] = fsub fast float [[TMP1]], [[TMP2]]
|
||||
; CHECK-NEXT: call void @use(float [[TMP1]])
|
||||
; CHECK-NEXT: call void @use(float [[TMP3]])
|
||||
; CHECK-NEXT: ret void
|
||||
;
|
||||
%1 = fmul fast float %x, %y
|
||||
%2 = fmul fast float %y, %x
|
||||
%3 = fsub fast float %1, %2
|
||||
call void @use(float %1)
|
||||
call void @use(float %3)
|
||||
ret void
|
||||
}
|
||||
|
||||
define float @test2(float %x, float %y) {
|
||||
; CHECK-LABEL: @test2(
|
||||
; CHECK-NEXT: [[TMP1:%.*]] = fmul fast float %y, %x
|
||||
; CHECK-NEXT: [[TMP2:%.*]] = fmul fast float %y, %x
|
||||
; CHECK-NEXT: [[TMP3:%.*]] = fsub fast float [[TMP1]], [[TMP2]]
|
||||
; CHECK-NEXT: ret float [[TMP3]]
|
||||
;
|
||||
%1 = fmul fast float %x, %y
|
||||
%2 = fmul fast float %y, %x
|
||||
%3 = fsub fast float %1, %2
|
||||
ret float %3
|
||||
}
|
||||
|
||||
define float @test3(float %x, float %y) {
|
||||
; CHECK-LABEL: @test3(
|
||||
; CHECK-NEXT: [[FACTOR:%.*]] = fmul fast float %y, %x
|
||||
; CHECK-NEXT: [[REASS_MUL:%.*]] = fmul fast float [[FACTOR]], 2.000000e+00
|
||||
; CHECK-NEXT: ret float [[REASS_MUL]]
|
||||
;
|
||||
%1 = fmul fast float %x, %y
|
||||
%2 = fmul fast float %y, %x
|
||||
%3 = fadd fast float %1, %2
|
||||
ret float %3
|
||||
}
|
||||
|
Reference in New Issue
Block a user