[llvm-commits] [llvm-gcc-4.2] r63291 - /llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp

Duncan Sands baldrick at free.fr
Thu Jan 29 00:10:01 PST 2009


Author: baldrick
Date: Thu Jan 29 02:10:01 2009
New Revision: 63291

URL: http://llvm.org/viewvc/llvm-project?rev=63291&view=rev
Log:
Better fix for FrontendC/implicit-arg.c.

Modified:
    llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp

Modified: llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp?rev=63291&r1=63290&r2=63291&view=diff

==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp Thu Jan 29 02:10:01 2009
@@ -2821,7 +2821,7 @@
         const FunctionType *ActualFT =
           cast<FunctionType>(ActualPT->getElementType());
         if (RealFT->getReturnType() == ActualFT->getReturnType() &&
-            ActualFT->getNumParams() == 0)
+            RealFT->getNumParams() == 0)
           Callee = RealCallee;
       }
     }
@@ -2829,21 +2829,6 @@
   
   Value *Call;
   if (!LandingPad) {
-    if (CallOperands.empty()) {
-      const FunctionType *FTy = cast<FunctionType>
-        (cast<PointerType>(Callee->getType())->getElementType());
-      if (!FTy->isVarArg() && FTy->getNumParams() > 0) {
-        // Something like this:
-        // static int func2();
-        // void func1() {
-        //   int a = func2();
-        // }
-        // int func2(unsigned a) {
-        // }
-        // gcc4.2 allows this.
-        CallOperands.push_back(UndefValue::get(FTy->getParamType(0)));
-      }
-    }
     Call = Builder.CreateCall(Callee, CallOperands.begin(), CallOperands.end());
     cast<CallInst>(Call)->setCallingConv(CallingConvention);
     cast<CallInst>(Call)->setAttributes(PAL);





More information about the llvm-commits mailing list