X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2FTEMPLATE%2FTEMPLATE_transform.c;h=cf47faff21181c3d609ce9506352da6382d9d688;hb=32bb9cd68eb4e4a550475b5ab516fd1b8de22456;hp=f88973dbfed260554c0f18d6c8fa672ca8f5754a;hpb=ad9464a5db0b98cb926aae609abe84db70b74291;p=libfirm diff --git a/ir/be/TEMPLATE/TEMPLATE_transform.c b/ir/be/TEMPLATE/TEMPLATE_transform.c index f88973dbf..cf47faff2 100644 --- a/ir/be/TEMPLATE/TEMPLATE_transform.c +++ b/ir/be/TEMPLATE/TEMPLATE_transform.c @@ -77,8 +77,10 @@ static ir_node *gen_Eor(ir_node *node) return transform_binop(node, new_bd_TEMPLATE_Xor); } -static ir_node *gen_Quot(ir_node *node) +static ir_node *gen_Div(ir_node *node) { + ir_mode *mode = get_Div_resmode(node); + assert(mode_is_float(mode)); return transform_binop(node, new_bd_TEMPLATE_fDiv); } @@ -153,17 +155,14 @@ static ir_node *gen_Not(ir_node *node) static ir_node *gen_Const(ir_node *node) { - ir_node *block = get_nodes_block(node); - ir_node *new_block = be_transform_node(block); - dbg_info *dbgi = get_irn_dbg_info(node); - tarval *value = get_Const_tarval(node); - ir_node *result; + ir_node *block = get_nodes_block(node); + ir_node *new_block = be_transform_node(block); + dbg_info *dbgi = get_irn_dbg_info(node); + ir_tarval *value = get_Const_tarval(node); + ir_node *result; result = new_bd_TEMPLATE_Const(dbgi, new_block, value); - /* make sure the node does not float above the barrier into the prologue */ - be_dep_on_frame(result); - return result; } @@ -254,6 +253,7 @@ static void TEMPLATE_register_transformers(void) be_set_transform_function(op_Add, gen_Add); be_set_transform_function(op_And, gen_And); be_set_transform_function(op_Const, gen_Const); + be_set_transform_function(op_Div, gen_Div); be_set_transform_function(op_Eor, gen_Eor); be_set_transform_function(op_Jmp, gen_Jmp); be_set_transform_function(op_Load, gen_Load); @@ -262,7 +262,6 @@ static void TEMPLATE_register_transformers(void) be_set_transform_function(op_Not, gen_Not); be_set_transform_function(op_Or, gen_Or); be_set_transform_function(op_Phi, gen_Phi); - be_set_transform_function(op_Quot, gen_Quot); be_set_transform_function(op_Shl, gen_Shl); be_set_transform_function(op_Shr, gen_Shr); be_set_transform_function(op_Store, gen_Store);