- Feb 16, 2010
-
-
Bill Wendling authored
llvm-svn: 96410
-
Chris Lattner authored
llvm-svn: 96409
-
rdar://7653908Chris Lattner authored
into a roundss intrinsic, producing a cyclic dag. The root cause of this is badness handling ComplexPattern nodes in the old dagisel that I noticed through inspection. Eliminate a copy of the of the code that handled ComplexPatterns by making EmitChildMatchCode call into EmitMatchCode. llvm-svn: 96408
-
Dale Johannesen authored
new lack of R2. llvm-svn: 96407
-
Fariborz Jahanian authored
llvm-svn: 96406
-
Fariborz Jahanian authored
have rewriter test cases which pass the .cpp file through clang and also test c++ aspect of clang. llvm-svn: 96405
-
Chris Lattner authored
llvm-svn: 96404
-
John McCall authored
repeatedly reloading from an alloca. We still need to create the alloca for debug info purposes (although we currently create it in all cases because of some abstraction boundaries that're hard to break down). llvm-svn: 96403
-
Bob Wilson authored
build failures due to my fix for pr6111. llvm-svn: 96402
-
Johnny Chen authored
llvm-svn: 96401
-
Dale Johannesen authored
llvm-svn: 96399
-
Devang Patel authored
llvm-svn: 96397
-
Douglas Gregor authored
which describes temporary objects of class type in C++. Use this to provide a more-specific, remappable diagnostic when takin the address of such a temporary. llvm-svn: 96396
-
Devang Patel authored
llvm-svn: 96395
-
Jim Grosbach authored
llvm-svn: 96393
-
Devang Patel authored
llvm-svn: 96391
-
Evan Cheng authored
If there exists a use of a build_vector that's the bitwise complement of the mask, then transform the node to (and (xor x, (build_vector -1,-1,-1,-1)), (build_vector ~c1,~c2,~c3,~c4)). Since this transformation is only useful when 1) the given build_vector will become a load from constpool, and 2) (and (xor x -1), y) matches to a single instruction, I decided this is appropriate as a x86 specific transformation. rdar://7323335 llvm-svn: 96389
-
Jim Grosbach authored
llvm-svn: 96388
-
Bob Wilson authored
llvm-svn: 96387
-
David Greene authored
Add support for emitting non-temporal stores for DAGs marked non-temporal. Fix from r96241 for botched encoding of MOVNTDQ. Add documentation for !nontemporal metadata. Add a simpler movnt testcase. llvm-svn: 96386
-
Bob Wilson authored
llvm-svn: 96385
-
Jim Grosbach authored
to have the predicate on the pattern itself instead. Support for the new ISel. Remove definitions of CarryDefIsUnused and CarryDefIsUsed since they are no longer used anywhere. llvm-svn: 96384
-
Jim Grosbach authored
llvm-svn: 96383
-
Dan Gohman authored
llvm-svn: 96382
-
Jim Grosbach authored
They won't work with the new ISel mechanism, as Requires predicates are no longer allowed to reference the node being selected. Moving the predicate to the patterns instead solves the problem. This patch handles ARM mode. Thumb2 will follow. llvm-svn: 96381
-
Johnny Chen authored
o Store Return State (SRSW, SRS) o Load/Store Coprocessor (LDC/STC and friends) o MSR (immediate) llvm-svn: 96380
-
Bob Wilson authored
llvm-svn: 96378
-
Bob Wilson authored
terminator's list of successors. llvm-svn: 96377
-
Daniel Dunbar authored
llvm-svn: 96376
-
Daniel Dunbar authored
false positives. llvm-svn: 96375
-
Daniel Dunbar authored
IRgen: Add CreateIRTemp, which creates a temporary alloca but with type converted "not-for-memory". Dunno a better name. llvm-svn: 96374
-
Daniel Dunbar authored
llvm-svn: 96373
-
Dan Gohman authored
llvm-svn: 96372
-
Douglas Gregor authored
disaster. Fixes PR6161. llvm-svn: 96371
-
Kenneth Uildriks authored
llvm-svn: 96370
-
Chris Lattner authored
need to scan the entire subtree of the pattern anymore. llvm-svn: 96369
-
Chris Lattner authored
use and only call IsProfitableToFold/IsLegalToFold on the load being folded, like the old dagiselemitter does. This substantially simplifies the code and improves opportunities for sharing. llvm-svn: 96368
-
Douglas Gregor authored
now cope with the destruction of types named as dependent templates, e.g., y->template Y<T>::~Y() Nominally, we implement C++0x [basic.lookup.qual]p6. However, we don't follow the letter of the standard here because that would fail to parse template<typename T, typename U> X0<T, U>::~X0() { } properly. The problem is captured in core issue 339, which gives some (but not enough!) guidance. I expect to revisit this code when the resolution of 339 is clear, and/or we start capturing better source information for DeclarationNames. Fixes PR6152. llvm-svn: 96367
-
Chris Lattner authored
with chains. On interior nodes that lead up to them, we just directly check that there is a single use. This generates slightly more efficient code. llvm-svn: 96366
-
Chris Lattner authored
indicate that it was enabled with -pedantic so people know why they're getting them: $ printf "int x;" | clang -xc - -pedantic <stdin>:1:7: warning: no newline at end of file [-pedantic] int x; ^ llvm-svn: 96365
-