instead of exitdiv.
(___umodsi3): Likewise.
(exitdiv): Do not restore any register.
(reti): Restore registers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73560
138bc75d-0d04-0410-961f-
82ee72b054a4
+2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (___udivsi3): Jump to reti
+ instead of exitdiv.
+ (___umodsi3): Likewise.
+ (exitdiv): Do not restore any register.
+ (reti): Restore registers.
+
2003-11-13 Steven Bosscher <stevenb@suse.de>
* tree-inline.c (walk_tree): Handle PLACEHOLDER_EXPR.
PUSHP S2P
PUSHP S0P
PUSHP S1P
- mov.b #0,S2L ; keep sign low
bsr divmodsi4
- bra exitdiv
+ bra reti
#else
;; H8/300H and H8S version of divmodsi4 does not clobber S1P or S2P.
PUSHP S0P
PUSHP S2P
PUSHP S0P
PUSHP S1P
- mov.b #0,S2L ; keep sign low
bsr divmodsi4
mov S0,A0
mov S1,A1
- bra exitdiv
+ bra reti
#else
;; H8/300H and H8S version of divmodsi4 does not clobber S1P or S2P.
PUSHP S0P
; examine what the sign should be
exitdiv:
- POPP S1P
- POPP S0P
-
or S2L,S2L
beq reti
#endif
reti:
+ POPP S1P
+ POPP S0P
POPP S2P
rts