summaryrefslogtreecommitdiff
path: root/gcc/config/mmix/mmix.h
diff options
context:
space:
mode:
authorhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>2002-04-30 19:18:49 +0000
committerhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>2002-04-30 19:18:49 +0000
commitd68ffc6f8729c7b5c7647fb70e13e859183d7f8b (patch)
tree76037033dc08f78a09ff8e69706a3250e56c2bc0 /gcc/config/mmix/mmix.h
parentc00088b6b23a440b53ec6629fcbdadb44544a0e4 (diff)
downloadgcc-d68ffc6f8729c7b5c7647fb70e13e859183d7f8b.tar.gz
* config/mmix/mmix.h (MMIX_LAST_STACK_REGISTER_REGNUM): Renamed
from MMIX_LAST_REGISTER_FILE_REGNUM. (NO_IMPLICIT_EXTERN_C): Remove cryptic obsolete comment. (struct machine_function): New member highest_saved_stack_register previously static variable in mmix.c. (MACHINE_DEPENDENT_REORG): Define. * config/mmix/mmix.c (highest_saved_stack_register): Deleted. (MMIX_OUTPUT_REGNO): New. (mmix_target_asm_function_prologue): Move calculation of last used saved-stack-register into... (mmix_machine_dependent_reorg): New function. Update to also handle !TARGET_ABI_GNU. (mmix_print_operand): Apply MMIX_OUTPUT_REGNO when emitting register names, simplify somewhat by new variable regno. <case 'p'>: Remove fixed FIXME. Always emit highest used saved register. (mmix_print_operand_address): Apply MMIX_OUTPUT_REGNO when emitting register names. (mmix_asm_output_reg_push, mmix_asm_output_reg_pop): Ditto. (mmix_dbx_register_number): Apply MMIX_OUTPUT_REGNO here too. Remove fixed FIXME. * config/mmix/mmix-protos.h (mmix_machine_dependent_reorg): Declare. * config/mmix/mmix.md ("divmoddi4"): Update head comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@52966 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/mmix/mmix.h')
-rw-r--r--gcc/config/mmix/mmix.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/config/mmix/mmix.h b/gcc/config/mmix/mmix.h
index 6171e588500..3abfe29f6a2 100644
--- a/gcc/config/mmix/mmix.h
+++ b/gcc/config/mmix/mmix.h
@@ -49,7 +49,7 @@ Boston, MA 02111-1307, USA. */
#define MMIX_HIMULT_REGNUM 258
#define MMIX_REMAINDER_REGNUM 260
#define MMIX_ARG_POINTER_REGNUM 261
-#define MMIX_LAST_REGISTER_FILE_REGNUM 31
+#define MMIX_LAST_STACK_REGISTER_REGNUM 31
/* Four registers; "ideally, these registers should be call-clobbered", so
just grab a bunch of the common clobbered registers. FIXME: Last
@@ -91,6 +91,7 @@ extern struct rtx_def *mmix_compare_op1;
struct machine_function
{
int has_landing_pad;
+ int highest_saved_stack_register;
};
/* For these target macros, there is no generic documentation here. You
@@ -1196,7 +1197,6 @@ const_section () \
#define FUNCTION_MODE QImode
-/* When in due time we *will* have some specific headers. */
#define NO_IMPLICIT_EXTERN_C
#define HANDLE_SYSV_PRAGMA
@@ -1206,6 +1206,10 @@ const_section () \
#define NO_DOLLAR_IN_LABEL
#define NO_DOT_IN_LABEL
+/* Calculate the highest used supposed saved stack register. */
+#define MACHINE_DEPENDENT_REORG(INSN) \
+ mmix_machine_dependent_reorg (INSN)
+
#endif /* GCC_MMIX_H */
/*
* Local variables: