- Dec 18, 2008
-
-
Dan Gohman authored
subreg instructions. llvm-svn: 61220
-
Dan Gohman authored
that of INSERT_SUBREG and SUBREG_TO_REG. llvm-svn: 61218
-
Dan Gohman authored
llvm-svn: 61217
-
Dan Gohman authored
llvm-svn: 61216
-
Dan Gohman authored
llvm-svn: 61213
-
Mon P Wang authored
llvm-svn: 61209
-
Dan Gohman authored
llvm-svn: 61184
-
Dan Gohman authored
folding's tail merging doesn't currently preserve liveness information which post-RA scheduling requires. llvm-svn: 61183
-
Owen Anderson authored
llvm-svn: 61182
-
- Dec 17, 2008
-
-
Owen Anderson authored
llvm-svn: 61159
-
Owen Anderson authored
llvm-svn: 61158
-
Mon P Wang authored
llvm-svn: 61129
-
Dan Gohman authored
temporary workaround for an obscure bug. When node cloning is used, it is possible that more SUnits will be created, and if the SUnits std::vector has to reallocate, it will invalidate all the graph edges. llvm-svn: 61122
-
Dan Gohman authored
Depth and Height members directly, as they may not be current. llvm-svn: 61121
-
Eli Friedman authored
DAGTypeLegalizer::ExpandShiftWithKnownAmountBit. In terms of restoring the optimization, the best fix here isn't obvious... any ideas? llvm-svn: 61119
-
- Dec 16, 2008
-
-
Dale Johannesen authored
are there under ADD, this one was missing. llvm-svn: 61107
-
Owen Anderson authored
Add code to renumber split intervals into new vregs. This is disabled for now until I finish working out some iterator invalidation issues. llvm-svn: 61104
-
Dan Gohman authored
position in the critical path during the main instruction walk. This eliminates the need for the CritialAntiDep DenseMap. llvm-svn: 61096
-
Dan Gohman authored
different offsets within the same stack slot. llvm-svn: 61093
-
Evan Cheng authored
We have decided not to support inline asm where an output operand with a 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
-
Dan Gohman authored
llvm-svn: 61078
-
Dan Gohman authored
one of its aliases defined. This is conservative, but tricky subreg corner cases are outside the primary aim of this pass. llvm-svn: 61077
-
Dan Gohman authored
especially in the case of addresses computed from loop induction variables. llvm-svn: 61075
-
Dan Gohman authored
latency computation code that is no longer needed with the new method for handling latencies. llvm-svn: 61074
-
Dan Gohman authored
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
-
Dan Gohman authored
instruction itinerary data to back-schedule loads. llvm-svn: 61070
-
Dan Gohman authored
llvm-svn: 61067
-
Dan Gohman authored
currently used by anything. llvm-svn: 61066
-
Dan Gohman authored
llvm-svn: 61065
-
- Dec 15, 2008
-
-
Mon P Wang authored
llvm-svn: 61050
-
Dan Gohman authored
llvm-svn: 61036
-
Mon P Wang authored
and insert vector element. Modified extract vector element to extend the result to match the expected promoted type. llvm-svn: 61029
-
- Dec 14, 2008
-
-
Duncan Sands authored
target constants are allowed to have an illegal type. llvm-svn: 61006
-
Bill Wendling authored
Running /Users/void/llvm/llvm.src/test/CodeGen/Generic/dg.exp ... FAIL: /Users/void/llvm/llvm.src/test/CodeGen/Generic/asm-large-immediate.ll Failed with exit(1) at line 1 while running: llvm-as < /Users/void/llvm/llvm.src/test/CodeGen/Generic/asm-large-immediate.ll | llc | /usr/bin/grep 68719476738 Assertion failed: ((TypesNeedLegalizing || getTypeAction(VT) == Legal) && "Illegal type introduced after type legalization?"), function HandleOp, file /Users/void/llvm/llvm.src/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp, line 493. 0 llc 0x0085392e char const* std::find<char const*, char>(char const*, char const*, char const&) + 98 1 llc 0x00853e63 llvm::sys::PrintStackTraceOnErrorSignal() + 593 2 libSystem.B.dylib 0x96cac09b _sigtramp + 43 3 libSystem.B.dylib 0xffffffff _sigtramp + 1765097359 4 libSystem.B.dylib 0x96d24ec2 raise + 26 5 libSystem.B.dylib 0x96d3447f abort + 73 6 libSystem.B.dylib 0x96d26063 __assert_rtn + 101 7 llc 0x004f9018 llvm::cast_retty<llvm::SubprogramDesc, llvm::DebugInfoDesc*>::ret_type llvm::cast<llvm::Sub ... llvm-svn: 61001
-
- Dec 13, 2008
-
-
Duncan Sands authored
types into the DAG if they were not already there. Check this with an assertion. llvm-svn: 60997
-
Mon P Wang authored
llvm-svn: 60975
-
Mon P Wang authored
llvm-svn: 60974
-
Duncan Sands authored
width register load followed by a truncating store for the copy, since the load will not place the value in the lower bits. Probably partial loads/stores can never happen here, but fix it anyway. llvm-svn: 60972
-
- Dec 12, 2008
-
-
Devang Patel authored
llvm-svn: 60965
-
Duncan Sands authored
use of illegal integer types: instead, use a stack slot and copying via integer registers. The existing code is still used if the bitconvert is to a legal integer type. This fires on the PPC testcases 2007-09-08-unaligned.ll and vec_misaligned.ll. It looks like equivalent code is generated with these changes, just permuted, but it's hard to tell. With these changes, nothing in LegalizeDAG produces illegal integer types anymore. This is a prerequisite for removing the LegalizeDAG type legalization code. While there I noticed that the existing code doesn't handle trunc store of f64 to f32: it turns this into an i64 store, which represents a 4 byte stack smash. I added a FIXME about this. Hopefully someone more motivated than I am will take care of it. llvm-svn: 60964
-