{{node|nodeparameters}}
{% endfilter %})
{
- ir_node *res;
- {%- if node.arity == "dynamic" %}
- int i;
- {%- endif %}
{{node|irgassign}}
{{node|insdecl}}
- res = new_ir_node(
+ ir_node *res = new_ir_node(
{%- filter arguments %}
dbgi
irg
{{node|arity_and_ins}}
{% endfilter %});
{%- if node.arity == "dynamic" %}
- for (i = 0; i < arity; ++i) {
+ for (int i = 0; i < arity; ++i) {
add_irn_n(res, in[i]);
}
{%- endif %}
{{node|nodeparameters}}
{% endfilter %})
{
- ir_node *res;
- assert(get_irg_phase_state(current_ir_graph) == phase_building);
- res = new_rd_{{node.name}}(
+ assert(irg_is_constrained(current_ir_graph, IR_GRAPH_CONSTRAINT_CONSTRUCTION));
+ ir_node *res = new_rd_{{node.name}}(
{%- filter parameters %}
dbgi
{{node|curblock}}
irnode_h_template = env.from_string(
'''/* Warning: automatically generated code */
+{% for node in nodes %}
+#define is_{{node.name}}(node) is_{{node.name}}_(node)
+{%- endfor %}
+
{%- for node in nodes|isnot('custom_is') %}
static inline int is_{{node.name}}_(const ir_node *node)
{
- assert(node != NULL);
- return get_irn_op_(node) == op_{{node.name}};
+ return get_irn_op(node) == op_{{node.name}};
}
-{%- endfor -%}
-
-{% for node in nodes %}
-#define is_{{node.name}}(node) is_{{node.name}}_(node)
{%- endfor %}
-
''')
irnode_template = env.from_string(
{%- endif %}
{%- endfor %}
};
+
''')
irop_template = env.from_string(