Make FP zero to be legal FP immediate via LOAD ZERO
llvm-svn: 76034
diff --git a/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp b/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
index 01ecf4f..4144f97 100644
--- a/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
+++ b/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
@@ -51,6 +51,11 @@
if (!UseSoftFloat) {
addRegisterClass(MVT::f32, SystemZ::FP32RegisterClass);
addRegisterClass(MVT::f64, SystemZ::FP64RegisterClass);
+
+ addLegalFPImmediate(APFloat(+0.0)); // lzer
+ addLegalFPImmediate(APFloat(+0.0f)); // lzdr
+ addLegalFPImmediate(APFloat(-0.0)); // lzer + lner
+ addLegalFPImmediate(APFloat(-0.0f)); // lzdr + lndr
}
// Compute derived properties from the register classes