[llvm] 53dbedc - [InstCombine] add test for copysign with FMF propagation; NFC
Sanjay Patel via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 1 05:53:05 PST 2022
Author: Sanjay Patel
Date: 2022-03-01T08:51:40-05:00
New Revision: 53dbedcd188a83cb945d95a8e7d536917a2e9934
URL: https://github.com/llvm/llvm-project/commit/53dbedcd188a83cb945d95a8e7d536917a2e9934
DIFF: https://github.com/llvm/llvm-project/commit/53dbedcd188a83cb945d95a8e7d536917a2e9934.diff
LOG: [InstCombine] add test for copysign with FMF propagation; NFC
This is a miscompile as noted in #54077.
Added:
Modified:
llvm/test/Transforms/InstCombine/select.ll
Removed:
################################################################################
diff --git a/llvm/test/Transforms/InstCombine/select.ll b/llvm/test/Transforms/InstCombine/select.ll
index a5f716c79a36f..124d96f743646 100644
--- a/llvm/test/Transforms/InstCombine/select.ll
+++ b/llvm/test/Transforms/InstCombine/select.ll
@@ -1654,6 +1654,17 @@ define float @copysign1(float %x) {
ret float %r
}
+define float @copysign1_fmf(float %x) {
+; CHECK-LABEL: @copysign1_fmf(
+; CHECK-NEXT: [[R:%.*]] = call ninf nsz float @llvm.copysign.f32(float 1.000000e+00, float [[X:%.*]])
+; CHECK-NEXT: ret float [[R]]
+;
+ %i = bitcast float %x to i32
+ %ispos = icmp sgt i32 %i, -1
+ %r = select nsz ninf i1 %ispos, float 1.0, float -1.0
+ ret float %r
+}
+
define <2 x float> @copysign2(<2 x float> %x) {
; CHECK-LABEL: @copysign2(
; CHECK-NEXT: [[TMP1:%.*]] = fneg nsz <2 x float> [[X:%.*]]
More information about the llvm-commits
mailing list