summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix a FastISel GlobalVariable CSE bug.Dan Gohman2008-09-191-2/+4
| | | | llvm-svn: 56376
* Add initial implementation of scan-viewDaniel Dunbar2008-09-195-0/+643
| | | | | | - Web based interface to static analyzer. llvm-svn: 56375
* Add REPORTBUG marker to scan-build.Daniel Dunbar2008-09-191-0/+4
| | | | llvm-svn: 56373
* Continue after removing the current MI.Evan Cheng2008-09-191-0/+1
| | | | llvm-svn: 56372
* Refactor X86SelectConstAddr, folding it into X86SelectAddress. ThisDan Gohman2008-09-193-102/+82
| | | | | | | results in better code for globals. Also, unbreak the local CSE for GlobalValue stub loads. llvm-svn: 56371
* Test case for transfer function logic of const casts.Ted Kremenek2008-09-191-0/+24
| | | | llvm-svn: 56369
* Bug fix: for the base transfer function logic for casts, handle const casts ↵Ted Kremenek2008-09-191-0/+9
| | | | | | as just propagating the value. llvm-svn: 56368
* Update checker buildTed Kremenek2008-09-191-1/+1
| | | | llvm-svn: 56367
* Make earlyclobber stuff work when virtual regsDale Johannesen2008-09-191-8/+26
| | | | | | have previously been assigned conflicting physreg. llvm-svn: 56364
* Prevent warning about conversion from 64-bit to 32-bit by (yuck) casting...Bill Wendling2008-09-191-1/+1
| | | | llvm-svn: 56359
* Now that ConstantSDNode doesn't hold an APInt,Dan Gohman2008-09-191-1/+1
| | | | | | | | use ARG_FLAGSSDNode as the most aligned node type, as it contains an int64_t, which is 8-byte aligned on mingw. llvm-svn: 56358
* Added static methods to APSInt: getMinValue and getMaxValue.Ted Kremenek2008-09-191-0/+14
| | | | llvm-svn: 56355
* Fixed logic error in BasicConstraintManager pointed out by Zhongxing Xu.Ted Kremenek2008-09-192-24/+11
| | | | | | | | | | | | | | | For checking if a symbol >= value, we need to check if symbol == value || symbol > value. When checking symbol > value and we know that symbol != value, the path is infeasible only if value == maximum integer. For checking if a symbol <= value, we need to check if symbol == value || symbol < value. When checking symbol < value and we know that symbol != value, the path is infeasible only if value == minimum integer. Updated test case exercising this logic: we only prune paths if the values are unsigned. llvm-svn: 56354
* Fix rdar://6222856: the receiver of a message expr is anChris Lattner2008-09-192-1/+6
| | | | | | | arbitrary expr, not just a assign expr. The grammar comment was right, the code was just wrong. llvm-svn: 56353
* Re-materalized definition instructions may be dead. Whack them.Evan Cheng2008-09-193-7/+48
| | | | llvm-svn: 56352
* When we have a binary expression 'int operator symbol', properly rewrite this asTed Kremenek2008-09-191-6/+16
| | | | | | | | 'symbol operator-reverse int'. This patch is a combination of code from Zhongxing Xu and myself (Zhongxing noticed this bug for the cases of relational operators). llvm-svn: 56351
* backing out my last commit, it was not intended to go on the trunkGabor Greif2008-09-195-574/+36
| | | | llvm-svn: 56349
* first shot at removing Use::ValGabor Greif2008-09-195-36/+574
| | | | | | untested, Use::swap() is definitely not done yet llvm-svn: 56348
* Turn on the AddReadAttrs pass.Duncan Sands2008-09-191-1/+4
| | | | llvm-svn: 56345
* Add test for improvement of readonly to readnone,Duncan Sands2008-09-191-3/+12
| | | | | | and non-demotion of readnone to readonly. llvm-svn: 56344
* Turn on these tests!Duncan Sands2008-09-191-0/+3
| | | | llvm-svn: 56343
* Remove the MarkModRef pass (use AddReadAttrs instead).Duncan Sands2008-09-195-1184/+0
| | | | | | | | Unfortunately this means removing one regression test of GlobalsModRef because I couldn't work out how to perform it without MarkModRef. llvm-svn: 56342
* Add a new pass AddReadAttrs which works out which functionsDuncan Sands2008-09-197-4/+146
| | | | | | | | | can get the readnone/readonly attributes, and gives them it. The plan is to remove markmodref (which did the same thing by querying GlobalsModRef) and delete the analogous functionality from GlobalsModRef. llvm-svn: 56341
* Test the callgraph directly for the missing edge.Duncan Sands2008-09-191-1/+2
| | | | llvm-svn: 56338
* Teach -callgraph to always print the callgraph (as theDuncan Sands2008-09-194-9/+8
| | | | | | | | description says it does), not just when -analyze is used as well. This means printing to stderr, so adjust some tests. llvm-svn: 56337
* Add an omitted case for AssumeSymInt.Zhongxing Xu2008-09-191-0/+6
| | | | llvm-svn: 56334
* Updated checker build.Ted Kremenek2008-09-191-1/+1
| | | | llvm-svn: 56333
* Added test case for PR 2600: proper use of NSError**Ted Kremenek2008-09-191-0/+31
| | | | llvm-svn: 56332
* Add panic function "__assert_fail".Ted Kremenek2008-09-191-0/+4
| | | | llvm-svn: 56327
* Remove AsmThatEarlyClobber etc. from LiveIntervalAnalysisDale Johannesen2008-09-195-96/+86
| | | | | | | and redo as linked list walk. Logic moved into RA. Per review feedback. llvm-svn: 56326
* splitLoop does not handle split condition EQ.Devang Patel2008-09-182-0/+44
| | | | | | Fixes PR 2805 llvm-svn: 56321
* Address-mode folding for X86FastISel. It's pretty basic, but itDan Gohman2008-09-181-18/+95
| | | | | | | | catches a fair number of common cases. Note that this currently causes Fast-ISel to leave behind lots of dead instructions. Those will be dealt with in subsequent commits. llvm-svn: 56320
* Register the implicit null-dereferenced object as a notable symbol.Ted Kremenek2008-09-181-0/+1
| | | | llvm-svn: 56319
* Implement second part of PR 2600: NSError** parameter may be null, and ↵Ted Kremenek2008-09-188-7/+98
| | | | | | should be checked before being dereferenced. llvm-svn: 56318
* Update Xcode project.Ted Kremenek2008-09-181-0/+4
| | | | llvm-svn: 56317
* Decrementing the iterator here could be wrong if the worklist is empty after ↵Bill Wendling2008-09-181-4/+5
| | | | | | | | the "erase". Thanks to Ji Young Park for the patch! llvm-svn: 56316
* Try to place hoisted instructions befoe icmp instruction.Devang Patel2008-09-181-2/+23
| | | | llvm-svn: 56315
* Somehow RegAllocLinearScan is keeping two pointers to MachineRegisterInfo.Evan Cheng2008-09-181-8/+6
| | | | llvm-svn: 56314
* Analysis option -warn-objc-nserror-methods is no longer available. (check is ↵Ted Kremenek2008-09-181-1/+0
| | | | | | done automatically with -checker-cfref) llvm-svn: 56313
* Change implementation of NSError** coding-style check to be invoked at the ↵Ted Kremenek2008-09-188-56/+95
| | | | | | end of the retain/release analysis. llvm-svn: 56312
* Simplify this code. The FastISel class has its own TD member.Dan Gohman2008-09-181-4/+3
| | | | llvm-svn: 56311
* Don't consider instructions with implicit physical registerDan Gohman2008-09-181-1/+2
| | | | | | defs to be necessarily live. llvm-svn: 56310
* Finish pushing blocks attribute through the clang attribute machinery.Steve Naroff2008-09-186-1/+87
| | | | | | Also added a couple simple tests from the "gcc.apple" test suite. llvm-svn: 56309
* Upgrade doxygen.Tanya Lattner2008-09-181-76/+265
| | | | llvm-svn: 56308
* Add a new "fast" scheduler. This is currently basically just aDan Gohman2008-09-183-0/+662
| | | | | | | | | | | | | | | | copy of the BURRList scheduler, but with several parts ripped out, such as backtracking, online topological sort maintenance (needed by backtracking), the priority queue, and Sethi-Ullman number computation and maintenance (needed by the priority queue). As a result of all this, it generates somewhat lower quality code, but that's its tradeoff for running about 30% faster than list-burr in -fast mode in many cases. This is somewhat experimental. Moving forward, major pieces of this can be refactored with pieces in common with ScheduleDAGRRList.cpp. llvm-svn: 56307
* Add driver support for invoking block rewriter.Steve Naroff2008-09-183-11/+27
| | | | | | Also tweaked the create function to take an explicit output file. llvm-svn: 56305
* Preliminary support for systems which require changing JIT memory regions ↵Evan Cheng2008-09-186-1/+54
| | | | | | privilege from read / write to read / executable. llvm-svn: 56303
* Duh. Default to ARMCC::AL (always).Evan Cheng2008-09-181-23/+63
| | | | llvm-svn: 56301
* Clean up.Evan Cheng2008-09-181-4/+8
| | | | llvm-svn: 56300
* Cosmetic.Evan Cheng2008-09-181-3/+5
| | | | llvm-svn: 56299
OpenPOWER on IntegriCloud