- Mar 24, 2009
-
-
Daniel Dunbar authored
Tests and drivers updated, still need to shuffle dirs. llvm-svn: 67602
-
Daniel Dunbar authored
llvm-svn: 67601
-
Anders Carlsson authored
llvm-svn: 67598
-
Anders Carlsson authored
llvm-svn: 67596
-
Anders Carlsson authored
llvm-svn: 67595
-
Anders Carlsson authored
class C { void g(C c); virtual void f() = 0; }; In this case, C is not known to be abstract when doing semantic analysis on g. This is done by recursively traversing the abstract class and checking the types of member functions. llvm-svn: 67594
-
Eli Friedman authored
llvm-svn: 67593
-
Eli Friedman authored
llvm-svn: 67592
-
Daniel Dunbar authored
executables (e.g., clang). - This matches the clang-driver behavior. llvm-svn: 67590
-
Dan Gohman authored
to be returned in DL. LLVM's multiple-return-value support is not ABI-conforming; front-ends that wish to have code emitted that conforms to an ABI are currently expected to make arrangements for this on their own rather than assuming that multiple-return-values will automatically do the right thing. This commit doesn't fundamentally change this situation. llvm-svn: 67588
-
Dan Gohman authored
canClobberPhysRegDefs if the successor node doesn't clobber any physical registers. llvm-svn: 67587
-
Dan Gohman authored
help out the register pressure reduction heuristics in the case of nodes with multiple uses. Currently this uses very conservative heuristics, so it doesn't have a broad impact, but in cases where it does help it can make a big difference. llvm-svn: 67586
-
Douglas Gregor authored
llvm-svn: 67585
-
Ted Kremenek authored
llvm-svn: 67584
-
Daniel Dunbar authored
ccc due to the different way we handle output arguments). llvm-svn: 67583
-
Daniel Dunbar authored
llvm-svn: 67581
-
Evan Cheng authored
llvm-svn: 67580
-
Douglas Gregor authored
eliminating the duplication is next on the list. llvm-svn: 67579
-
Dale Johannesen authored
llvm-svn: 67578
-
Eli Friedman authored
llvm-svn: 67577
-
Douglas Gregor authored
always get ParmVarDecls with already-adjusted types. Assert it. Thanks, Anders! llvm-svn: 67576
-
Douglas Gregor authored
a class template. At present, we can only instantiation normal methods, but not constructors, destructors, or conversion operators. As ever, this contains a bit of refactoring in Sema's type-checking. In particular: - Split ActOnFunctionDeclarator into ActOnFunctionDeclarator (handling the declarator itself) and CheckFunctionDeclaration (checking for the the function declaration), the latter of which is also used by template instantiation. - We were performing the adjustment of function parameter types in three places; collect those into a single new routine. - When the type of a parameter is adjusted, allocate an OriginalParmVarDecl to keep track of the type as it was written. - Eliminate a redundant check for out-of-line declarations of member functions; hide more C++-specific checks on function declarations behind if(getLangOptions().CPlusPlus). llvm-svn: 67575
-
- Mar 23, 2009
-
-
Evan Cheng authored
Fix a bug in spill weight computation. If the alias is a super-register, and the super-register is in the register class we are trying to allocate. Then add the weight to all sub-registers of the super-register even if they are not aliases. e.g. allocating for GR32, bh is not used, updating bl spill weight. bl should get the same spill weight otherwise it will be choosen as a spill candidate since spilling bh doesn't make ebx available. This fix PR2866. llvm-svn: 67574
-
Ted Kremenek authored
llvm-svn: 67573
-
Ted Kremenek authored
A test case to test that -warn-dead-stores does not emit a warning for stores to variables marked with '#pragma unused'. llvm-svn: 67570
-
Ted Kremenek authored
llvm-svn: 67569
-
Ted Kremenek authored
llvm-svn: 67565
-
Daniel Dunbar authored
On a synthetic command line consisting of almost all defined options, this drops wall time from .00494 to .00336 and user time from .00258 to .00105. On the same benchmark, clang-driver is about 15% faster than the primary gcc driver and almost twice as fast as the gcc driver driver. llvm-svn: 67564
-
Dale Johannesen authored
same as a normal i80 {low64, high16} rather than its own {high64, low16}. A depressing number of places know about this; I think I got them all. Bitcode readers and writers convert back to the old form to avoid breaking compatibility. llvm-svn: 67562
-
John Mosby authored
llvm-svn: 67560
-
Anders Carlsson authored
llvm-svn: 67559
-
Dan Gohman authored
a data dependency on the load node, so it really needs a data-dependence edge to the load node, even if the load previously existed. And add a few comments. llvm-svn: 67554
-
Ted Kremenek authored
llvm-svn: 67553
-
Daniel Dunbar authored
llvm-svn: 67552
-
Fariborz Jahanian authored
llvm-svn: 67551
-
Anders Carlsson authored
More improvements to abstract type checking. Handle arrays correctly, and make sure to check parameter types before they decay. llvm-svn: 67550
-
Daniel Dunbar authored
clang doesn't support, and don't want to warn are unused. Eventually these should disappear. Here is a more readable list than is in the diff: W options: -Wall, -Wcast-align, -Wchar-align, -Wchar-subscripts, -Werror, -Wextra, -Winline, -Wint-to-pointer-cast, -Wmissing-braces, -Wmost, -Wnested-externs, -Wno-format-y2k, -Wno-four-char-constants, -Wno-missing-field-initializers, -Wno-trigraphs, -Wno-unknown-pragmas, -Wno-unused-parameter, -Wparentheses, -Wpointer-arith, -Wpointer-to-int-cast, -Wreturn-type, -Wshorten-64-to-32, -Wswitch, -Wunused-function, -Wunused-label, -Wunused-value, -Wunused-variable, -Wwrite-strings. f options: -fasm-blocks, -fmessage-length=. llvm-svn: 67549
-
Daniel Dunbar authored
Release-Asserts mode). Also, avoid searching through option groups (which will never match). llvm-svn: 67548
-
Evan Cheng authored
llvm-svn: 67545
-
Evan Cheng authored
llvm-svn: 67544
-