add an get_irg_idx
[libfirm] / ir / ir / irnode.c
index 40e73f2..e81e212 100644 (file)
@@ -1120,6 +1120,7 @@ int (is_Const_all_one)(const ir_node *node) {
 ir_type *
 get_Const_type(ir_node *node) {
        assert(node->op == op_Const);
+       node->attr.con.tp = skip_tid(node->attr.con.tp);
        return node->attr.con.tp;
 }
 
@@ -1503,7 +1504,7 @@ BINOP(Cmp)
 UNOP(Conv)
 UNOP(Cast)
 
-int get_Conv_strict(ir_node *node) {
+int get_Conv_strict(const ir_node *node) {
        assert(node->op == op_Conv);
        return node->attr.conv.strict;
 }
@@ -1516,6 +1517,7 @@ void set_Conv_strict(ir_node *node, int strict_flag) {
 ir_type *
 get_Cast_type(ir_node *node) {
        assert(node->op == op_Cast);
+       node->attr.cast.totype = skip_tid(node->attr.cast.totype);
        return node->attr.cast.totype;
 }
 
@@ -2710,6 +2712,11 @@ int
        return _is_Conv(node);
 }
 
+int
+(is_strictConv)(const ir_node *node) {
+       return _is_strictConv(node);
+}
+
 int
 (is_Cast)(const ir_node *node) {
        return _is_Cast(node);