From 1e0f814e73094d57f9576bdca8fa03fdf02940fb Mon Sep 17 00:00:00 2001 From: Owen Anderson Date: Mon, 9 Jan 2023 20:14:31 -0700 Subject: [PATCH] Remove a FIXME that will never be fixed since undef is being removed. Reviewed By: nikic Differential Revision: https://reviews.llvm.org/D141344 --- llvm/lib/Transforms/Scalar/BDCE.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/llvm/lib/Transforms/Scalar/BDCE.cpp b/llvm/lib/Transforms/Scalar/BDCE.cpp index 6c2467d..187927b 100644 --- a/llvm/lib/Transforms/Scalar/BDCE.cpp +++ b/llvm/lib/Transforms/Scalar/BDCE.cpp @@ -143,9 +143,8 @@ static bool bitTrackingDCE(Function &F, DemandedBits &DB) { clearAssumptionsOfUsers(&I, DB); - // FIXME: In theory we could substitute undef here instead of zero. - // This should be reconsidered once we settle on the semantics of - // undef, poison, etc. + // Substitute all uses with zero. In theory we could use `freeze poison` + // instead, but that seems unlikely to be profitable. U.set(ConstantInt::get(U->getType(), 0)); ++NumSimplified; Changed = true; -- 2.7.4