From e414ba33b44971d47d24d75b7da94898d2cc8bde Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Thu, 21 Dec 2023 15:16:55 +0100 Subject: [ValueTracking] Shufflevector produces poison rather than undef Shufflevector semantics have changed so that poison mask elements return poison rather than undef. Reflect this in the canCreateUndefOrPoison() implementation. --- llvm/unittests/Analysis/ValueTrackingTest.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'llvm/unittests/Analysis/ValueTrackingTest.cpp') diff --git a/llvm/unittests/Analysis/ValueTrackingTest.cpp b/llvm/unittests/Analysis/ValueTrackingTest.cpp index 0d3a594..27f6318 100644 --- a/llvm/unittests/Analysis/ValueTrackingTest.cpp +++ b/llvm/unittests/Analysis/ValueTrackingTest.cpp @@ -1177,12 +1177,12 @@ TEST(ValueTracking, canCreatePoisonOrUndef) { {{false, false}, "shufflevector <4 x i32> %vx, <4 x i32> %vx2, " "<4 x i32> "}, - {{false, true}, + {{true, false}, "shufflevector <4 x i32> %vx, <4 x i32> %vx2, " - "<4 x i32> "}, - {{false, true}, + "<4 x i32> "}, + {{true, false}, "shufflevector %svx, " - " %svx, undef"}, + " %svx, poison"}, {{true, false}, "call i32 @g(i32 %x)"}, {{false, false}, "call noundef i32 @g(i32 %x)"}, {{true, false}, "fcmp nnan oeq float %fx, %fy"}, -- cgit v1.1