aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/global.h
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2017-01-23 17:37:49 +0100
committerSverker Eriksson <[email protected]>2017-01-23 17:37:49 +0100
commitadce9147ba242a8aef7d10cbbe8e4375ecdff0aa (patch)
tree688710d8612f621f7bcec662d1cf6f6fc5804ee3 /erts/emulator/beam/global.h
parent3f5530bf1ec283bbb8fd75e57947fe3218148ca1 (diff)
parent9e862df2bf26b9b1d79ba3b447945b7c0612e3d0 (diff)
downloadotp-adce9147ba242a8aef7d10cbbe8e4375ecdff0aa.tar.gz
otp-adce9147ba242a8aef7d10cbbe8e4375ecdff0aa.tar.bz2
otp-adce9147ba242a8aef7d10cbbe8e4375ecdff0aa.zip
Merge branch 'sverker/ASSERT_IN_ENV'
* sverker/ASSERT_IN_ENV: erts: Add macro ERTS_PROC_LOCKS_HIGHER_THAN erts: Cleanup and extra assertions in nif_SUITE.c erts: Cleanup enif_make_reverse_list erts: Add assertions for correct ErlNifEnv erts: Make erts_dbg_within_proc available # Conflicts: # erts/emulator/beam/erl_gc.h
Diffstat (limited to 'erts/emulator/beam/global.h')
-rw-r--r--erts/emulator/beam/global.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/erts/emulator/beam/global.h b/erts/emulator/beam/global.h
index d5ca3b04eb..c39ac2f7ec 100644
--- a/erts/emulator/beam/global.h
+++ b/erts/emulator/beam/global.h
@@ -45,6 +45,9 @@
struct enif_func_t;
+#ifdef DEBUG
+# define ERTS_NIF_ASSERT_IN_ENV
+#endif
struct enif_environment_t /* ErlNifEnv */
{
struct erl_module_nif* mod_nif;
@@ -57,6 +60,10 @@ struct enif_environment_t /* ErlNifEnv */
int exception_thrown; /* boolean */
Process *tracee;
int exiting; /* boolean (dirty nifs might return in exiting state) */
+
+#ifdef ERTS_NIF_ASSERT_IN_ENV
+ int dbg_disable_assert_in_env;
+#endif
};
extern void erts_pre_nif(struct enif_environment_t*, Process*,
struct erl_module_nif*, Process* tracee);