summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Use getDepth() and getHeight() instead of accessing theDan Gohman2008-12-171-2/+2
| | | | | | | Depth and Height members directly, as they may not be current. llvm-svn: 61121
* Fix the comments for getDepth and getHeight.Dan Gohman2008-12-171-3/+3
| | | | llvm-svn: 61120
* Fix for PR3225: disable a broken optimization inEli Friedman2008-12-172-0/+22
| | | | | | | | | DAGTypeLegalizer::ExpandShiftWithKnownAmountBit. In terms of restoring the optimization, the best fix here isn't obvious... any ideas? llvm-svn: 61119
* Update also the generated docs.Mikhail Glushenkov2008-12-171-1/+6
| | | | llvm-svn: 61118
* Some enhancements for the 'case' expression.Mikhail Glushenkov2008-12-173-8/+36
| | | | | | Add (error) and (empty). llvm-svn: 61117
* Make sure that enumerators show up within the enumeration declaration. ↵Douglas Gregor2008-12-173-1/+13
| | | | | | Fixes. PR clang/3220 llvm-svn: 61116
* Fix PrintParserCallbacks for the new ActOnLinkageSpec actionsDouglas Gregor2008-12-171-3/+16
| | | | llvm-svn: 61115
* Semantics of @protocol attributes.Fariborz Jahanian2008-12-1710-7/+101
| | | | llvm-svn: 61114
* Tweaks to allow us to rewrite with -x=objective-c++ enabled.Steve Naroff2008-12-171-0/+11
| | | | llvm-svn: 61113
* remove debug stmt, sorry..Nuno Lopes2008-12-161-1/+1
| | | | llvm-svn: 61112
* fix PR 3222: allow one to get the address of a global function in C++Nuno Lopes2008-12-162-3/+9
| | | | llvm-svn: 61111
* Make linkage-specifications hold on to all of their declarationsDouglas Gregor2008-12-168-23/+151
| | | | llvm-svn: 61110
* Clarify that the scale factor from CheckForIVReuseDale Johannesen2008-12-161-11/+26
| | | | | | | | can be negative. Keep track of whether all uses of an IV are outside the loop. Some cosmetics; no functional change. llvm-svn: 61109
* Fix crash with -ast-dump in C++.Eli Friedman2008-12-161-2/+3
| | | | llvm-svn: 61108
* A new dag combine; several permutations of thisDale Johannesen2008-12-162-0/+20
| | | | | | are there under ADD, this one was missing. llvm-svn: 61107
* Add new GRWorkList class that uses two queues:Ted Kremenek2008-12-163-6/+66
| | | | | | | | - one queue (FIFO) to queue up nodes at block entrances - another queue (LIFO) to queue up other nodes - The idea is to explore basic blocks to completion, but to do a BFS exploration of blocks. llvm-svn: 61106
* ProgramPoint:Ted Kremenek2008-12-163-85/+137
| | | | | | | | | | | | | | | | | | | | - Added four new ProgramPoint types that subclass PostStmt for use in GRExprEngine::EvalLocation: - PostOutOfBoundsCheckFailed - PostUndefLocationCheckFailed - PostNullCheckFailed - PostLocationChecksSucceed These were created because of a horribly subtle caching bug in EvalLocation where a node representing an "bug condition" in EvalLocation (e.g. a null dereference) could be re-used as the "non-bug condition" because the Store did not contain any information to differentiate between the two. The extra program points just disables any accidental caching between EvalLocation and its callers. GRExprEngine: - EvalLocation now returns a NodeTy* instead of GRState*. This should be used as the "vetted" predecessor for EvalLoad/EvalStore. llvm-svn: 61105
* Add code to renumber split intervals into new vregs. This is disabled for ↵Owen Anderson2008-12-161-0/+48
| | | | | | now until I finish working out some iterator invalidation issues. llvm-svn: 61104
* Delay parsing of default arguments of member functions until the classDouglas Gregor2008-12-1611-77/+419
| | | | | | | | | | is completely defined (C++ [class.mem]p2). Reverse the order in which we process the definitions of member functions specified inline. This way, we'll get diagnostics in the order in which the member functions were declared in the class. llvm-svn: 61103
* Fix another crash found by inspection. If we have a PHI node mergingChris Lattner2008-12-162-47/+92
| | | | | | | the load multiple times, make sure the check the uses of the PHI to ensure they are transformable. llvm-svn: 61102
* fix a crash found by inspection.Chris Lattner2008-12-163-9/+30
| | | | llvm-svn: 61101
* Add a helper to remove a branch and DCE the condition, and use it Eli Friedman2008-12-162-32/+71
| | | | | | | | consistently for deleting branches. In addition to being slightly more readable, this makes SimplifyCFG a bit better about cleaning up after itself when it makes conditions unused. llvm-svn: 61100
* Silence a couple more operator precedence warnings; this shouldn't Eli Friedman2008-12-162-6/+6
| | | | | | | change the semantics. Please correct this if the precedence was actually supposed to be something different. llvm-svn: 61099
* Warning fixes to operator precedence warnings.Eli Friedman2008-12-163-4/+4
| | | | | | | Someone should double-check that I didn't somehow break ObjC serialization; I think the change there actually changes the semantics. llvm-svn: 61098
* Remove tabs.Nate Begeman2008-12-167-22/+22
| | | | llvm-svn: 61097
* Eliminate the loop that walks the critical path. Instead, just track theDan Gohman2008-12-161-54/+64
| | | | | | | position in the critical path during the main instruction walk. This eliminates the need for the CritialAntiDep DenseMap. llvm-svn: 61096
* Remove empty test.Bill Wendling2008-12-161-0/+0
| | | | llvm-svn: 61095
* Temporarily revert r61019, r61030, and r61040. These were breaking LLVM ReleaseBill Wendling2008-12-1610-111/+41
| | | | | | builds. llvm-svn: 61094
* Preserve SourceValue information when lowering produces multiple loads fromDan Gohman2008-12-161-3/+6
| | | | | | different offsets within the same stack slot. llvm-svn: 61093
* We have decided not to support inline asm where an output operand with a ↵Evan Cheng2008-12-162-11/+13
| | | | | | matching input operand with incompatible type (i.e. either one is a floating point and the other is an integer or the sizes of the types differ). SelectionDAGBuild will catch these and exit with an error. llvm-svn: 61092
* Patch to check for ObjC's property type.Fariborz Jahanian2008-12-163-0/+18
| | | | llvm-svn: 61090
* Fix <rdar://problem/6445502> clang ObjC rewriter: _Block_release has wrong ↵Steve Naroff2008-12-161-11/+9
| | | | | | parameter type in preamble llvm-svn: 61088
* CMake: Added DbgInfoPrinter.cpp to lib/Analysis/CMakeFiles.txt.Oscar Fuentes2008-12-161-0/+1
| | | | llvm-svn: 61087
* add testcase for -print-dbginfoTorok Edwin2008-12-161-0/+136
| | | | llvm-svn: 61086
* Add -print-dbginfo pass that prints LLVM IR with comments inserted to showTorok Edwin2008-12-163-0/+149
| | | | | | | which source/line a certain BB/instruction comes from, original variable names, and original (unmangled) C++ name of functions. llvm-svn: 61085
* Add utility functions to search for DbgStopPointInst corresponding to anTorok Edwin2008-12-162-1/+87
| | | | | | | instruction or BasicBlock, and to search for DbgDeclareInst corresponding to a variable. llvm-svn: 61084
* use different name for parameter to make it clear that we set DIDescriptor::GVTorok Edwin2008-12-161-2/+2
| | | | llvm-svn: 61083
* Generalize support for analyzing loops to include SLE/SGE loop exit conditionsNick Lewycky2008-12-165-26/+64
| | | | | | and support for non-unit strides with signed exit conditions. llvm-svn: 61082
* switch some std::set/std::map to SmallPtrSet/DenseMap.Chris Lattner2008-12-161-14/+13
| | | | llvm-svn: 61081
* fix PR3217: fully cached queries need to be verified against the Chris Lattner2008-12-162-1/+49
| | | | | | | | visited set before they are used. If used, their blocks need to be added to the visited set so that subsequent queries don't use conflicting pointer values in the cache result blocks. llvm-svn: 61080
* Partial fix for qualified name lookup, such that the lookup of N inDouglas Gregor2008-12-162-17/+29
| | | | | | | | | N::X only skips those entities specified in C++ [basic.lookup.qual]p1. Note that both EDG and GCC currently get this wrong. EDG has confirmed that the bug will be fixed in a future version. llvm-svn: 61079
* Enable anti-dependence breaking by default when post-RA scheduling is enabled.Dan Gohman2008-12-162-2/+2
| | | | llvm-svn: 61078
* When breaking an anti-dependency, don't use a register which has seenDan Gohman2008-12-161-0/+1
| | | | | | | one of its aliases defined. This is conservative, but tricky subreg corner cases are outside the primary aim of this pass. llvm-svn: 61077
* Add initial support for back-scheduling address computations,Dan Gohman2008-12-166-3/+166
| | | | | | | especially in the case of addresses computed from loop induction variables. llvm-svn: 61075
* Remove some special-case logic in ScheduleDAGSDNodes's Dan Gohman2008-12-161-10/+0
| | | | | | | latency computation code that is no longer needed with the new method for handling latencies. llvm-svn: 61074
* Fix some register-alias-related bugs in the post-RA scheduler livenessDan Gohman2008-12-1612-299/+357
| | | | | | | | | | | | | | computation code. Also, avoid adding output-depenency edges when both defs are dead, which frequently happens with EFLAGS defs. Compute Depth and Height lazily, and always in terms of edge latency values. For the schedulers that don't care about latency, edge latencies are set to 1. Eliminate Cycle and CycleBound, and LatencyPriorityQueue's Latencies array. These are all subsumed by the Depth and Height fields. llvm-svn: 61073
* * Comply with HTML 4.01 StrictMisha Brukman2008-12-162-44/+86
| | | | | | | * Added code-region markings to code sections to make them stand out * Added pre.doc_code class to llvm.css to simplify marking code regions llvm-svn: 61072
* * Comply with HTML 4.01 Strict standardMisha Brukman2008-12-161-22/+22
| | | | | | | * Converted absolute links to llvm.org/docs to relative links * Fixed spelling and s/;/:/, as needed llvm-svn: 61071
* Add a simple target-independent heuristic to allow targets with noDan Gohman2008-12-161-0/+6
| | | | | | instruction itinerary data to back-schedule loads. llvm-svn: 61070
* Implement RegionStoreManager::Remove().Zhongxing Xu2008-12-161-6/+12
| | | | llvm-svn: 61069
OpenPOWER on IntegriCloud