[llvm-bugs] [Bug 47567] New: Incorrect transformation: (llvm.maximum undef, %x) -> undef
via llvm-bugs
llvm-bugs at lists.llvm.org
Thu Sep 17 16:23:04 PDT 2020
https://bugs.llvm.org/show_bug.cgi?id=47567
Bug ID: 47567
Summary: Incorrect transformation: (llvm.maximum undef, %x) ->
undef
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: enhancement
Priority: P
Component: Scalar Optimizations
Assignee: unassignedbugs at nondot.org
Reporter: liuz at cs.utah.edu
CC: llvm-bugs at lists.llvm.org
Test case from Transforms/InstSimplify/floating-point-arithmetic.ll
define <2 x double> @maxnum_nan_op0_vec(<2 x double> %x) {
; CHECK-LABEL: @maxnum_nan_op0_vec(
; CHECK-NEXT: ret <2 x double> [[X:%.*]]
;
%r = call <2 x double> @llvm.maxnum.v2f64(<2 x double> <double
0x7ff8000000000000, double undef>, <2 x double> %x)
ret <2 x double> %r
}
The second lane for this case performs the rewrite (llvm.maximum undef, %x) ->
undef. The rewrite is illegal. The domain for (llvm.maximum undef, %x) depends
on %x, and obviously the result of llvm.maximum does not fully cover the range
of undef in most of cases.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20200917/daa53d3d/attachment.html>
More information about the llvm-bugs
mailing list