- Jan 06, 2010
-
-
Douglas Gregor authored
llvm-svn: 92863
-
John McCall authored
llvm-svn: 92862
-
Douglas Gregor authored
llvm-svn: 92858
-
Douglas Gregor authored
linkage of vtables. Before this, we were emitting RTTI names for template instantiations with strong external linkage rather than with weak ODR linkage. llvm-svn: 92857
-
Fariborz Jahanian authored
continuation classes and its original declaration is imported from a protocol. This fixes radar 7509234. llvm-svn: 92856
-
Douglas Gregor authored
Fix marking of virtual members for nested classes whose first non-pure virtual function has a body inlined in the class llvm-svn: 92855
-
Eric Christopher authored
it work for any integer size return type. llvm-svn: 92853
-
Evan Cheng authored
llvm-svn: 92850
-
Evan Cheng authored
(OP (trunc x), (trunc y)) -> (trunc (OP x, y)) Unfortunately this simple change causes dag combine to infinite looping. The problem is the shrink demanded ops optimization tend to canonicalize expressions in the opposite manner. That is badness. This patch disable those optimizations in dag combine but instead it is done as a late pass in sdisel. This also exposes some deficiencies in dag combine and x86 setcc / brcond lowering. Teach them to look pass ISD::TRUNCATE in various places. llvm-svn: 92849
-
David Chisnall authored
llvm-svn: 92846
-
Douglas Gregor authored
llvm-svn: 92841
-
Douglas Gregor authored
result for a nested class whose first non-pure virtual member function has an inline body. Previously, we were checking for the key function before we had seen the (delayed) inline body. llvm-svn: 92839
-
Victor Hernandez authored
llvm-svn: 92838
-
Jim Grosbach authored
llvm-svn: 92837
-
Duncan Sands authored
phi nodes when deciding which pointers point to local memory. I actually checked long ago how useful this is, and it isn't very: it hardly ever fires in the testsuite, but since Chris wants it here it is! llvm-svn: 92836
-
John McCall authored
as parts of overload sets. Also, refer to constructors as 'constructors' rather than functions. Adjust a lot of tests. llvm-svn: 92832
-
Mikhail Glushenkov authored
llvm-svn: 92831
-
Lang Hames authored
llvm-svn: 92830
-
Duncan Sands authored
memcpy, memset and other intrinsics that only access their arguments to be readnone if the intrinsic's arguments all point to local memory. This improves the testcase in the README to readonly, but it could in theory be made readnone, however this would involve more sophisticated analysis that looks through the memcpy. llvm-svn: 92829
-
Daniel Dunbar authored
llvm-svn: 92828
-
Daniel Dunbar authored
llvm-svn: 92827
-
Duncan Sands authored
it on for darwin (it fails on linux). llvm-svn: 92826
-
Daniel Dunbar authored
llvm-svn: 92825
-
Chris Lattner authored
llvm-svn: 92824
-
John McCall authored
for -Wsign-compare and -Wconversion, and use that coordinated logic to drive both diagnostics. The new logic works more transparently with implicit conversions, conditional operators, etc., as well as bringing -Wconversion's ability to deal with pseudo-closed operations (e.g. arithmetic on shorts) to -Wsign-compare. Fixes PRs 5887, 5937, 5938, and 5939. llvm-svn: 92823
-
Douglas Gregor authored
Revert my available_externally vtables experiment. It's breaking the LLVM-with-Clang build with linker errors that I have yet to investigate. llvm-svn: 92822
-
Douglas Gregor authored
deterministic and work properly with templates. Once a class that needs a vtable has been defined, we now do one if two things: - If the class has no key function, we place the class on a list of classes whose virtual functions will need to be "marked" at the end of the translation unit. The delay until the end of the translation unit is needed because we might see template specializations of these virtual functions. - If the class has a key function, we do nothing; when the key function is defined, the class will be placed on the aforementioned list. At the end of the translation unit, we "mark" all of the virtual functions of the classes on the list as used, possibly causing template instantiation and other classes to be added to the list. This gets LLVM's lib/Support/CommandLine.cpp compiling again. llvm-svn: 92821
-
Ted Kremenek authored
llvm-svn: 92820
-
Mike Stump authored
llvm-svn: 92819
-
Dale Johannesen authored
bootstrap. llvm-svn: 92818
-
Dale Johannesen authored
synonyms for PPC. llvm-svn: 92817
-
Mike Stump authored
llvm-svn: 92816
-
Chris Lattner authored
Previously, instcombine would only promote an expression tree to the larger type if doing so eliminated two casts. This is because a need to manually do the sign extend after the promoted expression tree with two shifts. Now, we keep track of whether the result of the computation is going to be properly sign extended already. If so, we can unconditionally promote the expression, which allows us to zap more sext's. This implements rdar://6598839 (aka gcc pr38751) llvm-svn: 92815
-
Jakob Stoklund Olesen authored
An instruction like this: %reg1097:1<def> = VMOVSR %R3<kill>, 14, %reg0 Must be replaced with this when substituting physical registers: %S0<def> = VMOVSR %R3<kill>, 14, %reg0, %D0<imp-def> llvm-svn: 92812
-
Bill Wendling authored
llvm-svn: 92810
-
Ted Kremenek authored
Per offline discussion with Doug, don't perform typo correction when we have encountered a fatal error. On some files that are woefully wrong (missing headers) this can cause a 3x slowdown in some cases when parsing the file. It makes sense not to perform typo correction in this case because after a fatal error diagnostics will either be suppressed or not really make any sense. llvm-svn: 92809
-
Fariborz Jahanian authored
for a 'readonly' property. Fixes radar 7427072. llvm-svn: 92808
-
Bill Wendling authored
llvm-svn: 92807
-
Bill Wendling authored
bottom-up scheduler. We prefer the lower order number. llvm-svn: 92806
-
John McCall authored
try to evaluate an expression as a constant boolean condition. This has the same intended semantics as used in folding conditional operators. llvm-svn: 92805
-