2 * This file is part of libFirm.
3 * Copyright (C) 2012 University of Karlsruhe.
8 * @brief declarations for arm emitter
9 * @author Oliver Richter, Tobias Gneis
11 #ifndef FIRM_BE_ARM_ARM_EMITTER_H
12 #define FIRM_BE_ARM_ARM_EMITTER_H
14 #include "firm_types.h"
21 #include "bearch_arm_t.h"
24 * emit assembler instructions with format string. Automatically indents
25 * instructions and adds debug comments at the end (in verbose-asm mode).
28 * fmt parameter output
29 * ---- ---------------------- ---------------------------------------------
31 * %r const arch_register_t* register
32 * %Sx <node> source register x
33 * %Dx <node> destination register x
34 * %O <node> shifter operand
35 * %I <node> symconst immediate
36 * %o <node> load/store offset
37 * %C const sym_or_tv_t* constant
38 * %t const ir_node* controlflow target
39 * %m ir_mode* fpa mode postfix
40 * %s const char* string
41 * %u unsigned int unsigned int
42 * %d signed int signed int
43 * %X signed int signed int (hexadecimal)
45 void arm_emitf(const ir_node *node, const char *format, ...);
47 void arm_gen_routine(ir_graph *irg);
49 void arm_init_emitter(void);