summaryrefslogtreecommitdiffhomepage
path: root/ir/be/beasm.h
diff options
context:
space:
mode:
authorChristoph Mallon <christoph.mallon@gmx.de>2016-12-29 18:47:14 +0100
committerChristoph Mallon <christoph.mallon@gmx.de>2017-01-02 13:33:53 +0100
commit322b94204215bd737557e069882c173840c8227e (patch)
tree30ff4c47f171b2d846b10b8e539f667342575a17 /ir/be/beasm.h
parentf7a69c9ebc96d7852e2254db65c7ea25f6f15d7a (diff)
be: Make the kind of asm constraints backend-independent.
Diffstat (limited to 'ir/be/beasm.h')
-rw-r--r--ir/be/beasm.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/ir/be/beasm.h b/ir/be/beasm.h
index bc03c05..52d7a19 100644
--- a/ir/be/beasm.h
+++ b/ir/be/beasm.h
@@ -16,6 +16,14 @@
#include "firm_types.h"
#include "obstack.h"
+typedef enum be_asm_operand_kind_t {
+ BE_ASM_OPERAND_INVALID,
+ BE_ASM_OPERAND_INPUT_VALUE,
+ BE_ASM_OPERAND_OUTPUT_VALUE,
+ BE_ASM_OPERAND_IMMEDIATE,
+ BE_ASM_OPERAND_MEMORY,
+} be_asm_operand_kind_t;
+
/**
* An assembler constraint.
*/
@@ -43,4 +51,6 @@ typedef void be_emit_asm_operand_func(ir_node const *asmn, char modifier, unsign
void be_emit_asm(ir_node const *asmn, be_emit_asm_operand_func *emit_asm_operand);
+char const *be_get_constraint_name(be_asm_operand_kind_t kind);
+
#endif