lower_mode_b: refactoring, make it more robust
authorMatthias Braun <matze@braunis.de>
Thu, 15 Sep 2011 07:51:40 +0000 (09:51 +0200)
committerMatthias Braun <matze@braunis.de>
Thu, 15 Sep 2011 08:27:42 +0000 (10:27 +0200)
commita00e3544975367a9437d32e4cb5ed502910c24ca
tree2c0872252cfbb21d8ff99d3832f30c4ecdac7718
parent799d89c9a3af71d26c257a1bf4b1ca029f1ff675
lower_mode_b: refactoring, make it more robust

- Make API private as it should only be called by backends
- Let ia32 backend create special ia32_Set nodes instead of relying
  on muxes which must not be touched anymore
- Does not create ConvB nodes anymore but instead produces the Cmp
  directly. (All backends did this anyway during code-selection so I was
  able to leave this case out code-selection)
- First collect nodes to lower, then lower them. This avoids robustness
  problems when transforming the graph while at the same time walking
  it.
include/libfirm/irgraph.h
include/libfirm/lowering.h
ir/be/ia32/bearch_ia32.c
ir/be/ia32/ia32_transform.c
ir/be/sparc/bearch_sparc.c
ir/be/sparc/sparc_transform.c
ir/ir/iropt.c
ir/ir/irverify.c
ir/lower/lower_mode_b.c