aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/Transforms
diff options
context:
space:
mode:
authorWenju He <wenju.he@intel.com>2026-02-02 09:58:58 +0800
committerGitHub <noreply@github.com>2026-02-02 09:58:58 +0800
commitdc152f0d2d085dcfb7542d0e71e19ebfa1aa3794 (patch)
tree15e95ef10551b5eaf6222f3f33abd89612cc8131 /llvm/test/Transforms
parentcf60af88b4d3791b5e225373e51186f4f86ad50f (diff)
downloadllvm-main.zip
llvm-main.tar.gz
llvm-main.tar.bz2
[IR] Add `fpmath` to keep list of dropUBImplyingAttrsAndMetadata (#179019)HEADmain
`fpmath` is precision metadata rather than UB-implying metadata. This avoids `fpmath` from being dropped in InstCombine FoldOpIntoSelect.
Diffstat (limited to 'llvm/test/Transforms')
-rw-r--r--llvm/test/Transforms/InstCombine/fold-fops-into-selects.ll9
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/fold-fops-into-selects.ll b/llvm/test/Transforms/InstCombine/fold-fops-into-selects.ll
index 22af7e3..c986004 100644
--- a/llvm/test/Transforms/InstCombine/fold-fops-into-selects.ll
+++ b/llvm/test/Transforms/InstCombine/fold-fops-into-selects.ll
@@ -69,3 +69,12 @@ EntryBlock:
; CHECK: select i1 %A, float 0x3FD5555560000000, float [[OP]]
}
+define float @test8(i1 %A, float %B) {
+EntryBlock:
+ %cf = select i1 %A, float 1.000000e+00, float %B
+ %op = fdiv float 3.000000e+00, %cf, !fpmath !{float 2.5}
+ ret float %op
+; CHECK-LABEL: @test8(
+; CHECK: [[OP:%.*]] = fdiv float 3.000000e+00, %B, !fpmath
+; CHECK: select i1 %A, float 3.000000e+00, float [[OP]]
+}