- Mar 19, 2007
-
-
Evan Cheng authored
llvm-svn: 35160
-
Evan Cheng authored
llvm-svn: 35159
-
Evan Cheng authored
It means the instruction can be easily re-materialized at any point. e.g. constant generation, load from constantpool. llvm-svn: 35158
-
Zhou Sheng authored
llvm-svn: 35156
-
Evan Cheng authored
llvm-svn: 35153
-
Chris Lattner authored
llvm-svn: 35152
-
Chris Lattner authored
llvm-svn: 35151
-
Chris Lattner authored
implements Transforms/ScalarRepl/memset-aggregate-byte-leader.ll llvm-svn: 35150
-
Chris Lattner authored
llvm-svn: 35149
-
Chris Lattner authored
llvm-svn: 35148
-
Chris Lattner authored
llvm-svn: 35147
-
- Mar 18, 2007
-
-
Nick Lewycky authored
llvm-svn: 35146
-
Chris Lattner authored
Rearrange some code to simplify it now that shifts are binops llvm-svn: 35145
-
Chris Lattner authored
llvm-svn: 35144
-
Chris Lattner authored
llvm-svn: 35143
-
Nick Lewycky authored
entry: icmp ugt i32 %x, 4 ; <i1>:0 [#uses=1] br i1 %0, label %cond_true, label %cond_false cond_true: ; preds = %entry %tmp1 = tail call i32 (...)* @bar( i32 12 ) ; <i32> [#uses=0] ret void cond_false: ; preds = %entry switch i32 %x, label %cond_true15 [ i32 4, label %cond_true3 i32 3, label %cond_true7 i32 2, label %cond_true11 i32 0, label %cond_false17 ] ... llvm-svn: 35142
-
Evan Cheng authored
- Use distance to closest use to determine whether to abort coalescing. llvm-svn: 35141
-
Evan Cheng authored
llvm-svn: 35140
-
Evan Cheng authored
llvm-svn: 35139
-
Nick Lewycky authored
Add some more micro-optimizations: x * 0 = 0, a - x = a --> x = 0. llvm-svn: 35138
-
- Mar 17, 2007
-
-
Anton Korobeynikov authored
llvm-svn: 35137
-
Evan Cheng authored
llvm-svn: 35135
-
Evan Cheng authored
to be really bad. Once they are joined they are not broken apart. Also, physical intervals cannot be spilled! Added a heuristic as a workaround for this. Be careful coalescing with a physical register if the virtual register uses are "far". Check if there are uses in the same loop as the source (copy instruction). Check if it is in the loop preheader, etc. llvm-svn: 35134
-
Evan Cheng authored
llvm-svn: 35133
-
Evan Cheng authored
in that BB. llvm-svn: 35132
-
Evan Cheng authored
llvm-svn: 35131
-
Devang Patel authored
llvm-svn: 35130
-
Devang Patel authored
llvm-svn: 35129
-
- Mar 16, 2007
-
-
Lauro Ramos Venancio authored
Fix MultiSource/Applications/aha test. llvm-svn: 35128
-
Evan Cheng authored
llvm-svn: 35127
-
Evan Cheng authored
llvm-svn: 35126
-
Bill Wendling authored
llvm-svn: 35125
-
Evan Cheng authored
computation used as GEP indexes and if the expression can be folded into target addressing mode of GEP load / store use types. llvm-svn: 35123
-
Evan Cheng authored
llvm-svn: 35122
-
Evan Cheng authored
folded into target addressing mode for the given type. llvm-svn: 35121
-
Evan Cheng authored
llvm-svn: 35120
-
Nick Lewycky authored
Add new micro-optimizations. Add icmp predicate snuggling. Given %x ULT 4, "icmp ugt %x, 2" becomes "icmp eq %x, 3". This doesn't apply in any non-trivial cases yet due to missing support for NE values in ValueRanges. llvm-svn: 35119
-
- Mar 15, 2007
-
-
Bill Wendling authored
llvm-svn: 35118
-
Evan Cheng authored
llvm-svn: 35117
-
Reid Spencer authored
llvm-svn: 35116
-