- Dec 12, 2012
-
-
John McCall authored
My variadics patch, r169588, changed these calls to typically be bitcasts rather than calls to a supposedly variadic function. This totally subverted a hack where we intentionally dropped excess arguments from such calls in order to appease the inliner and a "warning" from the optimizer. This patch extends the hack to also work with bitcasts, as well as teaching it to rewrite invokes. llvm-svn: 170034
-
- Sep 21, 2011
-
-
John McCall authored
if the definition has a non-variadic prototype with compatible parameters. Therefore, the default rule for such calls must be to use a non-variadic convention. Achieve this by casting the callee to the function type with which it is required to be compatible, unless the target specifically opts out and insists that unprototyped calls should use the variadic rules. The only case of that I'm aware of is the x86-64 convention, which passes arguments the same way in both cases but also sets a small amount of extra information; here we seek to maintain compatibility with GCC, which does set this when calling an unprototyped function. Addresses PR10810 and PR10713. llvm-svn: 140241
-
- Jun 28, 2011
-
-
John McCall authored
llvm-svn: 133957
-
- Apr 28, 2010
-
-
John McCall authored
incomplete type. Fixes PR6911. llvm-svn: 102473
-
- Feb 24, 2010
-
-
John McCall authored
llvm-svn: 97035
-
John McCall authored
llvm-svn: 97032
-
John McCall authored
a common source of oddities and, in theory, removes some redundant ABI computations. Also fixes a miscompile I introduced yesterday by refactoring some code and causing a slightly different code path to be taken that didn't perform *parameter* type canonicalization, just normal type canonicalization; this in turn caused a bit of ABI code to misfire because it was looking for 'double' or 'float' but received 'const float'. llvm-svn: 97030
-
- Dec 15, 2009
-
-
Daniel Dunbar authored
- This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). llvm-svn: 91446
-
- Nov 08, 2009
-
-
Daniel Dunbar authored
- 'for i in $(find . -type f); do sed -e 's#\(RUN:.*[^ ]\) *&& *$#\1#g' $i | FileUpdate $i; done', for the curious. llvm-svn: 86430
-
- Sep 09, 2009
-
-
Mike Stump authored
llvm-svn: 81346
-
- Jul 21, 2009
-
-
Mike Stump authored
llvm-svn: 76638
-
- Jun 23, 2009
-
-
Chris Lattner authored
llvm-svn: 73938
-
- May 05, 2009
-
-
Chris Lattner authored
to go back and clean up existing uses of the bitcasted function. This is not just an optimization: it is required for correctness to get always inline functions to work, see testcases in function-attributes.c. llvm-svn: 70971
-
- Mar 24, 2009
-
-
Daniel Dunbar authored
Tests and drivers updated, still need to shuffle dirs. llvm-svn: 67602
-
- Mar 22, 2009
-
-
Chris Lattner authored
to something like: define void @bar(%struct.foo* noalias sret %agg.result) nounwind { instead of: define void @bar(%struct.foo* noalias sret %agg.result, ...) nounwind { llvm-svn: 67475
-
- Feb 19, 2009
-
-
Daniel Dunbar authored
- <rdar://problem/6584606> clang/x86-64 - too many reg saves llvm-svn: 65032
-
- Feb 16, 2009
-
-
Douglas Gregor authored
prototype, synthesize ParmVarDecls for prototype-less FunctionDecl. llvm-svn: 64666
-
- Jul 31, 2008
-
-
Chris Lattner authored
http://llvm.org/viewvc/llvm-project?view=rev&revision=54107 llvm-svn: 54242
-
- Dec 02, 2007
-
-
Chris Lattner authored
their prototype. llvm-svn: 44506
-