aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam
diff options
context:
space:
mode:
authorBjörn-Egil Dahlberg <[email protected]>2012-12-03 18:31:02 +0100
committerBjörn-Egil Dahlberg <[email protected]>2012-12-14 15:12:59 +0100
commite976eb64736435b4c79bb53947a77d8bc04a0481 (patch)
tree9fddd5c95bf6136907bb7505b114b86d9e064647 /erts/emulator/beam
parent4c4149e3ec93a2c501f1ca4bdeb3a70940df5b27 (diff)
downloadotp-e976eb64736435b4c79bb53947a77d8bc04a0481.tar.gz
otp-e976eb64736435b4c79bb53947a77d8bc04a0481.tar.bz2
otp-e976eb64736435b4c79bb53947a77d8bc04a0481.zip
erts: Reintroduce mseg options amcbf and rmcbf
Used with new sbc cache
Diffstat (limited to 'erts/emulator/beam')
-rw-r--r--erts/emulator/beam/erl_alloc.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_alloc.c b/erts/emulator/beam/erl_alloc.c
index b9c3b43498..1fc36fbd26 100644
--- a/erts/emulator/beam/erl_alloc.c
+++ b/erts/emulator/beam/erl_alloc.c
@@ -1326,12 +1326,25 @@ handle_args(int *argc, char **argv, erts_alc_hndl_args_init_t *init)
handle_au_arg(&init->ll_alloc, &argv[i][3], argv, &i);
break;
case 'M':
- if (has_prefix("mcs", argv[i]+3)) {
+ if (has_prefix("amcbf", argv[i]+3)) {
+#if HAVE_ERTS_MSEG
+ init->mseg.amcbf =
+#endif
+ get_kb_value(argv[i]+8, argv, &i);
+ }
+ else if (has_prefix("rmcbf", argv[i]+3)) {
+#if HAVE_ERTS_MSEG
+ init->mseg.rmcbf =
+#endif
+ get_amount_value(argv[i]+8, argv, &i);
+ }
+ else if (has_prefix("mcs", argv[i]+3)) {
#if HAVE_ERTS_MSEG
init->mseg.mcs =
#endif
get_amount_value(argv[i]+6, argv, &i);
- } else {
+ }
+ else {
bad_param(param, param+2);
}
break;