[cfe-commits] r65278 - /cfe/trunk/lib/CodeGen/CGCall.cpp

Daniel Dunbar daniel at zuster.org
Sun Feb 22 00:17:51 PST 2009


Author: ddunbar
Date: Sun Feb 22 02:17:51 2009
New Revision: 65278

URL: http://llvm.org/viewvc/llvm-project?rev=65278&view=rev
Log:
x86_64 ABI: Actually, we can always pass things we want to pass in
memory using Indirect; this was a holdover from when CGCall wasn't as
robust.

Modified:
    cfe/trunk/lib/CodeGen/CGCall.cpp

Modified: cfe/trunk/lib/CodeGen/CGCall.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGCall.cpp?rev=65278&r1=65277&r2=65278&view=diff

==============================================================================
--- cfe/trunk/lib/CodeGen/CGCall.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGCall.cpp Sun Feb 22 02:17:51 2009
@@ -842,11 +842,7 @@
     // COMPLEX_X87, it is passed in memory.
   case X87:
   case ComplexX87:
-    // Choose appropriate in memory type.
-    if (Ty->isVectorType() || CodeGenFunction::hasAggregateLLVMType(Ty))
-      return ABIArgInfo::getIndirect(0);
-    else
-      return ABIArgInfo::getDirect();
+    return ABIArgInfo::getIndirect(0);
 
   case SSEUp:
   case X87Up:
@@ -922,11 +918,7 @@
       freeIntRegs -= neededInt;
       freeSSERegs -= neededSSE;
     } else {
-      // Choose appropriate in memory type.
-      if (CodeGenFunction::hasAggregateLLVMType(it->type))
-        it->info = ABIArgInfo::getIndirect(0);
-      else
-        it->info = ABIArgInfo::getDirect();
+      it->info = ABIArgInfo::getIndirect(0);
     }
   }
 }





More information about the cfe-commits mailing list