aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_process.h
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2013-06-12 15:33:08 +0200
committerSverker Eriksson <[email protected]>2013-06-12 15:33:08 +0200
commit5abf95afb89eb6c2a93f68c08694710e23bab546 (patch)
tree523d017b1629989468f97af70eae1c192853f7b7 /erts/emulator/beam/erl_process.h
parentb16dc3553bb2c5618169ede09fe479d83f7bcf40 (diff)
parent1f8d9f43766fea0e706db8923075ab65a7677daf (diff)
downloadotp-5abf95afb89eb6c2a93f68c08694710e23bab546.tar.gz
otp-5abf95afb89eb6c2a93f68c08694710e23bab546.tar.bz2
otp-5abf95afb89eb6c2a93f68c08694710e23bab546.zip
Merge branch 'maint'
Diffstat (limited to 'erts/emulator/beam/erl_process.h')
-rw-r--r--erts/emulator/beam/erl_process.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_process.h b/erts/emulator/beam/erl_process.h
index 3c1edfad7a..973db65490 100644
--- a/erts/emulator/beam/erl_process.h
+++ b/erts/emulator/beam/erl_process.h
@@ -699,6 +699,14 @@ struct ErtsPendingSuspend_ {
#endif
+
+typedef struct ErlExtraRootSet_ ErlExtraRootSet;
+struct ErlExtraRootSet_ {
+ Eterm *objv;
+ Uint sz;
+ void (*cleanup)(ErlExtraRootSet *);
+};
+
/* Defines to ease the change of memory architecture */
# define HEAP_START(p) (p)->heap
# define HEAP_TOP(p) (p)->htop
@@ -792,6 +800,8 @@ struct process {
ErlMessageQueue msg; /* Message queue */
+ ErlExtraRootSet *extra_root; /* Used by trapping BIF's */
+
union {
ErtsBifTimer *bif_timers; /* Bif timers aiming at this process */
void *terminate;
@@ -1976,6 +1986,7 @@ erts_sched_poke(ErtsSchedulerSleepInfo *ssi)
}
}
+
#endif /* #if ERTS_GLB_INLINE_INCL_FUNC_DEF */
#endif /* #ifdef ERTS_SMP */