projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cleanup sparc spec
[libfirm]
/
ir
/
be
/
sparc
/
bearch_sparc_t.h
diff --git
a/ir/be/sparc/bearch_sparc_t.h
b/ir/be/sparc/bearch_sparc_t.h
index
ef28b1a
..
aae05e8
100644
(file)
--- a/
ir/be/sparc/bearch_sparc_t.h
+++ b/
ir/be/sparc/bearch_sparc_t.h
@@
-20,7
+20,7
@@
/**
* @file
* @brief declarations for SPARC backend -- private header
/**
* @file
* @brief declarations for SPARC backend -- private header
- * @version $Id
: bearch_TEMPLATE_t.h 26542 2009-09-18 09:18:32Z matze
$
+ * @version $Id$
*/
#ifndef FIRM_BE_SPARC_BEARCH_TEMPLATE_T_H
#define FIRM_BE_SPARC_BEARCH_TEMPLATE_T_H
*/
#ifndef FIRM_BE_SPARC_BEARCH_TEMPLATE_T_H
#define FIRM_BE_SPARC_BEARCH_TEMPLATE_T_H
@@
-31,6
+31,11
@@
#include "../beemitter.h"
#include "set.h"
#include "../beemitter.h"
#include "set.h"
+// sparc ABI requires a min stacksize to
+// save registers in case of a trap etc.
+// by now we assume only non-leaf procedures: 92 + 4 (padding)
+#define SPARC_MIN_STACKSIZE 112
+
typedef struct sparc_transform_env_t sparc_transform_env_t;
typedef struct _sparc_isa_t sparc_isa_t;
typedef struct sparc_transform_env_t sparc_transform_env_t;
typedef struct _sparc_isa_t sparc_isa_t;
@@
-39,9
+44,7
@@
typedef struct _sparc_code_gen_t {
ir_graph *irg; /**< current irg */
set *reg_set; /**< set to memorize registers for FIRM nodes (e.g. phi) */
sparc_isa_t *isa; /**< the isa instance */
ir_graph *irg; /**< current irg */
set *reg_set; /**< set to memorize registers for FIRM nodes (e.g. phi) */
sparc_isa_t *isa; /**< the isa instance */
- be_irg_t *birg; /**< The be-irg (contains additional information about the irg) */
char dump; /**< set to 1 if graphs should be dumped */
char dump; /**< set to 1 if graphs should be dumped */
- firm_dbg_module_t *mod; /**< debugging module */
} sparc_code_gen_t;
} sparc_code_gen_t;
@@
-63,4
+66,6
@@
struct sparc_transform_env_t {
ir_mode *mode; /**< The mode of the irn */
};
ir_mode *mode; /**< The mode of the irn */
};
+void sparc_finish_irg(sparc_code_gen_t *cg);
+
#endif
#endif