[llvm-commits] [llvm-gcc-4.2] r79644 - /llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp

Bill Wendling isanbard at gmail.com
Fri Aug 21 10:47:14 PDT 2009


Author: void
Date: Fri Aug 21 12:47:14 2009
New Revision: 79644

URL: http://llvm.org/viewvc/llvm-project?rev=79644&view=rev
Log:
Convert the switch to something less gross. Thanks, Duncan!

Modified:
    llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp

Modified: llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp?rev=79644&r1=79643&r2=79644&view=diff

==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp Fri Aug 21 12:47:14 2009
@@ -3474,17 +3474,9 @@
   Value *Amt = Emit(TREE_OPERAND(exp, 1), 0);
 
   if (isa<PointerType>(In->getType())) {
-    const Type *Ty = 0;
-
-    switch (getInt64(TYPE_SIZE (TREE_TYPE (TREE_OPERAND (exp, 0))), true)) {
-    default: assert(0 && "Pointer size in bits not a power of 2!");
-    case 1:  Ty = Type::getInt1Ty(Context);  break;
-    case 8:  Ty = Type::getInt8Ty(Context);  break;
-    case 16: Ty = Type::getInt16Ty(Context); break;
-    case 32: Ty = Type::getInt32Ty(Context); break;
-    case 64: Ty = Type::getInt64Ty(Context); break;
-    }
-
+    const Type *Ty =
+      IntegerType::get(Context,
+                       TYPE_PRECISION(TREE_TYPE (TREE_OPERAND (exp, 0))));
     In = Builder.CreatePtrToInt(In, Ty,
                                 (In->getNameStr()+".cast").c_str());
   }





More information about the llvm-commits mailing list