summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86FastISel.cpp
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2011-05-14 00:47:51 +0000
committerEli Friedman <eli.friedman@gmail.com>2011-05-14 00:47:51 +0000
commit8f1e11cde907abec8aee78c68f233db97fd0f2fe (patch)
treece56a7703989f919cc0a979943694a28c6c06e8f /llvm/lib/Target/X86/X86FastISel.cpp
parent67eb68d260c71126d10256d02017a71d4fa2e93c (diff)
downloadbcm5719-llvm-8f1e11cde907abec8aee78c68f233db97fd0f2fe.tar.gz
bcm5719-llvm-8f1e11cde907abec8aee78c68f233db97fd0f2fe.zip
Fix a FIXME by moving the fast-isel implementation of the objectsize intrinsic from the x86 code to the generic code.
llvm-svn: 131332
Diffstat (limited to 'llvm/lib/Target/X86/X86FastISel.cpp')
-rw-r--r--llvm/lib/Target/X86/X86FastISel.cpp23
1 files changed, 0 insertions, 23 deletions
diff --git a/llvm/lib/Target/X86/X86FastISel.cpp b/llvm/lib/Target/X86/X86FastISel.cpp
index ecb6ade2323..481220e4e97 100644
--- a/llvm/lib/Target/X86/X86FastISel.cpp
+++ b/llvm/lib/Target/X86/X86FastISel.cpp
@@ -1369,29 +1369,6 @@ bool X86FastISel::X86VisitIntrinsicCall(const IntrinsicInst &I) {
if (!X86FastEmitStore(PtrTy, Op1, AM)) return false;
return true;
}
- case Intrinsic::objectsize: {
- // FIXME: This should be moved to generic code!
- ConstantInt *CI = cast<ConstantInt>(I.getArgOperand(1));
- const Type *Ty = I.getCalledFunction()->getReturnType();
-
- MVT VT;
- if (!isTypeLegal(Ty, VT))
- return false;
-
- unsigned OpC = 0;
- if (VT == MVT::i32)
- OpC = X86::MOV32ri;
- else if (VT == MVT::i64)
- OpC = X86::MOV64ri;
- else
- return false;
-
- unsigned ResultReg = createResultReg(TLI.getRegClassFor(VT));
- BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DL, TII.get(OpC), ResultReg).
- addImm(CI->isZero() ? -1ULL : 0);
- UpdateValueMap(&I, ResultReg);
- return true;
- }
case Intrinsic::dbg_declare: {
const DbgDeclareInst *DI = cast<DbgDeclareInst>(&I);
X86AddressMode AM;
OpenPOWER on IntegriCloud