summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Revert r95939, as suggested by Alexandre Julliard from the Wine project (andCharles Davis2010-02-174-12/+6
| | | | | | our own Chris Lattner). llvm-svn: 96431
* Delete some unneeded casts.Dan Gohman2010-02-171-2/+2
| | | | llvm-svn: 96429
* Don't attempt to divide INT_MIN by -1; consider such cases toDan Gohman2010-02-172-0/+30
| | | | | | have overflowed. llvm-svn: 96428
* Remove trailing spaces.Ted Kremenek2010-02-171-212/+212
| | | | llvm-svn: 96427
* make the new isel's interpreter loop call the generated Chris Lattner2010-02-172-6/+10
| | | | | | | | CheckComplexPattern function. Though it is logically const, I don't have the fortitude to clean up all the targets now, and it not being const doesn't block anything. llvm-svn: 96426
* Change clang_getCursorKindSpelling() to return a CXStringTed Kremenek2010-02-173-158/+202
| | | | | | instead of a 'const char *'. llvm-svn: 96425
* Change clang_getFileName() to return a 'CXString' instead of 'const char *'.Ted Kremenek2010-02-173-13/+31
| | | | llvm-svn: 96424
* Move createCXString() functions out of CIndexer and into the clang::cxstring ↵Ted Kremenek2010-02-174-98/+101
| | | | | | | | | | | | namespace. We can much more succinctly refer to these functions this way. Also change the default behavior of createCXString(StringRef&) to duplicate the string. This is almost always what we want. The other case is where we pass a constant c-string, which uses the other version of createCXString(). llvm-svn: 96423
* improve comments in generated matcher a bit.Chris Lattner2010-02-171-12/+12
| | | | llvm-svn: 96422
* Make the operand and format specifier match, and print allDan Gohman2010-02-171-1/+1
| | | | | | 64 bits, fixing a variety of problems. llvm-svn: 96421
* Implement AST importing of Objective-C instance variables. Douglas Gregor2010-02-175-10/+127
| | | | | | Check superclasses when merging two Objective-C @interfaces. llvm-svn: 96420
* make the new isel generator plop out a CheckComplexPattern functionChris Lattner2010-02-174-6/+52
| | | | | | | for evaluating complex patterns. Some cleanup has to happen before this can be used though. llvm-svn: 96419
* Wrap lines to 80 columns and generally try to clean up whitespace andBob Wilson2010-02-171-312/+216
| | | | | | indentation. No functional changes. llvm-svn: 96418
* roundss is an sse 4 thing, fix the test on non-sse41 buildersChris Lattner2010-02-171-1/+1
| | | | | | like llvm-gcc-x86_64-darwin10-selfhost llvm-svn: 96417
* fix inverted condition.Chris Lattner2010-02-171-1/+3
| | | | llvm-svn: 96416
* Make g5 target explicit; scheduling affects register choice.Dale Johannesen2010-02-161-1/+1
| | | | llvm-svn: 96413
* complex patterns don't get 'record' nodes, they implicitlyChris Lattner2010-02-161-1/+20
| | | | | | record all their results. llvm-svn: 96412
* clean up some code, eliminate NodeIsComplexPattern, whichChris Lattner2010-02-161-18/+5
| | | | | | does the same thing as getComplexPatternInfo. llvm-svn: 96411
* Make error statement more personal.Bill Wendling2010-02-161-1/+1
| | | | llvm-svn: 96410
* fix indentationChris Lattner2010-02-161-62/+66
| | | | llvm-svn: 96409
* fix rdar://7653908, a crash on a case where we would fold a loadChris Lattner2010-02-164-49/+62
| | | | | | | | | | 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
* Adjust register numbers in tests to compensate for theDale Johannesen2010-02-164-14/+14
| | | | | | new lack of R2. llvm-svn: 96407
* More rewriter test converted to compile with clang.Fariborz Jahanian2010-02-162-8/+2
| | | | llvm-svn: 96406
* With addition of -Wno-address-of-temporary (thank you Doug) we can nowFariborz Jahanian2010-02-161-4/+3
| | | | | | | have rewriter test cases which pass the .cpp file through clang and also test c++ aspect of clang. llvm-svn: 96405
* filecheckizeChris Lattner2010-02-161-3/+9
| | | | llvm-svn: 96404
* IRgen optimization: cache the value of 'this' and 'vtt' instead ofJohn McCall2010-02-164-25/+19
| | | | | | | | 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
* Handle tGPR register class in a few more places. This fixes some llvm-gccBob Wilson2010-02-161-0/+10
| | | | | | build failures due to my fix for pr6111. llvm-svn: 96402
* Add SMC (Secure Monitor Call) system instruction for disassembly only.Johnny Chen2010-02-161-2/+9
| | | | llvm-svn: 96401
* Really reserve R2 on PPC Darwin. PR 6314.Dale Johannesen2010-02-161-8/+4
| | | | llvm-svn: 96399
* Distinguish two lexical blocks at the same level.Devang Patel2010-02-162-1/+22
| | | | llvm-svn: 96397
* Introduce a new kind of failed result for isLvalue/isModifiableLvalueDouglas Gregor2010-02-166-6/+62
| | | | | | | | 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
* Use line and column number to distinguish two lexical blocks at the same level.Devang Patel2010-02-162-7/+13
| | | | llvm-svn: 96395
* 80 column cleanupJim Grosbach2010-02-163-21/+24
| | | | llvm-svn: 96393
* New testcase.Devang Patel2010-02-161-0/+13
| | | | llvm-svn: 96391
* Look for SSE and instructions of this form: (and x, (build_vector c1,c2,c3,c4)).Evan Cheng2010-02-163-5/+62
| | | | | | | | | | | | | 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
* Remove trailing whitespaceJim Grosbach2010-02-163-46/+46
| | | | llvm-svn: 96388
* Rename SuccessorNumber to GetSuccessorNumber.Bob Wilson2010-02-163-11/+13
| | | | llvm-svn: 96387
* Add support for emitting non-temporal stores for DAGs markedDavid Greene2010-02-163-13/+115
| | | | | | | | | | non-temporal. Fix from r96241 for botched encoding of MOVNTDQ. Add documentation for !nontemporal metadata. Add a simpler movnt testcase. llvm-svn: 96386
* Testcase for critical edge splitting with load PRE.Bob Wilson2010-02-161-0/+27
| | | | llvm-svn: 96385
* Update Thumb2 to not use CarryDefIsUnused or CarryDefIsUsed predicates, butJim Grosbach2010-02-162-21/+25
| | | | | | | | 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
* Remove redundant setting of Defs. CPSR is already marked by the block level ↵Jim Grosbach2010-02-161-3/+0
| | | | | | set of Defs. llvm-svn: 96383
* Refactor rewriting for PHI nodes into a separate function.Dan Gohman2010-02-161-49/+70
| | | | llvm-svn: 96382
* First step in eliminating the CarryDefIsUnused and CarryDefIsUsed predicates.Jim Grosbach2010-02-161-18/+33
| | | | | | | | | | 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
* Added for disassembly the following instructions:Johnny Chen2010-02-161-3/+128
| | | | | | | | o Store Return State (SRSW, SRS) o Load/Store Coprocessor (LDC/STC and friends) o MSR (immediate) llvm-svn: 96380
* Split critical edges as needed for load PRE.Bob Wilson2010-02-163-9/+43
| | | | llvm-svn: 96378
* Refactor to share code to find the position of a basic block successor in theBob Wilson2010-02-163-19/+23
| | | | | | terminator's list of successors. llvm-svn: 96377
* IRgen: Switch 'retval' to use CreateIRTemp.Daniel Dunbar2010-02-162-8/+17
| | | | llvm-svn: 96376
* Disable warn_unused_function for now, its breaking various project builds due toDaniel Dunbar2010-02-162-3/+6
| | | | | | false positives. llvm-svn: 96375
* IRgen: Add CreateIRTemp, which creates a temporary alloca but with type ↵Daniel Dunbar2010-02-162-1/+18
| | | | | | converted "not-for-memory". Dunno a better name. llvm-svn: 96374
* IRgen: Switch EmitCompoundLiteralLValue to use CreateMemTemp.Daniel Dunbar2010-02-162-7/+12
| | | | llvm-svn: 96373
OpenPOWER on IntegriCloud