Commit 0a2cfa0e authored by Matthias Braun's avatar Matthias Braun
Browse files

fix wrong lea to add transformation

parent 906a0d83
...@@ -136,7 +136,7 @@ static void ia32_transform_lea_to_add(ir_node *irn, ia32_code_gen_t *cg) { ...@@ -136,7 +136,7 @@ static void ia32_transform_lea_to_add(ir_node *irn, ia32_code_gen_t *cg) {
am_flav = get_ia32_am_flavour(irn); am_flav = get_ia32_am_flavour(irn);
/* mustn't have a symconst */ /* mustn't have a symconst */
if (get_ia32_am_sc(irn)) if (get_ia32_am_sc(irn) != NULL || get_ia32_frame_ent(irn) != NULL)
return; return;
/* only some LEAs can be transformed to an Add */ /* only some LEAs can be transformed to an Add */
......
...@@ -105,6 +105,7 @@ $arch = "ia32"; ...@@ -105,6 +105,7 @@ $arch = "ia32";
# 4 - ignore (do not assign this register) # 4 - ignore (do not assign this register)
# 8 - emitter can choose an arbitrary register of this class # 8 - emitter can choose an arbitrary register of this class
# 16 - the register is a virtual one # 16 - the register is a virtual one
# 32 - register represents a state
# NOTE: Last entry of each class is the largest Firm-Mode a register can hold # NOTE: Last entry of each class is the largest Firm-Mode a register can hold
%reg_classes = ( %reg_classes = (
gp => [ gp => [
...@@ -158,8 +159,8 @@ $arch = "ia32"; ...@@ -158,8 +159,8 @@ $arch = "ia32";
{ mode => "mode_E" } { mode => "mode_E" }
], ],
fp_cw => [ # the floating point control word fp_cw => [ # the floating point control word
{ name => "fpcw", type => 0 }, { name => "fpcw", type => 32 },
{ mode => "mode_Hu" }, { mode => "mode_Hu" },
], ],
); # %reg_classes ); # %reg_classes
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment