aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/global.h
diff options
context:
space:
mode:
authorJohn Högberg <[email protected]>2019-04-10 06:17:42 +0200
committerJohn Högberg <[email protected]>2019-04-10 06:17:42 +0200
commit9928e4ba082435d6f77ea2239b9529d25353f4b9 (patch)
tree7b1dc20169ea4e2f1bfd220f76b2d358a81b95a7 /erts/emulator/beam/global.h
parent59727fed0ca0ca5e432590a01889d79ac21bda7d (diff)
parent0b6006dc4d2c9818c8d91ee364ed7d6aa660ed76 (diff)
downloadotp-9928e4ba082435d6f77ea2239b9529d25353f4b9.tar.gz
otp-9928e4ba082435d6f77ea2239b9529d25353f4b9.tar.bz2
otp-9928e4ba082435d6f77ea2239b9529d25353f4b9.zip
Merge branch 'john/merge-re-replace-fix'
* john/merge-re-replace-fix: erts: Skip ERTS_NOINLINE on non-GCC-compatible compilers cleanup: beam_emu.c: use ERTS_NOINLINE instead of NOINLINE stdlib: fix re:replace on LTO builds
Diffstat (limited to 'erts/emulator/beam/global.h')
-rw-r--r--erts/emulator/beam/global.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/erts/emulator/beam/global.h b/erts/emulator/beam/global.h
index f9bbe4167f..4c8d3d3dbe 100644
--- a/erts/emulator/beam/global.h
+++ b/erts/emulator/beam/global.h
@@ -1216,10 +1216,11 @@ Uint64 erts_timestamp_millis(void);
Export* erts_find_function(Eterm, Eterm, unsigned int, ErtsCodeIndex);
-void *erts_calc_stacklimit(char *prev_c, UWord stacksize);
-int erts_check_below_limit(char *ptr, char *limit);
-int erts_check_above_limit(char *ptr, char *limit);
-void *erts_ptr_id(void *ptr);
+/* ERTS_NOINLINE prevents link-time optimization across modules */
+void *erts_calc_stacklimit(char *prev_c, UWord stacksize) ERTS_NOINLINE;
+int erts_check_below_limit(char *ptr, char *limit) ERTS_NOINLINE;
+int erts_check_above_limit(char *ptr, char *limit) ERTS_NOINLINE;
+void *erts_ptr_id(void *ptr) ERTS_NOINLINE;
Eterm store_external_or_ref_in_proc_(Process *, Eterm);
Eterm store_external_or_ref_(Uint **, ErlOffHeap*, Eterm);