diff options
author | Jeff Law <law@gcc.gnu.org> | 1997-03-11 17:25:59 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1997-03-11 17:25:59 -0700 |
commit | 777fbf098d29a455da9b16b904d6c57a8612d598 (patch) | |
tree | 3a87d29bb567cfe92d07c2b8ca567f507d8a4936 /gcc/cplus-dem.c | |
parent | e9b1360b4952466ae1e4189b4002b131c95e649d (diff) | |
download | gcc-777fbf098d29a455da9b16b904d6c57a8612d598.zip gcc-777fbf098d29a455da9b16b904d6c57a8612d598.tar.gz gcc-777fbf098d29a455da9b16b904d6c57a8612d598.tar.bz2 |
mn10300.c (expand_prologue): Rework so that eliminating the frame pointer produces faster/smaller code.
* mn10300/mn10300.c (expand_prologue): Rework so that eliminating
the frame pointer produces faster/smaller code.
(expand_epilogue): Likewise.
(initial_offset): New function for argument pointer and frame pointer
elimination.
* mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Bump to 10.
(FIXED_REGISTERS): Add argument pointer register, it's a fake fixed
register.
(CALL_USED_REGISTERS, REG_ALLOC_ORDER): Corresponding changes.
(REGNO_REG_CLASS, REG_CLASS_CONTENTS): Likewise.
(REG_OK_FOR_BASE_P, REGISTER_NAMES): Likewise.
(reg_class, REG_CLASS_NAMES): Delete unwanted DATA_OR_SP_REGS class.
(PREFERRED_OUTPUT_RELOAD_CLASS): Define.
(FIRST_PARM_OFFSET): No longer include register save area in
computation.
(STACK_POINTER_REGNUM): Is now register 9.
(ARG_POINTER_REGNUM): Is now register 8.
(FRAME_POINTER_REQUIRED): Refine.
(ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET): Define.
(CAN_DEUG_WITHOUT_FP): Define.
* mn10300/mn10300.md (return_internal): Break into two patterns.
* mn10300/mn10300.h (CONST_OK_FOR_LETTER_P): Handle 'M' too.
(REGISTER_MOVE_COST): Fix errors and refine.
* mn10300/mn10300.c (notice_update_cc): SET_ZN_C0 insns leave the
overflow bit in an unuseable state. Rename CC_SET to CC_TST.
* mn10300/mn10300.md (cc attributes): "set" is gone, replaced by
"tst". Update attributes on various insns.
* mn10300/mn10300.md: Improve sign and zero extension instructions.
(ashlsi3): Improve. Handle address registers too.
(add peephole): Combine two consecutive adjustments of a register
into a single adjustment.
From-SVN: r13700
Diffstat (limited to 'gcc/cplus-dem.c')
0 files changed, 0 insertions, 0 deletions