- May 15, 2010
-
-
Chandler Carruth authored
a condition's grouping. Every other use of Allocatable.test(Hint) groups it the same way as it is indented, so move the parentheses to agree with that grouping. llvm-svn: 103869
-
Evan Cheng authored
llvm-svn: 103868
-
Jakob Stoklund Olesen authored
When working top-down in a basic block, substituting physregs for virtregs, the use-def chains are kept up to date. That means we can recognize a virtreg kill by the use-def chain becoming empty. This makes the fast allocator independent of incoming kill flags. llvm-svn: 103866
-
Nick Lewycky authored
inliner did in r103653. Why does the always inliner even bother with cost estimates anyways? llvm-svn: 103858
-
Nick Lewycky authored
llvm-svn: 103857
-
Evan Cheng authored
llvm-svn: 103855
-
Evan Cheng authored
allow target to override it in order to map register classes to illegal but synthesizable types. e.g. v4i64, v8i64 for ARM / NEON. llvm-svn: 103854
-
Evan Cheng authored
llvm-svn: 103851
-
Evan Cheng authored
llvm-svn: 103850
-
Evan Cheng authored
instructions. e.g. %reg1026<def> = VLDMQ %reg1025<kill>, 260, pred:14, pred:%reg0 %reg1027<def> = EXTRACT_SUBREG %reg1026, 6 %reg1028<def> = EXTRACT_SUBREG %reg1026<kill>, 5 ... %reg1029<def> = REG_SEQUENCE %reg1028<kill>, 5, %reg1027<kill>, 6, %reg1028, 7, %reg1027, 8, %reg1028, 9, %reg1027, 10, %reg1030<kill>, 11, %reg1032<kill>, 12 After REG_SEQUENCE is eliminated, we are left with: %reg1026<def> = VLDMQ %reg1025<kill>, 260, pred:14, pred:%reg0 %reg1029:6<def> = EXTRACT_SUBREG %reg1026, 6 %reg1029:5<def> = EXTRACT_SUBREG %reg1026<kill>, 5 The regular coalescer will not be able to coalesce reg1026 and reg1029 because it doesn't know how to combine sub-register indices 5 and 6. Now 2-address pass will consult the target whether sub-registers 5 and 6 of reg1026 can be combined to into a larger sub-register (or combined to be reg1026 itself as is the case here). If it is possible, it will be able to replace references of reg1026 with reg1029 + the larger sub-register index. llvm-svn: 103835
-
Evan Cheng authored
llvm-svn: 103833
-
Dan Gohman authored
setting kill flags. llvm-svn: 103832
-
Jakob Stoklund Olesen authored
llvm-svn: 103831
-
Jakob Stoklund Olesen authored
llvm-svn: 103830
-
Bill Wendling authored
replace the check with the appropriate predicate. Modify the testcase to reflect the correct code. (It should be saving callee-saved registers on the stack allocated by the calling fuction.) llvm-svn: 103829
-
Jakob Stoklund Olesen authored
llvm-svn: 103828
-
Dan Gohman authored
llvm-svn: 103827
-
Dan Gohman authored
llvm-svn: 103826
-
- May 14, 2010
-
-
Bill Wendling authored
of "has calls". That's probably wrong, but it needs further investigation. Revert to the original behavior until this is settled. llvm-svn: 103824
-
Jakob Stoklund Olesen authored
llvm-svn: 103823
-
Devang Patel authored
llvm-svn: 103822
-
Jakob Stoklund Olesen authored
llvm-svn: 103821
-
Jakob Stoklund Olesen authored
llvm-svn: 103820
-
Bill Wendling authored
stack. llvm-svn: 103813
-
Bill Wendling authored
llvm-svn: 103808
-
Jim Grosbach authored
llvm-svn: 103807
-
Jim Grosbach authored
llvm-svn: 103806
-
Jim Grosbach authored
while debugging what's mishandled about them in the post-RA pass. llvm-svn: 103805
-
Bill Wendling authored
llvm-svn: 103804
-
Bill Wendling authored
the variable actually tracks. N.B., several back-ends are using "HasCalls" as being synonymous for something that adjusts the stack. This isn't 100% correct and should be looked into. llvm-svn: 103802
-
Dan Gohman authored
used more than once. If ISel had put a kill flag on one of them, it's not valid to transfer the kill flag to each new instance. llvm-svn: 103799
-
Devang Patel authored
llvm-svn: 103798
-
Jakob Stoklund Olesen authored
- Kill is implicit when use and def registers are identical. - Only virtual registers can differ. Add a -verify-fast-regalloc to run the verifier before the fast allocator. llvm-svn: 103797
-
Kevin Enderby authored
argument, like "int $4", to not get an Assertion error. llvm-svn: 103791
-
Evan Cheng authored
llvm-svn: 103790
-
Daniel Dunbar authored
used to replace a normal relocation, not a reference to a GOT entry. llvm-svn: 103789
-
Jakob Stoklund Olesen authored
This adds extra security against using clobbered physregs, and it adds kill markers to physreg uses. llvm-svn: 103784
-
Dan Gohman authored
llvm-svn: 103778
-
Dan Gohman authored
control barriers, not memory ordering barriers. llvm-svn: 103777
-
Dan Gohman authored
llvm-svn: 103776
-