- Dec 22, 2008
-
-
Dan Gohman authored
reallocations. We don't do cloning on MachineInstr schedule DAGs, but this is a worthwhile sanity check regardless. llvm-svn: 61343
-
Dan Gohman authored
llvm-svn: 61342
-
Dan Gohman authored
comment for the ScheduleDAGSDNodes class. llvm-svn: 61341
-
Dan Gohman authored
llvm-svn: 61338
-
- Dec 21, 2008
-
-
Mikhail Glushenkov authored
llvm-svn: 61307
-
Nick Lewycky authored
llvm-svn: 61297
-
- Dec 20, 2008
-
-
Dan Gohman authored
constant shift count that doesn't fit in the shift instruction's immediate field. This fixes PR3242. llvm-svn: 61281
-
Dan Gohman authored
llvm-svn: 61280
-
Nick Lewycky authored
our optz'n will apply to it, then build the replacement vector only if needed. llvm-svn: 61279
-
Dan Gohman authored
can be static member functions. llvm-svn: 61278
-
Dan Gohman authored
llvm-svn: 61277
-
Dan Gohman authored
and setDepthDirty(), respectively. This fixes PR3241. llvm-svn: 61276
-
- Dec 19, 2008
-
-
Bill Wendling authored
llvm-svn: 61265
-
Bill Wendling authored
llvm-svn: 61264
-
Dan Gohman authored
warnings on compilers that warn about such things. llvm-svn: 61263
-
Evan Cheng authored
Fix PR3149. If an early clobber def is a physical register and it is tied to an input operand, it effectively extends the live range of the physical register. Currently we do not have a good way to represent this. 172 %ECX<def> = MOV32rr %reg1039<kill> 180 INLINEASM <es:subl $5,$1 sbbl $3,$0>, 10, %EAX<def>, 14, %ECX<earlyclobber,def>, 9, %EAX<kill>, 36, <fi#0>, 1, %reg0, 0, 9, %ECX<kill>, 36, <fi#1>, 1, %reg0, 0 188 %EAX<def> = MOV32rr %EAX<kill> 196 %ECX<def> = MOV32rr %ECX<kill> 204 %ECX<def> = MOV32rr %ECX<kill> 212 %EAX<def> = MOV32rr %EAX<kill> 220 %EAX<def> = MOV32rr %EAX 228 %reg1039<def> = MOV32rr %ECX<kill> The early clobber operand ties ECX input to the ECX def. The live interval of ECX is represented as this: %reg20,inf = [46,47:1)[174,230:0) 0@174-(230) 1@46-(47) The right way to represent this is something like %reg20,inf = [46,47:2)[174,182:1)[181:230:0) 0@174-(182) 1@181-230 @2@46-(47) Of course that won't work since that means overlapping live ranges defined by two val#. The workaround for now is to add a bit to val# which says the val# is redefined by a early clobber def somewhere. This prevents the move at 228 from being optimized away by SimpleRegisterCoalescing::AdjustCopiesBackFrom. llvm-svn: 61259
-
John Criswell authored
version number assertions. llvm-svn: 61257
-
Bill Wendling authored
llvm-svn: 61254
-
Gordon Henriksen authored
llvm-svn: 61253
-
Gordon Henriksen authored
This operation can be used to build dyn_cast, isa, and cast. llvm-svn: 61252
-
Chris Lattner authored
Patch by Lukasz Janyst! llvm-svn: 61251
-
Dan Gohman authored
that have i32 immediates so that they get selected first. This currently only matters in the JIT, as assemblers will automatically use the smallest encoding. llvm-svn: 61250
-
Dan Gohman authored
reduces the amount of code slightly when assertions are enabled. llvm-svn: 61249
-
Evan Cheng authored
- CodeGenPrepare does not split loop back edges but it only knows about back edges of single block loops. It now does a DFS walk to find loop back edges. - Use SplitBlockPredecessors to factor out common predecessors of the critical edge destination. This is disabled for now due to some regressions. llvm-svn: 61248
-
Chris Lattner authored
llvm-svn: 61244
-
Rafael Espindola authored
The EH_frame and .eh symbols are now private, except for darwin9 and earlier. The patch also fixes the definition of PrivateGlobalPrefix on pcc linux. llvm-svn: 61242
-
Nick Lewycky authored
llvm-svn: 61241
-
Nick Lewycky authored
llvm-svn: 61240
-
Nick Lewycky authored
The problematic part of this patch is that we were out of attribute bits, requiring some fancy bit hacking to make it fit (by shrinking alignment) without breaking existing users or the file format. This change will require users to rebuild llvm-gcc to match llvm. llvm-svn: 61239
-
Bill Wendling authored
llvm-svn: 61238
-
Dan Gohman authored
data from a previous block. llvm-svn: 61237
-
Dan Gohman authored
one instruction. llvm-svn: 61236
-
Dan Gohman authored
argument. Nothing was using it, and it set the MBB member without calling enterBasicBlock, which was problematic. llvm-svn: 61234
-
Mon P Wang authored
of incorrectly generating pmuldq llvm-svn: 61228
-
- Dec 18, 2008
-
-
Bill Wendling authored
llvm-svn: 61222
-
Dan Gohman authored
subreg instructions. llvm-svn: 61220
-
Bill Wendling authored
llvm-svn: 61219
-
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
-