aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
2015-04-10Keep dirty schedulers from waking other schedulersSteve Vinoski
Prevent dirty schedulers from checking regular run queues and trying to wake up regular schedulers.
2015-04-09Merge branch 'sverk/maps-bin2term-eqhash-bug/12585'Sverker Eriksson
* sverk/maps-bin2term-eqhash-bug/12585: erts: Fix bug in map_from_list when keys clash in both value and hash erts: Fix bug in binary_to_term for big maps with 32 bit hash-clash
2015-04-08Merge branch 'sverk/refactor-encode-size/OTP-12585'Sverker Eriksson
* sverk/refactor-encode-size/OTP-12585: erts: Optimize insert and delete for big maps erts: Optimize == and /= for unequal big maps erts: Refactor encode_size_struct_int Conflicts: erts/emulator/beam/erl_map.c
2015-04-08Merge branch 'sverk/ets-grow-faulty-assert/OTP-12647'Sverker Eriksson
* sverk/ets-grow-faulty-assert/OTP-12647: erts: Fix ets bug in debug VM
2015-04-08erts: Fix ets bug in debug VMSverker Eriksson
Symptom: ASSERT(segtab[seg_ix] == NULL) in alloc_seg() fails. Remedy: Make sure we set segment pointer to NULL in free_seg() even when we switch to smaller segtab.
2015-04-08Merge branch 'sverk/valgrind-broken_halt'Sverker Eriksson
* sverk/valgrind-broken_halt: erts: Suppress valgrind for bif_SUITE:erlang_halt
2015-04-07erts: Fix bug in map_from_list when keys clash in both value and hashSverker Eriksson
Subtle bug in qsort callback. Cast from Sint to int does not retain sign.
2015-04-07erts: Fix bug in binary_to_term for big maps with 32 bit hash-clashSverker Eriksson
binary_to_term threw badarg as the "reject_dupkey" case in hashmap_from_unsored_array was always triggered when hash-clash was found as the first round in the loop compared the key with itself.
2015-04-01Merge branch 'egil/fix-maps-tmp-heap'Björn-Egil Dahlberg
* egil/fix-maps-tmp-heap: erts: Test deep Maps updates erts: Use halfword secure tmp heap erts: Remove unused tmp heap in make_internal_hash Conflicts: erts/emulator/test/map_SUITE.erl
2015-04-01Merge branch 'egil/fix-maps-from_list-size'Björn-Egil Dahlberg
* egil/fix-maps-from_list-size: erts: Strengthen Maps merge tests erts: Try to test deep Maps collision erts: Fix size bug in maps:from_list/1 BIF
2015-03-31erts: Test deep Maps updatesBjörn-Egil Dahlberg
2015-03-31erts: Use halfword secure tmp heapBjörn-Egil Dahlberg
2015-03-31erts: Remove unused tmp heap in make_internal_hashBjörn-Egil Dahlberg
2015-03-31erts: Strengthen Maps merge testsBjörn-Egil Dahlberg
2015-03-31erts: Try to test deep Maps collisionBjörn-Egil Dahlberg
Ensure maps:size/1 is correct.
2015-03-31erts: Fix size bug in maps:from_list/1 BIFBjörn-Egil Dahlberg
The wrong size was imprinted on maps with deep hash key collisions.
2015-03-31erts: Optimize insert and delete for big mapsSverker Eriksson
Do fast path without bit count for full internal nodes.
2015-03-30erts: Optimize == and /= for unequal big mapsSverker Eriksson
Bail out as soon as we find a diff between maps if we are not interested in term order.
2015-03-30erts: Refactor encode_size_struct_intSverker Eriksson
to handle the "start of list" case in one place and not seven. Note that this commit reverts (47d6fd3ccf35) back to using WSTACK and pushing raw pointers. We disable GC while yielding, so this should not be a problem.
2015-03-30erts: Suppress valgrind for bif_SUITE:erlang_haltSverker Eriksson
which does a deliberate deref of null pointer which is caught by a SEGV signal handler to resume crash dumping.
2015-03-30erts: Strengthen Maps testsBjörn-Egil Dahlberg
2015-03-30Merge branch 'egil/fix-maps-new_map-instruction'Björn-Egil Dahlberg
* egil/fix-maps-new_map-instruction: erts: Eliminate potential heap fragments after Map creation
2015-03-30Merge branch 'egil/fix-make_internal_hash-float'Björn-Egil Dahlberg
* egil/fix-make_internal_hash-float: erts: Add tests for internal_hash erts: Fix make_internal_hash for 0.0 vs -0.0
2015-03-30Merge branch 'egil/maps/tests'Björn-Egil Dahlberg
* egil/maps/tests: debugger: Strengthen Maps tests compiler: Strengthen Maps tests erts: Strengthen Maps tests
2015-03-27erts: Eliminate potential heap fragments after Map creationBjörn-Egil Dahlberg
2015-03-27erts: Add tests for internal_hashBjörn-Egil Dahlberg
2015-03-27erts: Fix make_internal_hash for 0.0 vs -0.0Björn-Egil Dahlberg
The internal_hash should produce the same hash value for identical terms, in this case 0.0 =:= -0.0.
2015-03-27Merge branch 'maint'Sverker Eriksson
Conflicts: lib/stdlib/src/stdlib.appup.src
2015-03-27Merge branch 'sverk/large-list_to_integer-bug/OTP-12624' into maintSverker Eriksson
* sverk/large-list_to_integer-bug/OTP-12624: erts: Fix bug in list_to_integer for very large strings
2015-03-27erts: Strengthen Maps testsBjörn-Egil Dahlberg
2015-03-27Merge branch 'dgud/erts/fix-driver-thread-name'Dan Gudmundsson
* dgud/erts/fix-driver-thread-name: Fix thread name from driver api
2015-03-27Merge branch 'egil/fix-make_internal_hash'Björn-Egil Dahlberg
* egil/fix-make_internal_hash: erts: Fix missing case in make_internal_hash
2015-03-26Merge branch 'sverk/hamt-encode-size-bug/OTP-12585'Sverker Eriksson
* sverk/hamt-encode-size-bug/OTP-12585: erts: Fix bug in term_to_binary size estimation for hamt erts: Optimize term_to_binary size estimation
2015-03-26erts: Fix missing case in make_internal_hashBjörn-Egil Dahlberg
2015-03-26Merge branch 'rickard/time_api/OTP-11997'Rickard Green
* rickard/time_api/OTP-11997: Misc fixes Conflicts: erts/preloaded/ebin/erlang.beam erts/preloaded/ebin/erts_internal.beam
2015-03-26Misc fixesRickard Green
2015-03-26Merge branch 'egil/maint/process_dictionary-initial-size/OTP-12535' into maintBjörn-Egil Dahlberg
* egil/maint/process_dictionary-initial-size/OTP-12535: erts: Document option 'hpds' erts: Enable command line argument for initial pd size
2015-03-26Merge branch 'egil/maps/refactor-tagscheme/OTP-12585'Björn-Egil Dahlberg
* egil/maps/refactor-tagscheme/OTP-12585: erts: Refactor Map - use multiple values ESTACK_PUSHN erts: GC needs the size even if the frag is not referenced Revert "hipe: Handle separate hashmap tag correctly" erts: Combine flat and hash maps under one unifying tag
2015-03-25erts: Fix bug in term_to_binary size estimation for hamtSverker Eriksson
2015-03-25erts: Optimize term_to_binary size estimationSverker Eriksson
for tuples and maps containing ascii strings (lists).
2015-03-25erts: Refactor Map - use multiple values ESTACK_PUSHNBjörn-Egil Dahlberg
2015-03-25erts: GC needs the size even if the frag is not referencedBjörn-Egil Dahlberg
2015-03-25Merge branch 'rickard/time_api/OTP-11997'Rickard Green
* rickard/time_api/OTP-11997: Fix erts_sys_hrtime() fallback
2015-03-25Fix erts_sys_hrtime() fallbackRickard Green
2015-03-25Merge branch 'rickard/time_api/OTP-11997'Rickard Green
* rickard/time_api/OTP-11997: Skip not updated test-cases Fixes and cleanup
2015-03-25Skip not updated test-casesRickard Green
2015-03-25Fixes and cleanupRickard Green
2015-03-25erts: Combine flat and hash maps under one unifying tagBjörn-Egil Dahlberg
2015-03-25Merge branch 'sverk/hamt-term2bin-bug/OTP-12585'Sverker Eriksson
* sverk/hamt-term2bin-bug/OTP-12585: erts: Optimize hashmap_get erts: Remove HAMT_SUBTAG_NODE_ARRAY erts: Fix bug in binary_to_term for hamt when yielding erts: Rename to flatmap_from_validated_list
2015-03-25erts: Fix bug in list_to_integer for very large stringsSverker Eriksson
list_to_integer(lists:duplicate(10000000,$0)). crashed due to overflow when calculating nr heap words.