diff options
author | hp <hp@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-04-30 19:18:49 +0000 |
---|---|---|
committer | hp <hp@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-04-30 19:18:49 +0000 |
commit | d68ffc6f8729c7b5c7647fb70e13e859183d7f8b (patch) | |
tree | 76037033dc08f78a09ff8e69706a3250e56c2bc0 /gcc/config/mmix/mmix.h | |
parent | c00088b6b23a440b53ec6629fcbdadb44544a0e4 (diff) | |
download | gcc-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.h | 8 |
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: |