- Feb 05, 2010
-
-
Chris Lattner authored
to start limping. llvm-svn: 95350
-
Ted Kremenek authored
Now that the -cc1 options for analyzer checks have a structured naming, add back scanning for analyzer checks to scan-build. llvm-svn: 95349
-
Ted Kremenek authored
llvm-svn: 95348
-
Ted Kremenek authored
llvm-svn: 95347
-
Ted Kremenek authored
llvm-svn: 95346
-
Ted Kremenek authored
llvm-svn: 95345
-
Chris Lattner authored
pushl %ebp movl %esp, %ebp movl $42, %eax popl %ebp ret llvm-svn: 95344
-
Ted Kremenek authored
llvm-svn: 95343
-
Ted Kremenek authored
llvm-svn: 95342
-
Fariborz Jahanian authored
(Fixes radar 7607605). llvm-svn: 95341
-
John McCall authored
Fixes latent and not-so-latent objc++ and blocks++ bugs. llvm-svn: 95340
-
Evan Cheng authored
When the scheduler unfold a load folding instruction it move some of the predecessors to the unfolded load. It decides what gets moved to the load by checking whether the new load is using the predecessor as an operand. The check neglects the cases whether the predecessor is a flagged scheduling unit. rdar://7604000 llvm-svn: 95339
-
Bill Wendling authored
following it. However, the EmitGlobalConstant method wasn't emitting a body for the constant. The assembler doesn't like that. Before, we were generating this: .zerofill __DATA, __common, __cmd, 1, 3 This fix puts us back to that semantic. llvm-svn: 95336
-
John Thompson authored
llvm-svn: 95335
-
Douglas Gregor authored
category implementation, which showed up during (attempted) typo correction. Fixes <rdar://problem/7605289>. llvm-svn: 95334
-
Bob Wilson authored
short-circuited conditions to AND/OR expressions, and those expressions are often converted back to a short-circuited form in code gen. The original source order may have been optimized to take advantage of the expected values, and if we reassociate them, we change the order and subvert that optimization. Radar 7497329. llvm-svn: 95333
-
- Feb 04, 2010
-
-
John McCall authored
of a C++ record. Exposed a lot of problems where various routines were silently doing The Wrong Thing (or The Acceptable Thing in The Wrong Order) when presented with a non-definition. Also cuts down on memory usage. llvm-svn: 95330
-
Ted Kremenek authored
llvm-svn: 95324
-
Evan Phoenix authored
Instruction selection for X86 now can choose an instruction sequence that will fit any address of any symbol, no matter the pointer width. X86-64 uses a mov+call-via-reg sequence for this. llvm-svn: 95323
-
Evan Cheng authored
llvm-svn: 95322
-
Jakob Stoklund Olesen authored
This makes the inliner about as agressive as it was before my changes to the inliner cost calculations. These levels give the same performance and slightly smaller code than before. llvm-svn: 95320
-
Jakob Stoklund Olesen authored
ProcessImplicitDefs would only mark one operand per instruction with <undef>. This fixed PR6086. llvm-svn: 95319
-
Benjamin Kramer authored
llvm-svn: 95318
-
Douglas Gregor authored
ton of potential crashes of the same kind. The fundamental problem is that type creation was following a dangerous pattern when using its FoldingSets: 1) Use FindNodeOrInsertPos to see if the type is available 2) If not, and we aren't looking at a canonical type, build the canonical type 3) Build and insert the new node into the FoldingSet The problem here is that building the canonical type can, in very rare circumstances, force the hash table inside the FoldingSet to reallocate. That invalidates the insertion position we computed in step 1, and in step 3 we end up inserting the new node into the wrong place. BOOM! I've audited all of ASTContext, fixing this problem everywhere I found it. The vast majority of wrong code was C++-specific (and *ahem* written by me), so I also audited other major folding sets in the C++ code (e.g., template specializations), but found no other instances of this problem. llvm-svn: 95315
-
Anders Carlsson authored
With this fix, and the other fixes committed today a make check-all with a clang-built LLVM now gives: Expected Passes : 6933 Expected Failures : 46 Unsupported Tests : 40 Unexpected Failures: 27 which means that we pass 99.96% of all tests :) The resulting 27 tests are all LLVMC tests and seem to be because of differences in the clang and gcc drivers. llvm-svn: 95313
-
Anders Carlsson authored
llvm-svn: 95312
-
Anders Carlsson authored
Fix a bug where we would not mark temporaries as conditional when emitting a conditional operator as an lvalue. llvm-svn: 95311
-
Anders Carlsson authored
llvm-svn: 95310
-
Douglas Gregor authored
template parameter, perform array/function decay (if needed), take the address of the argument (if needed), perform qualification conversions (if needed), and remove any top-level cv-qualifiers from the resulting expression. Fixes PR6226. llvm-svn: 95309
-
Anders Carlsson authored
Rename StartConditionalBranch/FinishConditionalBranch to BeginConditionalBranch/EndConditionalBranch. llvm-svn: 95308
-
Anders Carlsson authored
Fix another pointer-to-member function miscompile, this time when trying to call a virtual member function. llvm-svn: 95307
-
Anders Carlsson authored
llvm-svn: 95306
-
Anders Carlsson authored
llvm-svn: 95305
-
Benjamin Kramer authored
llvm-svn: 95303
-
Torok Edwin authored
This allows to show the explicit files that need to be built/linked to get an LLVM component. llvm-svn: 95300
-
Chris Lattner authored
llvm-svn: 95299
-
Ted Kremenek authored
direct bit manipulation. This is is less error prone, and fixes a bug in the handling of the LeadingZeroes flag as pointed out by Cristian Draghici. llvm-svn: 95298
-
Ted Kremenek authored
llvm-svn: 95297
-
Chris Lattner authored
after r95292 llvm-svn: 95296
-
Evan Cheng authored
llvm-svn: 95295
-