[llvm-commits] CVS: llvm/lib/Target/X86/InstSelectSimple.cpp
Chris Lattner
lattner at cs.uiuc.edu
Mon May 12 15:18:01 PDT 2003
Changes in directory llvm/lib/Target/X86:
InstSelectSimple.cpp updated: 1.96 -> 1.97
---
Log message:
Make error messages more useful than jsut an abort
---
Diffs of the changes:
Index: llvm/lib/Target/X86/InstSelectSimple.cpp
diff -u llvm/lib/Target/X86/InstSelectSimple.cpp:1.96 llvm/lib/Target/X86/InstSelectSimple.cpp:1.97
--- llvm/lib/Target/X86/InstSelectSimple.cpp:1.96 Mon May 12 09:22:21 2003
+++ llvm/lib/Target/X86/InstSelectSimple.cpp Mon May 12 15:16:58 2003
@@ -1543,6 +1543,7 @@
BMI(BB, IP, X86::MOVrr32, 1, DestReg).addReg(SrcReg);
BMI(BB, IP, X86::MOVrr32, 1, DestReg+1).addReg(SrcReg+1);
} else {
+ assert(0 && "Cannot handle this type of cast instruction!");
abort();
}
return;
@@ -1593,8 +1594,10 @@
if (DestClass == cFP) {
// unsigned int -> load as 64 bit int.
// unsigned long long -> more complex
- if (SrcTy->isUnsigned() && SrcTy != Type::UByteTy)
+ if (SrcTy->isUnsigned() && SrcTy != Type::UByteTy) {
+ assert(0 && "Cannot handle this type of cast!");
abort(); // don't handle unsigned src yet!
+ }
// We don't have the facilities for directly loading byte sized data from
// memory. Promote it to 16 bits.
@@ -1612,7 +1615,10 @@
F->getFrameInfo()->CreateStackObject(SrcTy, TM.getTargetData());
if (SrcClass == cLong) {
- if (SrcTy == Type::ULongTy) abort(); // FIXME: Handle ulong -> FP
+ if (SrcTy == Type::ULongTy) {
+ assert(0 && "FIXME: Handle cast ulong to FP");
+ abort();
+ }
addFrameReference(BMI(BB, IP, X86::MOVrm32, 5), FrameIdx).addReg(SrcReg);
addFrameReference(BMI(BB, IP, X86::MOVrm32, 5),
FrameIdx, 4).addReg(SrcReg+1);
@@ -1685,6 +1691,7 @@
}
// Anything we haven't handled already, we can't (yet) handle at all.
+ assert(0 && "Unhandled cast instruction!");
abort();
}
More information about the llvm-commits
mailing list