projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make -Odph imply -fsimplifier-phases=3
[ghc-hetmet.git]
/
includes
/
Regs.h
diff --git
a/includes/Regs.h
b/includes/Regs.h
index
cf083c9
..
c219838
100644
(file)
--- a/
includes/Regs.h
+++ b/
includes/Regs.h
@@
-23,6
+23,7
@@
#define REGS_H
typedef struct {
#define REGS_H
typedef struct {
+ StgWord stgEagerBlackholeInfo;
StgFunPtr stgGCEnter1;
StgFunPtr stgGCFun;
} StgFunTable;
StgFunPtr stgGCEnter1;
StgFunPtr stgGCFun;
} StgFunTable;
@@
-132,7
+133,6
@@
typedef struct StgRegTable_ {
#define SAVE_SpLim (CurrentTSO->splim)
#define SAVE_Hp (BaseReg->rHp)
#define SAVE_SpLim (CurrentTSO->splim)
#define SAVE_Hp (BaseReg->rHp)
-#define SAVE_HpLim (BaseReg->rHpLim)
#define SAVE_CurrentTSO (BaseReg->rCurrentTSO)
#define SAVE_CurrentNursery (BaseReg->rCurrentNursery)
#define SAVE_CurrentTSO (BaseReg->rCurrentTSO)
#define SAVE_CurrentNursery (BaseReg->rCurrentNursery)
@@
-348,7
+348,7
@@
GLOBAL_REG_DECL(P_,Hp,REG_Hp)
#endif
#if defined(REG_HpLim) && !defined(NO_GLOBAL_REG_DECLS)
#endif
#if defined(REG_HpLim) && !defined(NO_GLOBAL_REG_DECLS)
-GLOBAL_REG_DECL(P_,HpLim,REG_HpLim)
+#error HpLim cannot be in a register
#else
#define HpLim (BaseReg->rHpLim)
#endif
#else
#define HpLim (BaseReg->rHpLim)
#endif
@@
-397,10
+397,11
@@
GLOBAL_REG_DECL(bdescr *,HpAlloc,REG_HpAlloc)
-------------------------------------------------------------------------- */
-------------------------------------------------------------------------- */
-#define FunReg ((StgFunTable *)((void *)BaseReg - sizeof(StgFunTable)))
+#define FunReg ((StgFunTable *)((void *)BaseReg - STG_FIELD_OFFSET(struct PartCapability_, r)))
-#define stg_gc_enter_1 (FunReg->stgGCEnter1)
-#define stg_gc_fun (FunReg->stgGCFun)
+#define stg_EAGER_BLACKHOLE_info (FunReg->stgEagerBlackholeInfo)
+#define stg_gc_enter_1 (FunReg->stgGCEnter1)
+#define stg_gc_fun (FunReg->stgGCFun)
/* -----------------------------------------------------------------------------
For any registers which are denoted "caller-saves" by the C calling
/* -----------------------------------------------------------------------------
For any registers which are denoted "caller-saves" by the C calling
@@
-568,14
+569,6
@@
GLOBAL_REG_DECL(bdescr *,HpAlloc,REG_HpAlloc)
#define CALLER_RESTORE_Hp /* nothing */
#endif
#define CALLER_RESTORE_Hp /* nothing */
#endif
-#ifdef CALLER_SAVES_HpLim
-#define CALLER_SAVE_HpLim SAVE_HpLim = HpLim;
-#define CALLER_RESTORE_HpLim HpLim = SAVE_HpLim;
-#else
-#define CALLER_SAVE_HpLim /* nothing */
-#define CALLER_RESTORE_HpLim /* nothing */
-#endif
-
#ifdef CALLER_SAVES_Base
#ifdef THREADED_RTS
#error "Can't have caller-saved BaseReg with THREADED_RTS"
#ifdef CALLER_SAVES_Base
#ifdef THREADED_RTS
#error "Can't have caller-saved BaseReg with THREADED_RTS"
@@
-642,7
+635,6
@@
GLOBAL_REG_DECL(bdescr *,HpAlloc,REG_HpAlloc)
CALLER_SAVE_Sp \
CALLER_SAVE_SpLim \
CALLER_SAVE_Hp \
CALLER_SAVE_Sp \
CALLER_SAVE_SpLim \
CALLER_SAVE_Hp \
- CALLER_SAVE_HpLim \
CALLER_SAVE_CurrentTSO \
CALLER_SAVE_CurrentNursery \
CALLER_SAVE_Base
CALLER_SAVE_CurrentTSO \
CALLER_SAVE_CurrentNursery \
CALLER_SAVE_Base
@@
-671,7
+663,6
@@
GLOBAL_REG_DECL(bdescr *,HpAlloc,REG_HpAlloc)
CALLER_RESTORE_Sp \
CALLER_RESTORE_SpLim \
CALLER_RESTORE_Hp \
CALLER_RESTORE_Sp \
CALLER_RESTORE_SpLim \
CALLER_RESTORE_Hp \
- CALLER_RESTORE_HpLim \
CALLER_RESTORE_CurrentTSO \
CALLER_RESTORE_CurrentNursery
CALLER_RESTORE_CurrentTSO \
CALLER_RESTORE_CurrentNursery