remove license stuff from files
[libfirm] / ir / be / arm / arm_new_nodes.h
1 /*
2  * This file is part of libFirm.
3  * Copyright (C) 2012 University of Karlsruhe.
4  */
5
6 /**
7  * @file
8  * @brief   Function prototypes for the assembler ir node constructors.
9  * @author  Oliver Richter, Tobias Gneist
10  */
11 #ifndef FIRM_BE_ARM_ARM_NEW_NODES_H
12 #define FIRM_BE_ARM_ARM_NEW_NODES_H
13
14 #include "arm_nodes_attr.h"
15 #include "bearch_arm_t.h"
16
17 /**
18  * Returns the attributes of a generic Arm node.
19  */
20 arm_attr_t *get_arm_attr(ir_node *node);
21 const arm_attr_t *get_arm_attr_const(const ir_node *node);
22
23 /**
24  * Returns the attributes of an ARM SymConst node.
25  */
26 arm_SymConst_attr_t *get_arm_SymConst_attr(ir_node *node);
27 const arm_SymConst_attr_t *get_arm_SymConst_attr_const(const ir_node *node);
28
29 /**
30  * Returns the attributes of an ARM CondJmp node.
31  */
32 arm_CondJmp_attr_t *get_arm_CondJmp_attr(ir_node *node);
33 const arm_CondJmp_attr_t *get_arm_CondJmp_attr_const(const ir_node *node);
34
35 /**
36  * Returns the attributes of an ARM SwitchJmp node.
37  */
38 arm_SwitchJmp_attr_t *get_arm_SwitchJmp_attr(ir_node *node);
39 const arm_SwitchJmp_attr_t *get_arm_SwitchJmp_attr_const(const ir_node *node);
40
41 arm_load_store_attr_t *get_arm_load_store_attr(ir_node *node);
42 const arm_load_store_attr_t *get_arm_load_store_attr_const(const ir_node *node);
43
44 arm_shifter_operand_t *get_arm_shifter_operand_attr(ir_node *node);
45 const arm_shifter_operand_t *get_arm_shifter_operand_attr_const(const ir_node *node);
46
47 arm_cmp_attr_t *get_arm_cmp_attr(ir_node *node);
48 const arm_cmp_attr_t *get_arm_cmp_attr_const(const ir_node *node);
49
50 arm_farith_attr_t *get_arm_farith_attr(ir_node *node);
51 const arm_farith_attr_t *get_arm_farith_attr_const(const ir_node *node);
52
53 arm_CopyB_attr_t *get_arm_CopyB_attr(ir_node *node);
54 const arm_CopyB_attr_t *get_arm_CopyB_attr_const(const ir_node *node);
55
56 /**
57 * Return the tarval of a fConst
58 */
59 ir_tarval *get_fConst_value(const ir_node *node);
60
61 /**
62  * Sets the tarval of a fConst
63  */
64 void set_fConst_value(ir_node *node, ir_tarval *tv);
65
66 /**
67  * Returns the compare kind
68  */
69 ir_relation get_arm_CondJmp_relation(const ir_node *node);
70
71 /**
72  * Set compare type
73  */
74 void set_arm_CondJmp_relation(ir_node *node, ir_relation relation);
75
76 ir_node *new_r_arm_StoreStackMInc(ir_graph *irg, ir_node *block, ir_node *mem, ir_node *sp,
77                                                               int n_regs, ir_node **regs, ir_mode *mode);
78
79 /* Include the generated headers */
80 #include "gen_arm_new_nodes.h"
81
82 #endif