GlobalISel: Drop vector range metadata on bitcast lowering (#97279)
If we are reinterpreting the type, the range metadata also needs to be
converted. I believe the DAG has the same bug.
diff --git a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
index 975f19b..86de1f3 100644
--- a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
+++ b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
@@ -3639,6 +3639,9 @@
Observer.changingInstr(MI);
bitcastDst(MI, CastTy, 0);
MMO.setType(CastTy);
+ // The range metadata is no longer valid when reinterpreted as a different
+ // type.
+ MMO.clearRanges();
Observer.changedInstr(MI);
return Legalized;
}