#include "irprintf.h"
#include "xmalloc.h"
-#include "../bearch.h"
+#include "bearch.h"
#include "arm_nodes_attr.h"
#include "arm_new_nodes.h"
#include "arm_optimize.h"
-#include "../beabi.h"
+#include "beabi.h"
#include "bearch_arm_t.h"
const char *arm_get_fpa_imm_name(long imm_value)
attr->tv = tv;
}
-pn_Cmp get_arm_CondJmp_pnc(const ir_node *node)
+ir_relation get_arm_CondJmp_relation(const ir_node *node)
{
const arm_CondJmp_attr_t *attr = get_arm_CondJmp_attr_const(node);
- return attr->pnc;
+ return attr->relation;
}
-void set_arm_CondJmp_pnc(ir_node *node, pn_Cmp pnc)
+void set_arm_CondJmp_relation(ir_node *node, ir_relation relation)
{
arm_CondJmp_attr_t *attr = get_arm_CondJmp_attr(node);
- attr->pnc = pnc;
+ attr->relation = relation;
}
int get_arm_SwitchJmp_n_projs(const ir_node *node)
backend_info_t *info;
(void) execution_units;
- arch_irn_set_flags(node, flags);
- arch_set_in_register_reqs(node, in_reqs);
+ arch_set_irn_flags(node, flags);
+ arch_set_irn_register_reqs_in(node, in_reqs);
attr->is_load_store = false;
info = be_get_info(node);
return (const arm_cmp_attr_t*) get_irn_generic_attr_const(node);
}
-static int cmp_attr_arm_load_store(ir_node *a, ir_node *b)
+static int cmp_attr_arm_load_store(const ir_node *a, const ir_node *b)
{
const arm_load_store_attr_t *attr_a;
const arm_load_store_attr_t *attr_b;
if (cmp_attr_arm(a, b))
return 1;
- attr_a = get_arm_load_store_attr(a);
- attr_b = get_arm_load_store_attr(b);
+ attr_a = get_arm_load_store_attr_const(a);
+ attr_b = get_arm_load_store_attr_const(b);
if (attr_a->entity != attr_b->entity
|| attr_a->entity_sign != attr_b->entity_sign
|| attr_a->offset != attr_b->offset)
return 0;
}
-static int cmp_attr_arm_shifter_operand(ir_node *a, ir_node *b)
+static int cmp_attr_arm_shifter_operand(const ir_node *a, const ir_node *b)
{
const arm_shifter_operand_t *attr_a;
const arm_shifter_operand_t *attr_b;
if (cmp_attr_arm(a, b))
return 1;
- attr_a = get_arm_shifter_operand_attr(a);
- attr_b = get_arm_shifter_operand_attr(b);
+ attr_a = get_arm_shifter_operand_attr_const(a);
+ attr_b = get_arm_shifter_operand_attr_const(b);
if (attr_a->shift_modifier != attr_b->shift_modifier
|| attr_a->immediate_value != attr_b->immediate_value
|| attr_a->shift_immediate != attr_b->shift_immediate)
return 0;
}
-static int cmp_attr_arm_cmp(ir_node *a, ir_node *b)
+static int cmp_attr_arm_cmp(const ir_node *a, const ir_node *b)
{
const arm_cmp_attr_t *attr_a;
const arm_cmp_attr_t *attr_b;
if (cmp_attr_arm(a, b))
return 1;
- attr_a = get_arm_cmp_attr(a);
- attr_b = get_arm_cmp_attr(b);
+ attr_a = get_arm_cmp_attr_const(a);
+ attr_b = get_arm_cmp_attr_const(b);
if (attr_a->ins_permuted != attr_b->ins_permuted
|| attr_a->is_unsigned != attr_b->is_unsigned)
return 1;
return 0;
}
-static int cmp_attr_arm_farith(ir_node *a, ir_node *b)
+static int cmp_attr_arm_farith(const ir_node *a, const ir_node *b)
{
const arm_farith_attr_t *attr_a;
const arm_farith_attr_t *attr_b;
memcpy(attr_new, attr_old, get_op_attr_size(get_irn_op(old_node)));
/* copy out flags */
+ new_info->flags = old_info->flags;
new_info->out_infos =
DUP_ARR_D(reg_out_info_t, obst, old_info->out_infos);
new_info->in_reqs = old_info->in_reqs;