[PATCH] D115460: Add FMF to hasPoisonGeneratingFlags/dropPoisonGeneratingFlags
Philip Reames via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 13 12:48:03 PST 2021
reames added inline comments.
================
Comment at: llvm/test/Transforms/InstCombine/shuffle_select-inseltpoison.ll:779
define <4 x double> @fdiv_fdiv(<4 x double> %v0) {
; CHECK-LABEL: @fdiv_fdiv(
----------------
spatel wrote:
> I looked at the code for this and related transforms in "foldSelectShuffle", and it's a mess.
> We have lots of miscompiles like this:
> https://alive2.llvm.org/ce/z/MHoacO
> ...and I don't think proposed but uncommitted patches like D93818 / D103874 resolve those.
>
> We probably need to add an identity shuffle with undef/poison elements preserved from the original code. Otherwise, we are potentially leaking poison from the variable value in the original code. This could take a few patches to fix, so I wouldn't hold this patch up for it (but I'll try to get that sorted out soon).
I don't follow this comment at all, so if there's anything in here you want me to change, please rephrase.
================
Comment at: llvm/test/Transforms/PhaseOrdering/ARM/mve-floatreduce.ll:16
; CHECK-NEXT: [[TMP4:%.*]] = bitcast <4 x i32> [[TMP3]] to <8 x half>
-; CHECK-NEXT: [[TMP5:%.*]] = fadd fast <8 x half> [[TMP1]], [[TMP4]]
+; CHECK-NEXT: [[TMP5:%.*]] = fadd reassoc nsz arcp contract afn <8 x half> [[TMP1]], [[TMP4]]
; CHECK-NEXT: [[TMP6:%.*]] = extractelement <8 x half> [[TMP5]], i32 0
----------------
spatel wrote:
> This diff should have disappeared with the rebase?
This passed check-llvm after the rebase, and the CI build checks agree, so no.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D115460/new/
https://reviews.llvm.org/D115460
More information about the llvm-commits
mailing list