* h8300/h8300.h (FIRST_PSEUDO_REGISTER): Bump up by one.
(ARG_POINTER_REGNUM): Likewise.
(FIXED_REGISTERS): Add entry for MAC register.
(CALL_USED_REGISTERS< REG_ALLOC_ORDER): Likewise.
(HARD_REGNO_NREGS): Handle MAC register.
(HARD_REGNO_MODE_OK< REGNO_OK_FOR_BASE_P): LIkewise.
(REGISTER_NAMES): Likewise.
(enum reg_class): New MAC_REGS register class.
(REG_CLASS_CONTENTS, REGNO_REG_CLASS): Corresponding changes.
(REG_CLASS_FROM_LETTER): LIkewise.
(REGISTER_MOVE_COST): Make copies to/from the MAC register
expenseive.
(CONDITIONAL_REGISTER_USAGE): Define.
* h8300/h8300.md (movsi_h8300hs): Renamed from movsi_h8300h.
Handle moves to/from the MAC register.
(mac): Two new patterns to use the mac instruction.
* h8300/h8300.c (notice_update_cc): Fix CC_SET case.
(restore_compare_p): Remove unused function.
* h8300/h8300.md: Handle "set" vs "set_zn_c0" correctly.
(bCC patterns): No longer need to call restore_compare_p.
* h8300/h8300.c (get_shift_alg): Fix HImode ASHIFTRT by
13 or 14 bits.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12848 138bc75d-0d04-0410-961f-82ee72b054a4