From 552cd9868300bf6c52e1cbd67693097238979422 Mon Sep 17 00:00:00 2001 From: Toma Tabacu Date: Wed, 13 May 2015 16:02:41 +0000 Subject: [PATCH] [mips] [IAS] Preemptively fix warning introduced by r237255. NFC. Some compilers warn about using the ternary operator with an unsigned variable and enum. I haven't seen this trigger in the llvm.org buildbots yet, but it probably will at some point. Reported by Daniel Sanders. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@237262 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/Mips/AsmParser/MipsAsmParser.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/Target/Mips/AsmParser/MipsAsmParser.cpp b/lib/Target/Mips/AsmParser/MipsAsmParser.cpp index cdaf1b723d8..9237cdb99a0 100644 --- a/lib/Target/Mips/AsmParser/MipsAsmParser.cpp +++ b/lib/Target/Mips/AsmParser/MipsAsmParser.cpp @@ -1740,18 +1740,21 @@ bool MipsAsmParser::loadImmediate(int64_t ImmValue, unsigned DstReg, if (0 <= ImmValue && ImmValue <= 65535) { // For unsigned and positive signed 16-bit values (0 <= j <= 65535): // li d,j => ori d,$zero,j + if (!UseSrcReg) + SrcReg = isGP64bit() ? Mips::ZERO_64 : Mips::ZERO; tmpInst.setOpcode(Mips::ORi); tmpInst.addOperand(MCOperand::CreateReg(DstReg)); - tmpInst.addOperand(MCOperand::CreateReg( - UseSrcReg ? SrcReg : (isGP64bit() ? Mips::ZERO_64 : Mips::ZERO))); + tmpInst.addOperand(MCOperand::CreateReg(SrcReg)); tmpInst.addOperand(MCOperand::CreateImm(ImmValue)); Instructions.push_back(tmpInst); } else if (ImmValue < 0 && ImmValue >= -32768) { // For negative signed 16-bit values (-32768 <= j < 0): // li d,j => addiu d,$zero,j + if (!UseSrcReg) + SrcReg = Mips::ZERO; tmpInst.setOpcode(Mips::ADDiu); tmpInst.addOperand(MCOperand::CreateReg(DstReg)); - tmpInst.addOperand(MCOperand::CreateReg(UseSrcReg ? SrcReg : Mips::ZERO)); + tmpInst.addOperand(MCOperand::CreateReg(SrcReg)); tmpInst.addOperand(MCOperand::CreateImm(ImmValue)); Instructions.push_back(tmpInst); } else if ((ImmValue & 0xffffffff) == ImmValue) { -- 2.34.1