Loop problems in native back ends, update to T3286 fix
authordias@cs.tufts.edu <unknown>
Thu, 5 Nov 2009 15:15:32 +0000 (15:15 +0000)
committerdias@cs.tufts.edu <unknown>
Thu, 5 Nov 2009 15:15:32 +0000 (15:15 +0000)
commitc55eee3add067dd0372ed8eede64b84791f7a9b9
tree82ab0d831a732587f86da0693bab0b5c70fa9de0
parentc6206fd81612e51e257a650390646421c7c1d1cb
Loop problems in native back ends, update to T3286 fix
The native back ends had difficulties with loops;
in particular the code for branch-chain elimination
could run in infinite loops or drop basic blocks.
The old codeGen didn't expose these problems.

Also, my fix for T3286 in the new codegen was getting
applied to too many (some wrong) cases; a better pattern
match fixed that.
compiler/codeGen/StgCmmExpr.hs
compiler/nativeGen/AsmCodeGen.lhs
compiler/nativeGen/X86/Instr.hs