Converting 80 and 96 bit floating point types to a 64 bit LLVM type breaks
the invariant that gcc types of constant size map to LLVM types of the same
size.  Since it should not actually be possible to get 80 and 96 bit floating
point types in llvm-gcc nowadays, remove the conversion of such types, which
will cause an assert failure if such a type manages to creep in.

Ciao,

Duncan.
Index: gcc.llvm/gcc/llvm-types.cpp
===================================================================
--- gcc.llvm.orig/gcc/llvm-types.cpp	2007-03-20 21:25:44.000000000 +0100
+++ gcc.llvm/gcc/llvm-types.cpp	2007-03-20 21:25:55.000000000 +0100
@@ -471,8 +471,6 @@
       debug_tree(type);
       abort();        
     case 32: return SET_TYPE_LLVM(type, Type::FloatTy);
-    case 80:     // Map long doubles to doubles.
-    case 96:     // Map long doubles to doubles.
     case 64: return SET_TYPE_LLVM(type, Type::DoubleTy);
     case 128:
       // 128-bit long doubles map onto { double, double }.
_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to