X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=ir%2Fbe%2Fbenode.h;h=44970e492754006170f5a84a1563b06c7ef3980c;hb=df2faee01a5832057bb3ca0ba5f67e979c916e19;hp=2284a7d32f5471bfee1f6594a2741ddfa7f693e0;hpb=f8cc15664f571aa7ef89d6f6bc8d5bd2b8ca7d53;p=libfirm diff --git a/ir/be/benode.h b/ir/be/benode.h index 2284a7d32..44970e492 100644 --- a/ir/be/benode.h +++ b/ir/be/benode.h @@ -63,6 +63,8 @@ int is_be_node(const ir_node *irn); */ void be_init_op(void); +void be_finish_op(void); + /** * Position numbers for the be_Spill inputs. */ @@ -106,8 +108,6 @@ enum { ir_node *be_new_Copy(ir_node *block, ir_node *in); /** Returns the Copy Argument. */ ir_node *be_get_Copy_op(const ir_node *cpy); -/** Sets the Copy Argument. */ -void be_set_Copy_op(ir_node *cpy, ir_node *op); /** * Make a new Perm node. @@ -306,8 +306,9 @@ typedef enum { * @param call_tp the call type of this call */ ir_node *be_new_Call(dbg_info *dbg, ir_graph *irg, ir_node *block, ir_node *mem, - ir_node *sp, ir_node *ptr, int n_outs, - int n, ir_node *in[], ir_type *call_tp); + const arch_register_req_t *sp_req, ir_node *sp, + const arch_register_req_t *ptr_req, ir_node *ptr, + int n_outs, int n, ir_node *in[], ir_type *call_tp); /** * Position numbers for the be_Return inputs. @@ -357,9 +358,6 @@ int be_Return_get_emit_pop(const ir_node *ret); */ void be_Return_set_emit_pop(ir_node *ret, int emit_pop); -/** appends a node to the return node, returns the position of the node */ -int be_Return_append_node(ir_node *ret, ir_node *node); - ir_node *be_new_Start(dbg_info *dbgi, ir_node *block, int n_out); enum { @@ -445,25 +443,19 @@ void be_node_set_reg_class_out(ir_node *irn, int pos, */ void be_set_phi_reg_req(ir_node *phi, const arch_register_req_t *req); -void be_dump_phi_reg_reqs(FILE *out, ir_node *node, dump_reason_t reason); +void be_dump_phi_reg_reqs(FILE *out, const ir_node *node, dump_reason_t reason); /** * Creates a new phi with associated backend informations */ ir_node *be_new_Phi(ir_node *block, int n_ins, ir_node **ins, ir_mode *mode, - const arch_register_class_t *cls); + const arch_register_req_t *req); /** * Search for output of start node with a specific register */ ir_node *be_get_initial_reg_value(ir_graph *irg, const arch_register_t *reg); -/** - * Search for input of a return node with a specific register and return - * its number. - */ -int be_find_return_reg_input(ir_node *ret, const arch_register_t *reg); - static inline int be_is_Spill (const ir_node *irn) { return get_irn_opcode(irn) == beo_Spill ; } static inline int be_is_Reload (const ir_node *irn) { return get_irn_opcode(irn) == beo_Reload ; } static inline int be_is_Copy (const ir_node *irn) { return get_irn_opcode(irn) == beo_Copy ; }