-static void mips_set_frame_entity(const void *self, ir_node *irn, ir_entity *ent) {
- mips_attr_t *attr = get_mips_attr(irn);
- assert(is_mips_load_r(irn) || is_mips_store_r(irn));
- attr->stack_entity = ent;
+static void mips_set_frame_entity(const void *self, ir_node *node,
+ ir_entity *entity)
+{
+ mips_load_store_attr_t *attr;
+ (void) self;
+
+ if(!is_mips_irn(node)) {
+ panic("trying to set frame entity on non load/store node %+F\n", node);
+ }
+ if(!mips_is_Load(node) && !mips_is_Store(node)) {
+ panic("trying to set frame entity on non load/store node %+F\n", node);
+ }
+
+ attr = get_irn_generic_attr(node);
+ attr->stack_entity = entity;