projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added a computation for spill-slot (offset) assignment.
[libfirm]
/
ir
/
be
/
besched_t.h
diff --git
a/ir/be/besched_t.h
b/ir/be/besched_t.h
index
9d972ca
..
0d37f86
100644
(file)
--- a/
ir/be/besched_t.h
+++ b/
ir/be/besched_t.h
@@
-8,6
+8,7
@@
#include "irnode_t.h"
#include "irgraph_t.h"
#include "irnode_t.h"
#include "irgraph_t.h"
+#include "beutil.h"
#include "besched.h"
typedef unsigned int sched_timestep_t;
#include "besched.h"
typedef unsigned int sched_timestep_t;
@@
-54,18
+55,10
@@
static INLINE int _sched_get_time_step(const ir_node *irn)
*/
static INLINE int to_appear_in_schedule(ir_node *irn)
{
*/
static INLINE int to_appear_in_schedule(ir_node *irn)
{
- int i, n;
-
if(get_irn_opcode(irn) == iro_Start)
return 1;
if(get_irn_opcode(irn) == iro_Start)
return 1;
- for(i = 0, n = get_irn_arity(irn); i < n; ++i) {
- ir_node *op = get_irn_n(irn, i);
- if(mode_is_datab(get_irn_mode(op)))
- return 1;
- }
-
- return mode_is_datab(get_irn_mode(irn));
+ return is_data_node(irn);
}
/**
}
/**
@@
-197,10
+190,10
@@
static INLINE ir_node *_sched_add_before(ir_node *before, ir_node *irn)
*/
static INLINE ir_node *_sched_add_after(ir_node *after, ir_node *irn)
{
*/
static INLINE ir_node *_sched_add_after(ir_node *after, ir_node *irn)
{
- sched_info_t *info = get_irn_sched_info(irn);
+
sched_info_t *info = get_irn_sched_info(irn);
list_add(&info->list, &get_irn_sched_info(after)->list);
list_add(&info->list, &get_irn_sched_info(after)->list);
- _sched_set_time_stamp(irn);
- info->scheduled = 1;
+
_sched_set_time_stamp(irn);
+
info->scheduled = 1;
return irn;
}
return irn;
}
@@
-212,11
+205,12
@@
static INLINE void _sched_remove(ir_node *irn)
{
sched_info_t *info = get_irn_sched_info(irn);
list_del(&info->list);
{
sched_info_t *info = get_irn_sched_info(irn);
list_del(&info->list);
+ INIT_LIST_HEAD(&info->list);
info->scheduled = 0;
}
/**
info->scheduled = 0;
}
/**
- * Check, if thenode is scheduled.
+ * Check, if the
node is scheduled.
* @param irn The node.
* @return 1, if the node is scheduled, 0 if not.
*/
* @param irn The node.
* @return 1, if the node is scheduled, 0 if not.
*/