implement passing of complex and aggregates through call args.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@41344 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/CodeGen/CGStmt.cpp b/CodeGen/CGStmt.cpp
index c128abc..7b69e51 100644
--- a/CodeGen/CGStmt.cpp
+++ b/CodeGen/CGStmt.cpp
@@ -31,12 +31,7 @@
     // Must be an expression in a stmt context.  Emit the value and ignore the
     // result.
     if (const Expr *E = dyn_cast<Expr>(S)) {
-      if (E->getType()->isComplexType()) {
-        EmitComplexExpr(E);
-      } else if (hasAggregateLLVMType(E->getType()))
-        EmitAggExpr(E, 0, false);  // Emit an aggregate, ignoring the result.
-      else
-        EmitExpr(E);
+      EmitAnyExpr(E, false);
     } else {
       printf("Unimplemented stmt!\n");
       S->dump();