aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/Mips/MipsFastISel.cpp
diff options
context:
space:
mode:
authorVasileios Kalintiris <Vasileios.Kalintiris@imgtec.com>2015-10-07 20:06:30 +0000
committerVasileios Kalintiris <Vasileios.Kalintiris@imgtec.com>2015-10-07 20:06:30 +0000
commitb876b58d38e0d16ca74ba48c0e5ece69bdcb8223 (patch)
treec616b7b8968382fa452ab3ad2294ebf28d4e6f6b /llvm/lib/Target/Mips/MipsFastISel.cpp
parent37bf678a0d4645942c7c8335b067d5abe446768d (diff)
downloadllvm-b876b58d38e0d16ca74ba48c0e5ece69bdcb8223.zip
llvm-b876b58d38e0d16ca74ba48c0e5ece69bdcb8223.tar.gz
llvm-b876b58d38e0d16ca74ba48c0e5ece69bdcb8223.tar.bz2
[mips][FastISel] Factor out common code from switch statement. NFC
llvm-svn: 249603
Diffstat (limited to 'llvm/lib/Target/Mips/MipsFastISel.cpp')
-rw-r--r--llvm/lib/Target/Mips/MipsFastISel.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/llvm/lib/Target/Mips/MipsFastISel.cpp b/llvm/lib/Target/Mips/MipsFastISel.cpp
index ca6fbdb..4e19bcb 100644
--- a/llvm/lib/Target/Mips/MipsFastISel.cpp
+++ b/llvm/lib/Target/Mips/MipsFastISel.cpp
@@ -1604,19 +1604,23 @@ bool MipsFastISel::emitIntSExt(MVT SrcVT, unsigned SrcReg, MVT DestVT,
bool MipsFastISel::emitIntZExt(MVT SrcVT, unsigned SrcReg, MVT DestVT,
unsigned DestReg) {
+ int64_t Imm;
+
switch (SrcVT.SimpleTy) {
default:
return false;
case MVT::i1:
- emitInst(Mips::ANDi, DestReg).addReg(SrcReg).addImm(1);
+ Imm = 1;
break;
case MVT::i8:
- emitInst(Mips::ANDi, DestReg).addReg(SrcReg).addImm(0xff);
+ Imm = 0xff;
break;
case MVT::i16:
- emitInst(Mips::ANDi, DestReg).addReg(SrcReg).addImm(0xffff);
+ Imm = 0xffff;
break;
}
+
+ emitInst(Mips::ANDi, DestReg).addReg(SrcReg).addImm(Imm);
return true;
}