- Mar 02, 2010
-
-
Eric Christopher authored
Patch by Oleksandr Tymoshenko! llvm-svn: 97544
-
Evan Cheng authored
llvm-svn: 97543
-
Evan Cheng authored
Add count() and lookup() to ScopedHashTable. It might be useful to get information out of the hash table. llvm-svn: 97542
-
Chris Lattner authored
llvm-svn: 97541
-
John McCall authored
does, document the results and then implement __builtin_extend_pointer for platforms where it's a no-op. llvm-svn: 97540
-
Chris Lattner authored
stuff now that we don't care about emulating the old broken behavior of the old isel. This eliminates the 'CheckChainCompatible' check (along with IsChainCompatible) which did an incorrect and inefficient scan *up* the chain nodes which happened as the pattern was being formed and does the validation at the end in HandleMergeInputChains when it forms a structural pattern. This scans "down" the graph, which means that it is quickly bounded by nodes already selected. This also handles token factors that get "trapped" in the dag. Removing the CheckChainCompatible nodes also shrinks the generated tables by about 6K for X86 (down to 83K). There are two pieces remaining before I can nuke PreprocessRMW: 1. I xfailed a test because we're now producing worse code in a case that has nothing to do with the change: it turns out that our use of MorphNodeTo will leave dead nodes in the graph which (depending on how the graph is walked) end up causing bogus uses of chains and blocking matches. This is really bad for other reasons, so I'll fix this in a follow-up patch. 2. CheckFoldableChainNode needs to be improved to handle the TF. llvm-svn: 97539
-
Dan Gohman authored
Based on a patch by Micah Villmow for PR6438. llvm-svn: 97538
-
Dan Gohman authored
emitted after the increment. Make sure the insert position reflects this. This fixes PR6453. llvm-svn: 97537
-
Bill Wendling authored
llvm-svn: 97536
-
Douglas Gregor authored
llvm-svn: 97535
-
Douglas Gregor authored
for the purposes of parsing default arguments. In effect, we would re-introduce the parameter with a default argument N times (where N is the number of parameters preceding the parameter with a default argument). This showed up when a defaulted parameter of a member function of a local class shadowed a parameter of the enclosing function. Fixes PR6383. llvm-svn: 97534
-
Devang Patel authored
Constructors and operators for anonymous aggregates does not names. Do not force empty AT_name attribute in such cases. llvm-svn: 97533
-
Fariborz Jahanian authored
Satisfies radar 7703202. llvm-svn: 97532
-
Dan Gohman authored
respectively. llvm-svn: 97531
-
Dan Gohman authored
better reflect its meaning, now that tail call optimizations are done by default in some cases. llvm-svn: 97530
-
Chris Lattner authored
llvm-svn: 97529
-
Douglas Gregor authored
llvm-svn: 97528
-
Chris Lattner authored
llvm-svn: 97527
-
Bob Wilson authored
a loop and is itself the only dependency). llvm-svn: 97526
-
Chris Lattner authored
new helper function. llvm-svn: 97525
-
Douglas Gregor authored
*not* entering the context of the nested-name-specifier. This was causing us to look into an uninstantiated template that we shouldn't look into. Fixes PR6376. llvm-svn: 97524
-
John McCall authored
category. Use this in a few places to eliminate unnecessary TST cases and do some future-proofing. Provide terrible manglings for typeof. Mangle decltype with some hope of accuracy. Our manglings for some of the cases covered in the testcase are different from gcc's, which I've raised as an issue with the ABI list. llvm-svn: 97523
-
Chris Lattner authored
old isel generated code. llvm-svn: 97522
-
Bob Wilson authored
predecessors before returning. Otherwise, if multiple predecessor edges need splitting, we only get one of them per iteration. This makes a small but measurable compile time improvement with -enable-full-load-pre. llvm-svn: 97521
-
Fariborz Jahanian authored
Radar 7696893. llvm-svn: 97520
-
Douglas Gregor authored
llvm-svn: 97519
-
Douglas Gregor authored
which has the label map, switch statement stack, etc. Previously, we had a single set of maps in Sema (for the function) along with a stack of block scopes. However, this lead to funky behavior with nested functions, e.g., in the member functions of local classes. The explicit-stack approach is far cleaner, and we retain a 1-element cache so that we're not malloc/free'ing every time we enter a function. Fixes PR6382. Also, tweaked the unused-variable warning suppression logic to look at errors within a given Scope rather than within a given function. The prior code wasn't looking at the right number-of-errors count when dealing with blocks, since the block's count would be deallocated before we got to ActOnPopScope. This approach works with nested blocks/functions, and gives tighter error recovery. llvm-svn: 97518
-
Chris Lattner authored
llvm-svn: 97517
-
- Mar 01, 2010
-
-
Chris Lattner authored
now that it is gone. llvm-svn: 97516
-
Chris Lattner authored
llvm-svn: 97515
-
Chris Lattner authored
EmitMergeInputChainsMatcher node up into EmitResultCode. This doesn't have much of an effect on the generated code, the X86 table is exactly the same size. llvm-svn: 97514
-
Chris Lattner authored
(set GPR, somecomplexpattern) if somecomplexpattern doesn't declare what it can match. llvm-svn: 97513
-
Evan Cheng authored
llvm-svn: 97512
-
Chris Lattner authored
(the most general) the others are dead. llvm-svn: 97511
-
Chris Lattner authored
llvm-svn: 97510
-
Chris Lattner authored
ordered correctly. Previously it would get in trouble when two patterns were too similar and give them nondet ordering. We force this by using the record ID order as a fallback. The testsuite diff is due to alpha patterns being ordered slightly differently, the change is a semantic noop afaict: < lda $0,-100($16) --- > subq $16,100,$0 llvm-svn: 97509
-
Chris Lattner authored
llvm-svn: 97508
-
Evan Cheng authored
Remove the optimize for code size limitation on r67917. Optimize 64-bit imul by constants into leas + shl regardless if optimizing for code size. The size saving from using imulq isn't worth it. Also, the lea and shl instructions may expose further optimization. llvm-svn: 97507
-
Chris Lattner authored
llvm-svn: 97504
-
Dan Gohman authored
llvm-svn: 97502
-