becopyopt: Remove the unnecessary attribute name from struct copy_opt_t.
[libfirm] / ir / be / arm / arm_emitter.h
1 /*
2  * This file is part of libFirm.
3  * Copyright (C) 2012 University of Karlsruhe.
4  */
5
6 /**
7  * @file
8  * @brief   declarations for arm emitter
9  * @author  Oliver Richter, Tobias Gneis
10  */
11 #ifndef FIRM_BE_ARM_ARM_EMITTER_H
12 #define FIRM_BE_ARM_ARM_EMITTER_H
13
14 #include "firm_types.h"
15 #include "set.h"
16 #include "irargs_t.h"
17 #include "debug.h"
18
19 #include "bearch.h"
20
21 #include "bearch_arm_t.h"
22
23 /**
24  * emit assembler instructions with format string. Automatically indents
25  * instructions and adds debug comments at the end (in verbose-asm mode).
26  * Format specifiers:
27  *
28  * fmt  parameter               output
29  * ---- ----------------------  ---------------------------------------------
30  * %%                           %
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)
44  */
45 void arm_emitf(const ir_node *node, const char *format, ...);
46
47 void arm_gen_routine(ir_graph *irg);
48
49 void arm_init_emitter(void);
50
51 #endif