Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Zwinkau
libfirm
Commits
be74a494
Commit
be74a494
authored
Sep 29, 2006
by
Michael Beck
Browse files
is_irn_start_block_placed() added\nconst added to skip_Proj()
[r8310]
parent
255d75c4
Changes
3
Hide whitespace changes
Inline
Side-by-side
ir/ir/irnode.c
View file @
be74a494
...
...
@@ -2374,7 +2374,7 @@ get_irn_irg(const ir_node *node) {
/*----------------------------------------------------------------*/
ir_node
*
skip_Proj
(
ir_node
*
node
)
{
skip_Proj
(
const
ir_node
*
node
)
{
/* don't assert node !!! */
if
(
node
&&
is_Proj
(
node
))
{
return
get_Proj_pred
(
node
);
...
...
@@ -2715,6 +2715,13 @@ int (is_irn_keep)(const ir_node *node) {
return
_is_irn_keep
(
node
);
}
/*
* Returns non-zero for nodes that are always placed in the start block.
*/
int
(
is_irn_start_block_placed
)(
const
ir_node
*
node
)
{
return
_is_irn_start_block_placed
(
node
);
}
/* Returns non-zero for nodes that are machine operations. */
int
(
is_irn_machine_op
)(
const
ir_node
*
node
)
{
return
_is_irn_machine_op
(
node
);
...
...
ir/ir/irnode.h
View file @
be74a494
...
...
@@ -1113,7 +1113,7 @@ void set_Pin_op(ir_node *pin, ir_node *node);
*/
/** returns operand of node if node is a Proj. */
ir_node
*
skip_Proj
(
ir_node
*
node
);
ir_node
*
skip_Proj
(
const
ir_node
*
node
);
/** returns operand of node if node is a Id */
ir_node
*
skip_Id
(
ir_node
*
node
);
/* Old name is skip_nop(). */
/** returns corresponding operand of Tuple if node is a Proj from
...
...
@@ -1126,7 +1126,7 @@ ir_node *skip_Confirm(ir_node *node);
/** Skip all high-level Operations. */
ir_node
*
skip_HighLevel
(
ir_node
*
node
);
/** returns true if irn is a Const node. */
int
is_Const
(
const
ir_node
*
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 node is a Start node. */
...
...
@@ -1211,6 +1211,11 @@ int is_irn_always_opt(const ir_node *node);
*/
int
is_irn_keep
(
const
ir_node
*
node
);
/**
* Returns non-zero for nodes that are always placed in the start block.
*/
int
is_irn_start_block_placed
(
const
ir_node
*
node
);
/**
* Returns non-zero for nodes that are machine operations.
*/
...
...
ir/ir/irnode_t.h
View file @
be74a494
...
...
@@ -867,6 +867,10 @@ static INLINE int _is_irn_keep(const ir_node *node) {
return
is_op_keep
(
_get_irn_op
(
node
));
}
static
INLINE
int
_is_irn_start_block_placed
(
const
ir_node
*
node
)
{
return
is_op_start_block_placed
(
_get_irn_op
(
node
));
}
static
INLINE
int
_is_irn_machine_op
(
const
ir_node
*
node
)
{
return
is_op_machine
(
_get_irn_op
(
node
));
}
...
...
@@ -958,6 +962,7 @@ static INLINE unsigned _get_irn_idx(const ir_node *node) {
#define is_irn_constlike(node) _is_irn_constlike(node)
#define is_irn_always_opt(node) _is_irn_always_opt(node)
#define is_irn_keep(node) _is_irn_keep(node)
#define is_irn_start_block_placed(node) _is_irn_start_block_placed(node)
#define is_irn_machine_op(node) _is_irn_machine_op(node)
#define is_irn_machine_operand(node) _is_irn_machine_operand(node)
#define is_irn_machine_user(node, n) _is_irn_machine_user(node, n)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment