projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
reorganize beabi - save wether we are using omit_fp in the stack_layout structure
[libfirm]
/
ir
/
be
/
ia32
/
bearch_ia32.c
diff --git
a/ir/be/ia32/bearch_ia32.c
b/ir/be/ia32/bearch_ia32.c
index
e23482e
..
f7bbde8
100644
(file)
--- a/
ir/be/ia32/bearch_ia32.c
+++ b/
ir/be/ia32/bearch_ia32.c
@@
-240,9
+240,9
@@
static void ia32_set_frame_offset(ir_node *irn, int bias)
return;
if (is_ia32_Pop(irn) || is_ia32_PopMem(irn)) {
return;
if (is_ia32_Pop(irn) || is_ia32_PopMem(irn)) {
- i
a32_code_gen_t *cg = ia32_current_cg
;
-
int omit_fp = be_abi_omit_fp(be_get_irg_abi(cg->irg)
);
- if (
omit_fp
) {
+ i
r_graph *irg = get_irn_irg(irn)
;
+
be_stack_layout_t *layout = be_get_irg_stack_layout(irg
);
+ if (
layout->sp_relative
) {
/* Pop nodes modify the stack pointer before calculating the
* destination address, so fix this here
*/
/* Pop nodes modify the stack pointer before calculating the
* destination address, so fix this here
*/
@@
-1541,6
+1541,7
@@
static ia32_isa_t ia32_isa_template = {
NULL, /* main environment */
7, /* costs for a spill instruction */
5, /* costs for a reload instruction */
NULL, /* main environment */
7, /* costs for a spill instruction */
5, /* costs for a reload instruction */
+ false, /* no custom abi handling */
},
NULL, /* 16bit register names */
NULL, /* 8bit register names */
},
NULL, /* 16bit register names */
NULL, /* 8bit register names */