X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbeutil.h;h=921f592c83e796764750e7fe93a40d1b02534e69;hb=184e8cad0c6e8b3cbe8ed9b28d372ad38a96df18;hp=5fbd6e38777331f55935b741d1bc5887124f3a79;hpb=1ce363f80e6a204d4011f85813362d9bd1d0e7e4;p=libfirm diff --git a/ir/be/beutil.h b/ir/be/beutil.h index 5fbd6e387..921f592c8 100644 --- a/ir/be/beutil.h +++ b/ir/be/beutil.h @@ -26,8 +26,6 @@ #ifndef FIRM_BE_BEUTIL_H #define FIRM_BE_BEUTIL_H -#include "firm_config.h" - #include #include "firm_types.h" @@ -35,6 +33,22 @@ #include "bearch_t.h" +#ifdef _MSC_VER +typedef __int64 long64; +typedef unsigned __int64 ulong64; + +#define LL_FMT "i64" +#define ULL_FMT "ui64" + +#else +typedef long long long64; +typedef unsigned long long ulong64; + +#define LL_FMT "ll" +#define ULL_FMT "llu" + +#endif /* _MSC_VER */ + /* iterate over a list of ir_nodes linked by link field */ #define foreach_linked_irns(head, iter) for ((iter) = (head); (iter); (iter) = get_irn_link((iter))) @@ -54,17 +68,17 @@ pset *be_empty_set(void); * @return The block of the node, or the node itself, if the node is a * block. */ -static INLINE ir_node *get_block(ir_node *irn) +static inline ir_node *get_block(ir_node *irn) { return is_Block(irn) ? irn : get_nodes_block(irn); } -static INLINE const ir_node *get_block_const(const ir_node *irn) +static inline const ir_node *get_block_const(const ir_node *irn) { return is_Block(irn) ? irn : get_nodes_block(irn); } -static INLINE int is_firm_be_mode(const ir_mode *mode) +static inline int is_firm_be_mode(const ir_mode *mode) { return mode_is_data(mode); } @@ -77,7 +91,7 @@ static INLINE int is_firm_be_mode(const ir_mode *mode) * @param irn The node to check for. * @return 1, if the node is a data node, 0 if not. */ -static INLINE int is_data_node(const ir_node *irn) +static inline int is_data_node(const ir_node *irn) { int i, n; @@ -97,13 +111,9 @@ static INLINE int is_data_node(const ir_node *irn) } /** - * Dump a vcg graph containing the controlflow graph, the schedule and - * allocated registers. - * @param irg The irg. Note that scheduling, register allocation must - * have been performed. + * Clears the link fields of all nodes of the given graph. + * @param irg The graph. */ -void dump_allocated_irg(arch_env_t *env, ir_graph *irg, char *suffix); - void be_clear_links(ir_graph *irg); /** @@ -135,12 +145,6 @@ void be_dump(ir_graph *irg, const char *suffix, void (*dumper)(ir_graph *, const */ unsigned get_num_reachable_nodes(ir_graph *irg); -/** - * Sets all node inputs to BAD node. - * @param irn The node to be killed. - */ -void be_kill_node(ir_node *irn); - /** * Gets the Proj with number pn from irn. */