[llvm-commits] [llvm-gcc-4.2] r50238 - /llvm-gcc-4.2/branches/Apple/Tak/gcc/config/i386/llvm-i386.cpp
Devang Patel
dpatel at apple.com
Thu Apr 24 17:01:05 PDT 2008
Author: dpatel
Date: Thu Apr 24 19:01:05 2008
New Revision: 50238
URL: http://llvm.org/viewvc/llvm-project?rev=50238&view=rev
Log:
Fix struct-layout-1.exp tests crashes.
Modified:
llvm-gcc-4.2/branches/Apple/Tak/gcc/config/i386/llvm-i386.cpp
Modified: llvm-gcc-4.2/branches/Apple/Tak/gcc/config/i386/llvm-i386.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/branches/Apple/Tak/gcc/config/i386/llvm-i386.cpp?rev=50238&r1=50237&r2=50238&view=diff
==============================================================================
--- llvm-gcc-4.2/branches/Apple/Tak/gcc/config/i386/llvm-i386.cpp (original)
+++ llvm-gcc-4.2/branches/Apple/Tak/gcc/config/i386/llvm-i386.cpp Thu Apr 24 19:01:05 2008
@@ -957,6 +957,11 @@
if (NumClasses == 1 && foundInt)
return false;
+ if (NumClasses == 1 &&
+ (Class[0] == X86_64_INTEGERSI_CLASS || Class[0] == X86_64_INTEGER_CLASS))
+ // This will fit in one i32 register.
+ return false;
+
// Otherwise, use of multiple value return is OK.
return true;
}
@@ -1096,7 +1101,9 @@
case X86_64_COMPLEX_X87_CLASS:
assert(0 && "Not yet handled!");
case X86_64_NO_CLASS:
- assert(0 && "Not yet handled!");
+ // padding bytes.
+ Elts.push_back(Type::Int64Ty);
+ break;
default: assert(0 && "Unexpected register class!");
}
}
More information about the llvm-commits
mailing list