[llvm-commits] [llvm-gcc-4.2] r47571 - /llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp
Dale Johannesen
dalej at apple.com
Mon Feb 25 14:20:38 PST 2008
Author: johannes
Date: Mon Feb 25 16:20:38 2008
New Revision: 47571
URL: http://llvm.org/viewvc/llvm-project?rev=47571&view=rev
Log:
Don't pretend "all int" aggregates are not going to be
passed in memory on x86-32; they are. (Note that
llvm_x86_is_all_integer_types accepts vectors, which
led to a problem here but is presumably right in
other contexts.)
Modified:
llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp
Modified: llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp?rev=47571&r1=47570&r2=47571&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp Mon Feb 25 16:20:38 2008
@@ -746,7 +746,8 @@
if (Bytes == 0)
return false;
- if (Bytes == GET_MODE_SIZE(SImode) || Bytes == GET_MODE_SIZE(DImode)) {
+ if (TARGET_64BIT &&
+ (Bytes == GET_MODE_SIZE(SImode) || Bytes == GET_MODE_SIZE(DImode))) {
// 32-bit or 64-bit and all elements are integers, not passed in memory.
const Type *Ty = ConvertType(TreeType);
if (llvm_x86_is_all_integer_types(Ty))
More information about the llvm-commits
mailing list