diff options
| author | Devang Patel <dpatel@apple.com> | 2011-06-24 20:46:11 +0000 |
|---|---|---|
| committer | Devang Patel <dpatel@apple.com> | 2011-06-24 20:46:11 +0000 |
| commit | f071d72c44d654c6fadbca1d095240e7eb86d700 (patch) | |
| tree | 4da0b251166c93a31829099eb96ef959a2f05806 /llvm/lib/CodeGen/SelectionDAG/FastISel.cpp | |
| parent | e862d59eee138bdd49965dfe64fc6b4ec8360f26 (diff) | |
| download | bcm5719-llvm-f071d72c44d654c6fadbca1d095240e7eb86d700.tar.gz bcm5719-llvm-f071d72c44d654c6fadbca1d095240e7eb86d700.zip | |
Handle debug info for i128 constants.
llvm-svn: 133821
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/FastISel.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/FastISel.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp b/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp index 797f1744485..8ae75f5649c 100644 --- a/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp @@ -556,9 +556,14 @@ bool FastISel::SelectCall(const User *I) { .addReg(0U).addImm(DI->getOffset()) .addMetadata(DI->getVariable()); } else if (const ConstantInt *CI = dyn_cast<ConstantInt>(V)) { - BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DL, II) - .addImm(CI->getZExtValue()).addImm(DI->getOffset()) - .addMetadata(DI->getVariable()); + if (CI->getBitWidth() > 64) + BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DL, II) + .addCImm(CI).addImm(DI->getOffset()) + .addMetadata(DI->getVariable()); + else + BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DL, II) + .addImm(CI->getZExtValue()).addImm(DI->getOffset()) + .addMetadata(DI->getVariable()); } else if (const ConstantFP *CF = dyn_cast<ConstantFP>(V)) { BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DL, II) .addFPImm(CF).addImm(DI->getOffset()) |

