summaryrefslogtreecommitdiffhomepage
path: root/ir/be/beasm.h
diff options
context:
space:
mode:
authorChristoph Mallon <mallon@cs.uni-saarland.de>2015-05-29 17:03:51 +0200
committerChristoph Mallon <mallon@cs.uni-saarland.de>2015-06-05 17:40:47 +0200
commit1f3c079d5e5d586556b52f8c44ad02cf12045617 (patch)
tree11fbe80b11cbaf1d144d57c6a915eb54a6557e73 /ir/be/beasm.h
parent64a748df3508ba10300669157c8eb2a8778a0faf (diff)
be: Factorise the code to count the number of asm operands.
Diffstat (limited to 'ir/be/beasm.h')
-rw-r--r--ir/be/beasm.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/ir/be/beasm.h b/ir/be/beasm.h
index f74775f..1c93ac1 100644
--- a/ir/be/beasm.h
+++ b/ir/be/beasm.h
@@ -32,6 +32,9 @@ typedef void parse_constraint_letter_func_t(void const *env, be_asm_constraint_t
void be_parse_asm_constraints_internal(be_asm_constraint_t *constraint, ident *constraint_text, bool is_output, parse_constraint_letter_func_t *parse_constraint_letter, void const *env);
+/* Determine number of operands. */
+unsigned be_count_asm_operands(ir_node const *node);
+
ir_node *be_make_asm(ir_node const *node, ir_node **in, arch_register_req_t const **in_reqs, arch_register_req_t const **out_reqs, void *operands);
typedef void be_emit_asm_operand_func(ir_node const *asmn, char modifier, unsigned pos);