X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fia32%2Fia32_new_nodes.h;h=b65844bf625d6183441b6bab0a2050522681608d;hb=f50c7e78b5a0d95ae8db5234d039487d16e917b1;hp=e3c99f2a72016f19a45900aa90d8e85910e0dd13;hpb=a824d376c1c37f80c7e1ebd6304665380d28fc5f;p=libfirm diff --git a/ir/be/ia32/ia32_new_nodes.h b/ir/be/ia32/ia32_new_nodes.h index e3c99f2a7..b65844bf6 100644 --- a/ir/be/ia32/ia32_new_nodes.h +++ b/ir/be/ia32/ia32_new_nodes.h @@ -97,6 +97,12 @@ const ia32_call_attr_t *get_ia32_call_attr_const(const ir_node *node); ia32_copyb_attr_t *get_ia32_copyb_attr(ir_node *node); const ia32_copyb_attr_t *get_ia32_copyb_attr_const(const ir_node *node); +/** + * Gets the ClimbFrame node attributes. + */ +ia32_climbframe_attr_t *get_ia32_climbframe_attr(ir_node *node); +const ia32_climbframe_attr_t *get_ia32_climbframe_attr_const(const ir_node *node); + /** * Gets the type of an ia32 node. */ @@ -157,12 +163,12 @@ int is_ia32_am_sc_sign(const ir_node *node); /** * Gets the addr mode const. */ -int get_ia32_am_scale(const ir_node *node); +unsigned get_ia32_am_scale(const ir_node *node); /** * Sets the const for addr mode. */ -void set_ia32_am_scale(ir_node *node, int scale); +void set_ia32_am_scale(ir_node *node, unsigned scale); /** * Sets the uses_frame flag. @@ -253,31 +259,11 @@ const arch_register_req_t **get_ia32_in_req_all(const ir_node *node); */ void set_ia32_in_req_all(ir_node *node, const arch_register_req_t **reqs); -/** - * Returns the result register requirements of an ia32 node. - */ -const arch_register_req_t **get_ia32_out_req_all(const ir_node *node); - -/** - * Sets the result register requirements of an ia32 node. - */ -void set_ia32_out_req_all(ir_node *node, const arch_register_req_t **reqs); - /** * Returns the argument register requirements of an ia32 node. */ const arch_register_req_t *get_ia32_in_req(const ir_node *node, int pos); -/** - * Returns the result register requirements of an ia32 node. - */ -const arch_register_req_t *get_ia32_out_req(const ir_node *node, int pos); - -/** - * Sets the OUT register requirements at position pos. - */ -void set_ia32_req_out(ir_node *node, const arch_register_req_t *req, int pos); - /** * Sets the IN register requirements at position pos. */ @@ -304,16 +290,6 @@ unsigned get_ia32_copyb_size(const ir_node *node); unsigned get_ia32_latency(const ir_node *node); -/** - * Sets the flags for the n'th out. - */ -void set_ia32_out_flags(ir_node *node, arch_irn_flags_t flags, int pos); - -/** - * Gets the flags for the n'th out. - */ -arch_irn_flags_t get_ia32_out_flags(const ir_node *node, int pos); - /** * Get the list of available execution units. */ @@ -349,7 +325,7 @@ const char *get_ia32_orig_node(const ir_node *node); /** * Sets the name of the original ir node. */ -void set_ia32_orig_node(ir_node *node, const char *name); +void set_ia32_orig_node(ir_node *node, const ir_node *old); #endif /* NDEBUG */ @@ -398,17 +374,18 @@ void ia32_swap_left_right(ir_node *node); */ void init_ia32_attributes(ir_node *node, arch_irn_flags_t flags, const arch_register_req_t **in_reqs, - const arch_register_req_t **out_reqs, const be_execution_unit_t ***execution_units, int n_res); void init_ia32_x87_attributes(ir_node *node); void init_ia32_asm_attributes(ir_node *node); void init_ia32_immediate_attributes(ir_node *node, ir_entity *symconst, - int symconst_sign, long offset); + int symconst_sign, int no_pic_adjust, + long offset); void init_ia32_call_attributes(ir_node *res, unsigned pop, ir_type *call_tp); void init_ia32_copyb_attributes(ir_node *res, unsigned size); void init_ia32_condcode_attributes(ir_node *res, long pnc); +void init_ia32_climbframe_attributes(ir_node *res, unsigned count); /* Include the generated headers */ #include "gen_ia32_new_nodes.h"