diff options
author | Stan Shebs <shebs@apple.com> | 2004-12-09 18:25:15 +0000 |
---|---|---|
committer | Stan Shebs <shebs@gcc.gnu.org> | 2004-12-09 18:25:15 +0000 |
commit | dc4d6ffa26ba4902c278fe0e11053ad4813a762c (patch) | |
tree | 1f1bc5c17b0dd7a123c0c9718c6193ffd68a420a /gcc/config/rs6000/darwin-fpsave.asm | |
parent | 366e6bd1733bb53b0f555ea4365e9d16f24fa143 (diff) | |
download | gcc-dc4d6ffa26ba4902c278fe0e11053ad4813a762c.tar.gz |
darwin-asm.h: New file, 32/64-bit assembly macros formerly in darwin-tramp.asm.
* config/rs6000/darwin-asm.h: New file, 32/64-bit assembly macros
formerly in darwin-tramp.asm.
* config/rs6000/darwin-tramp.asm: Include darwin-asm.h.
* config/rs6000/darwin-fpsave.asm: Use 32/64-bit macros.
* config/rs6000/t-darwin: Add dependencies.
From-SVN: r91960
Diffstat (limited to 'gcc/config/rs6000/darwin-fpsave.asm')
-rw-r--r-- | gcc/config/rs6000/darwin-fpsave.asm | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/gcc/config/rs6000/darwin-fpsave.asm b/gcc/config/rs6000/darwin-fpsave.asm index c8c646b09db..4e6e2fa86d3 100644 --- a/gcc/config/rs6000/darwin-fpsave.asm +++ b/gcc/config/rs6000/darwin-fpsave.asm @@ -40,10 +40,12 @@ MORAL: DO NOT MESS AROUND WITH THESE FUNCTIONS! */ +#include "darwin-asm.h" + .text .align 2 -/* saveFP saves R0 -- assumed to be the callers LR -- to 8(R1). */ +/* saveFP saves R0 -- assumed to be the callers LR -- to 8/16(R1). */ .private_extern saveFP saveFP: @@ -65,10 +67,10 @@ saveFP: stfd f29,-24(r1) stfd f30,-16(r1) stfd f31,-8(r1) - stw r0,8(r1) + stg r0,SAVED_LR_OFFSET(r1) blr -/* restFP restores the caller`s LR from 8(R1). Note that the code for +/* restFP restores the caller`s LR from 8/16(R1). Note that the code for this starts at the offset of F30 restoration, so calling this routine in an attempt to restore only F31 WILL NOT WORK (it would be a stupid thing to do, anyway.) */ @@ -92,7 +94,7 @@ restFP: lfd f28,-32(r1) lfd f29,-24(r1) /* <OFFSET OF F30 RESTORE> restore callers LR */ - lwz r0,8(r1) + lg r0,SAVED_LR_OFFSET(r1) lfd f30,-16(r1) /* and prepare for return to caller */ mtlr r0 |