From: Sebastian Hack Date: Wed, 23 Mar 2005 13:10:17 +0000 (+0000) Subject: Added is_Const X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=db2f47e7e5ed07ed52cb1b89846e6e8a5d2987d9;p=libfirm Added is_Const [r5464] --- diff --git a/ir/ir/irnode.c b/ir/ir/irnode.c index 3d89e6556..11a274a06 100644 --- a/ir/ir/irnode.c +++ b/ir/ir/irnode.c @@ -2123,6 +2123,11 @@ int return _is_Bad(node); } +int +(is_Const)(const ir_node *node) { + return _is_Const(node); +} + int (is_no_Block)(const ir_node *node) { return _is_no_Block(node); diff --git a/ir/ir/irnode.h b/ir/ir/irnode.h index 5b66b75f7..1fc9d0216 100644 --- a/ir/ir/irnode.h +++ b/ir/ir/irnode.h @@ -896,6 +896,8 @@ ir_node *skip_Id (ir_node *node); /* Same as skip_nop. */ ir_node *skip_Tuple (ir_node *node); /** returns operand of node if node is a Cast */ ir_node *skip_Cast (ir_node *node); +/** returns true if irn is a Const node. */ +int is_Const(const ir_node *node); /** returns true if node is a Bad node. */ int is_Bad (const ir_node *node); /** returns true if the node is not a Block */ diff --git a/ir/ir/irnode_t.h b/ir/ir/irnode_t.h index 41d3ec0db..e325d1902 100644 --- a/ir/ir/irnode_t.h +++ b/ir/ir/irnode_t.h @@ -525,6 +525,12 @@ _is_Bad(const ir_node *node) { return (node && _get_irn_op(node) == op_Bad); } +static INLINE int +_is_Const(const ir_node *node) { + assert(node); + return (node && _get_irn_op(node) == op_Const); +} + static INLINE int _is_no_Block(const ir_node *node) { assert(node && _is_ir_node(node)); @@ -625,6 +631,7 @@ static INLINE type *_get_irn_type(ir_node *node) { #define get_irn_link(node) _get_irn_link(node) #define is_unop(node) _is_unop(node) #define is_binop(node) _is_binop(node) +#define is_Const(node) _is_Const(node) #define is_Bad(node) _is_Bad(node) #define is_no_Block(node) _is_no_Block(node) #define is_Block(node) _is_Block(node)