projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix typos in comments: s/wether/whether/ and related corrections.
[libfirm]
/
ir
/
be
/
sparc
/
bearch_sparc.c
diff --git
a/ir/be/sparc/bearch_sparc.c
b/ir/be/sparc/bearch_sparc.c
index
3adab36
..
5e3fbed
100644
(file)
--- a/
ir/be/sparc/bearch_sparc.c
+++ b/
ir/be/sparc/bearch_sparc.c
@@
-117,6
+117,8
@@
static int sparc_get_sp_bias(const ir_node *node)
* calculates that! */
assert(attr->immediate_value <= -SPARC_MIN_STACKSIZE);
return attr->immediate_value + SPARC_MIN_STACKSIZE;
* calculates that! */
assert(attr->immediate_value <= -SPARC_MIN_STACKSIZE);
return attr->immediate_value + SPARC_MIN_STACKSIZE;
+ } else if (is_sparc_RestoreZero(node)) {
+ return SP_BIAS_RESET;
}
return 0;
}
}
return 0;
}
@@
-281,10
+283,12
@@
static void sparc_set_frame_entity(ir_node *node, ir_entity *entity)
static void sparc_after_ra(ir_graph *irg)
{
static void sparc_after_ra(ir_graph *irg)
{
- be_fec_env_t *fec_env = be_new_frame_entity_coalescer(irg);
+ be_stack_layout_t *stack_layout = be_get_irg_stack_layout(irg);
+ bool at_begin = stack_layout->sp_relative ? true : false;
+ be_fec_env_t *fec_env = be_new_frame_entity_coalescer(irg);
irg_walk_graph(irg, NULL, sparc_collect_frame_entity_nodes, fec_env);
irg_walk_graph(irg, NULL, sparc_collect_frame_entity_nodes, fec_env);
- be_assign_entities(fec_env, sparc_set_frame_entity);
+ be_assign_entities(fec_env, sparc_set_frame_entity
, at_begin
);
be_free_frame_entity_coalescer(fec_env);
irg_block_walk_graph(irg, NULL, sparc_after_ra_walker, NULL);
be_free_frame_entity_coalescer(fec_env);
irg_block_walk_graph(irg, NULL, sparc_after_ra_walker, NULL);
@@
-537,8
+541,7
@@
static ir_node *sparc_create_set(ir_node *cond)
static void sparc_lower_for_target(void)
{
static void sparc_lower_for_target(void)
{
- int i;
- int n_irgs = get_irp_n_irgs();
+ size_t i, n_irgs = get_irp_n_irgs();
lower_mode_b_config_t lower_mode_b_config = {
mode_Iu,
sparc_create_set,
lower_mode_b_config_t lower_mode_b_config = {
mode_Iu,
sparc_create_set,