| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Depth and Height members directly, as they may not be
current.
llvm-svn: 61121
|
| |
|
|
| |
llvm-svn: 61120
|
| |
|
|
|
|
|
|
|
| |
DAGTypeLegalizer::ExpandShiftWithKnownAmountBit.
In terms of restoring the optimization, the best fix here isn't
obvious... any ideas?
llvm-svn: 61119
|
| |
|
|
| |
llvm-svn: 61118
|
| |
|
|
|
|
| |
Add (error) and (empty).
llvm-svn: 61117
|
| |
|
|
|
|
| |
Fixes. PR clang/3220
llvm-svn: 61116
|
| |
|
|
| |
llvm-svn: 61115
|
| |
|
|
| |
llvm-svn: 61114
|
| |
|
|
| |
llvm-svn: 61113
|
| |
|
|
| |
llvm-svn: 61112
|
| |
|
|
| |
llvm-svn: 61111
|
| |
|
|
| |
llvm-svn: 61110
|
| |
|
|
|
|
|
|
| |
can be negative. Keep track of whether all uses of
an IV are outside the loop. Some cosmetics; no
functional change.
llvm-svn: 61109
|
| |
|
|
| |
llvm-svn: 61108
|
| |
|
|
|
|
| |
are there under ADD, this one was missing.
llvm-svn: 61107
|
| |
|
|
|
|
|
|
| |
- 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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
| |
|
|
|
|
| |
now until I finish working out some iterator invalidation issues.
llvm-svn: 61104
|
| |
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
| |
the load multiple times, make sure the check the uses of the PHI to
ensure they are transformable.
llvm-svn: 61102
|
| |
|
|
| |
llvm-svn: 61101
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
| |
change the semantics. Please correct this if the precedence was
actually supposed to be something different.
llvm-svn: 61099
|
| |
|
|
|
|
|
| |
Someone should double-check that I didn't somehow break ObjC
serialization; I think the change there actually changes the semantics.
llvm-svn: 61098
|
| |
|
|
| |
llvm-svn: 61097
|
| |
|
|
|
|
|
| |
position in the critical path during the main instruction walk. This
eliminates the need for the CritialAntiDep DenseMap.
llvm-svn: 61096
|
| |
|
|
| |
llvm-svn: 61095
|
| |
|
|
|
|
| |
builds.
llvm-svn: 61094
|
| |
|
|
|
|
| |
different offsets within the same stack slot.
llvm-svn: 61093
|
| |
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 61090
|
| |
|
|
|
|
| |
parameter type in preamble
llvm-svn: 61088
|
| |
|
|
| |
llvm-svn: 61087
|
| |
|
|
| |
llvm-svn: 61086
|
| |
|
|
|
|
|
| |
which source/line a certain BB/instruction comes from, original variable names,
and original (unmangled) C++ name of functions.
llvm-svn: 61085
|
| |
|
|
|
|
|
| |
instruction or BasicBlock, and to search for DbgDeclareInst corresponding to a
variable.
llvm-svn: 61084
|
| |
|
|
| |
llvm-svn: 61083
|
| |
|
|
|
|
| |
and support for non-unit strides with signed exit conditions.
llvm-svn: 61082
|
| |
|
|
| |
llvm-svn: 61081
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 61078
|
| |
|
|
|
|
|
| |
one of its aliases defined. This is conservative, but tricky subreg
corner cases are outside the primary aim of this pass.
llvm-svn: 61077
|
| |
|
|
|
|
|
| |
especially in the case of addresses computed from loop induction
variables.
llvm-svn: 61075
|
| |
|
|
|
|
|
| |
latency computation code that is no longer needed with the
new method for handling latencies.
llvm-svn: 61074
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
| |
* 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
|
| |
|
|
|
|
|
| |
* Converted absolute links to llvm.org/docs to relative links
* Fixed spelling and s/;/:/, as needed
llvm-svn: 61071
|
| |
|
|
|
|
| |
instruction itinerary data to back-schedule loads.
llvm-svn: 61070
|
| |
|
|
| |
llvm-svn: 61069
|