1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00
llvm-mirror/test/CodeGen
Jakob Stoklund Olesen 4f5d1d7004 Allow a register to be redefined multiple times in a basic block.
LiveVariableAnalysis was a bit picky about a register only being redefined once,
but that really isn't necessary.

Here is an example of chained INSERT_SUBREGs that we can handle now:

68      %reg1040<def> = INSERT_SUBREG %reg1040, %reg1028<kill>, 14
                register: %reg1040 +[70,134:0)
76      %reg1040<def> = INSERT_SUBREG %reg1040, %reg1029<kill>, 13
                register: %reg1040 replace range with [70,78:1) RESULT: %reg1040,0.000000e+00 = [70,78:1)[78,134:0)  0@78-(134) 1@70-(78)
84      %reg1040<def> = INSERT_SUBREG %reg1040, %reg1030<kill>, 12
                register: %reg1040 replace range with [78,86:2) RESULT: %reg1040,0.000000e+00 = [70,78:1)[78,86:2)[86,134:0)  0@86-(134) 1@70-(78) 2@78-(86)
92      %reg1040<def> = INSERT_SUBREG %reg1040, %reg1031<kill>, 11
                register: %reg1040 replace range with [86,94:3) RESULT: %reg1040,0.000000e+00 = [70,78:1)[78,86:2)[86,94:3)[94,134:0)  0@94-(134) 1@70-(78) 2@78-(86) 3@86-(94)

rdar://problem/8096390

llvm-svn: 106152
2010-06-16 21:29:40 +00:00
..
Alpha Split big test into multiple directories to cater to 2010-04-07 20:43:35 +00:00
ARM Remove the local register allocator. 2010-06-15 21:58:33 +00:00
Blackfin Start function numbering at 0. 2010-04-17 16:29:15 +00:00
CBackend
CellSPU Fix SPU to cope with vector insertelement to an undef position. 2010-06-09 09:58:17 +00:00
CPP
Generic modify so the test doesn't drop an output file in the test source directory. 2010-06-16 21:07:06 +00:00
MBlaze Split big test into multiple directories to cater to 2010-04-07 20:43:35 +00:00
Mips Start function numbering at 0. 2010-04-17 16:29:15 +00:00
MSP430 Insert ANY_EXTEND node instead of invalid truncate during DAG Combining (X & 1), 2010-05-01 12:52:34 +00:00
PIC16 Remove XFAIL for vg_leak as the leaks are fixed by 100601. 2010-04-07 07:06:48 +00:00
PowerPC Remove the local register allocator. 2010-06-15 21:58:33 +00:00
SPARC Split big test into multiple directories to cater to 2010-04-07 20:43:35 +00:00
SystemZ SystemZ really does mean "has calls" and not just "adjusts stack." Go ahead and 2010-05-14 22:17:42 +00:00
Thumb Remove the local register allocator. 2010-06-15 21:58:33 +00:00
Thumb2 Allow a register to be redefined multiple times in a basic block. 2010-06-16 21:29:40 +00:00
X86 Create a more targeted fix for not sinking instructions into a range where it 2010-06-15 23:46:31 +00:00
XCore Start function numbering at 0. 2010-04-17 16:29:15 +00:00