projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[project @ 1997-07-07 17:21:23 by andre]
[ghc-hetmet.git]
/
ghc
/
includes
/
COptWraps.lh
diff --git
a/ghc/includes/COptWraps.lh
b/ghc/includes/COptWraps.lh
index
27c862f
..
409693b
100644
(file)
--- a/
ghc/includes/COptWraps.lh
+++ b/
ghc/includes/COptWraps.lh
@@
-576,6
+576,13
@@
gets whatever it's after.
#define WRAPPER_NAME(f) /* nothing */
#define WRAPPER_NAME(f) /* nothing */
+#define SET_RETADDR(loc) \
+ __asm__ volatile ( \
+ "mflr 0\n" \
+ "\tst 0,%0" \
+ :"=m" (loc) :: "0");
+/* __asm__ volatile ("st %%r0, %0" : "=m" ((void *)(loc))); */
+
#define WRAPPER_SETUP(f,ignore1,ignore2) SaveAllStgContext();
/* we have to make sure the STG registers are restored.
#define WRAPPER_SETUP(f,ignore1,ignore2) SaveAllStgContext();
/* we have to make sure the STG registers are restored.