aboutsummaryrefslogtreecommitdiffstats
path: root/lib/hipe/test/bs_SUITE_data/bs_construct.erl
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2018-01-15 20:44:34 +0100
committerSverker Eriksson <[email protected]>2018-01-15 20:44:34 +0100
commit0e448a62f46df4dad55c3bc724448e80a4d0048c (patch)
treed3fdfb47377455c6d37018888daabc3ec25ce71a /lib/hipe/test/bs_SUITE_data/bs_construct.erl
parent69e398bc862b9c6d2aa7d551d137f117493f9ea5 (diff)
parentf496717590d610bd08f02bec39f8e97886c68729 (diff)
downloadotp-0e448a62f46df4dad55c3bc724448e80a4d0048c.tar.gz
otp-0e448a62f46df4dad55c3bc724448e80a4d0048c.tar.bz2
otp-0e448a62f46df4dad55c3bc724448e80a4d0048c.zip
Merge branch 'sverker/cuddle-big-bin-tests' into maint
Diffstat (limited to 'lib/hipe/test/bs_SUITE_data/bs_construct.erl')
-rw-r--r--lib/hipe/test/bs_SUITE_data/bs_construct.erl13
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/hipe/test/bs_SUITE_data/bs_construct.erl b/lib/hipe/test/bs_SUITE_data/bs_construct.erl
index b9e7d93570..aa85626857 100644
--- a/lib/hipe/test/bs_SUITE_data/bs_construct.erl
+++ b/lib/hipe/test/bs_SUITE_data/bs_construct.erl
@@ -279,13 +279,22 @@ bad_floats() ->
%% (incorrectly) signed.
huge_binaries() ->
- AlmostIllegal = id(<<0:(id((1 bsl 32)-8))>>),
case erlang:system_info(wordsize) of
- 4 -> huge_binaries_32(AlmostIllegal);
+ 4 ->
+ Old = erts_debug:set_internal_state(available_internal_state, true),
+ case erts_debug:set_internal_state(binary, (1 bsl 29)-1) of
+ false ->
+ io:format("\nNot enough memory to create 512Mb binary\n",[]);
+ Bin->
+ huge_binaries_32(Bin)
+ end,
+ erts_debug:set_internal_state(available_internal_state, Old);
+
8 -> ok
end,
garbage_collect(),
id(<<0:(id((1 bsl 31)-1))>>),
+ garbage_collect(),
id(<<0:(id((1 bsl 30)-1))>>),
garbage_collect(),
ok.