aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2016-04-04Merge branch 'bjorn/erts/clang-opt'Björn Gustavsson
* bjorn/erts/clang-opt: Fix unsafe transformation of apply/3 with fixed arguments
2016-04-04Merge branch 'egil/erts/fix-flatmap-get/OTP-13459'Björn-Egil Dahlberg
* egil/erts/fix-flatmap-get/OTP-13459: erts: Don't search for non-existing Map keys twice
2016-04-01erts: Don't search for non-existing Map keys twiceBjörn-Egil Dahlberg
* For maps:get/2,3 and maps:find/2, searching for an immediate key, e.g. an atom, the search was performed twice if the key did not exist in the map.
2016-04-01Merge branch 'rickard/proc-free-fix/OTP-13446'Rickard Green
* rickard/proc-free-fix/OTP-13446: Fix bad refc management of process struct Conflicts: erts/emulator/beam/erl_process.c
2016-03-31Fix bad refc management of process structRickard Green
2016-03-31Fix unsafe transformation of apply/3 with fixed argumentsBjörn Gustavsson
62473daf introduced an unsafe optimization in the loader. See the comments in the test case for an explanation of the problem.
2016-03-30erts: Fix "hanging" VM caused by exiting tty_sl driverSverker Eriksson
Bug introduced on master in a31eab5469b7740d.
2016-03-29Merge branch 'lukas/erts/etp-bigendian-pid-fix'Lukas Larsson
* lukas/erts/etp-bigendian-pid-fix: erts: Fix etp pid print on big endian
2016-03-29Merge branch 'lukas/erts/enif_trace_functions/OTP-13442'Lukas Larsson
* lukas/erts/enif_trace_functions/OTP-13442: erts: Fix bug in enif_send erts: Fix windows nif port tests erts: Fix bug in enif_term_to_binary erts: Remove printout when dec_term fails in DEBUG erts: Polish erl_nif docs erts: Improve enif_binary_to_term erts: Add enif_port_command erts: Add enif_term_to_binary and enif_binary_to_term erts: Add enif_is_process/port_alive erts: Add enif_cpu/now_time and enif_make_unique_integer
2016-03-29erts: Fix bug in enif_sendSverker Eriksson
Let cache_env() set env->heap_frag to same as MBUF(p) as it is in any other case.
2016-03-29erts: Fix windows nif port testsLukas Larsson
2016-03-29erts: Fix bug in enif_term_to_binarySverker Eriksson
Wait until after dec_term and factory_close to do cache_env(), otherwise we will cache the wrong state.
2016-03-29erts: Remove printout when dec_term fails in DEBUGSverker Eriksson
2016-03-29erts: Polish erl_nif docsSverker Eriksson
2016-03-29erts: Improve enif_binary_to_termSverker Eriksson
* Accept a raw data buffer instead of ErlNifBinary * Accept option ERL_NIF_BIN2TERM_SAFE * Return number of read bytes
2016-03-29erts: Add enif_port_commandLukas Larsson
2016-03-29erts: Add enif_term_to_binary and enif_binary_to_termLukas Larsson
2016-03-29erts: Add enif_is_process/port_aliveLukas Larsson
2016-03-29erts: Add enif_cpu/now_time and enif_make_unique_integerLukas Larsson
2016-03-29Merge branch 'rickard/improve-psd/OTP-13428'Rickard Green
* rickard/improve-psd/OTP-13428: Improve process/port specific data management
2016-03-29Merge branch 'rickard/delayed-gc-fix'Rickard Green
* rickard/delayed-gc-fix: Allow delayed gc while scheduled out
2016-03-29Merge branch 'rickard/port-sig-dropped-fix/OTP-13424'Rickard Green
* rickard/port-sig-dropped-fix/OTP-13424: Fix implementation of dropped signal to port
2016-03-29Merge branch 'lukas/erts/inline_tagvaldef/OTP-13440'Lukas Larsson
* lukas/erts/inline_tagvaldef/OTP-13440: erts: inline tag_val_def
2016-03-29erts: inline tag_val_defLukas Larsson
The tag_val_def function was called and multiple switch statements had to be traversed in term.c, and then a big switch in the calling code to branch on the term types. By inlining the switches are merged by the compiler and a lot fewer branches have to be taken. Benchmarks show that this increases performance of enc_term by as much as 10%.
2016-03-29Merge branch 'lukas/erts/fix_pthread_setname_osx/OTP-13439'Lukas Larsson
* lukas/erts/fix_pthread_setname_osx/OTP-13439: erts: Fix pthread_setname_np warning on osx
2016-03-29Merge branch 'lukas/erts/low_write_freq_darwin/OTP-12345'Lukas Larsson
* lukas/erts/low_write_freq_darwin/OTP-12345: erts: Fix LOW_WRITE section for non llvm os x compilation
2016-03-24Improve process/port specific data managementRickard Green
2016-03-24erts: Fix etp pid print on big endianLukas Larsson
2016-03-21Merge branch 'sverk/wait_for_deallocations'Sverker Eriksson
2016-03-21Merge branch 'bjorn/optimize-start-up/OTP-13368'Björn Gustavsson
* bjorn/optimize-start-up/OTP-13368: Update preloaded modules init: Load modules in parallel using the new loader BIFs systools_make: Add commonly used modules to mandatory_modules/0 compile: Pre-load compiler modules when invoked from 'erlc'
2016-03-21Merge branch 'bjorn/macosx-configure'Björn Gustavsson
* bjorn/macosx-configure: configure: Remove obsolete --enable-darwin-* options
2016-03-21Merge branch 'egil/fix-ttsl_drv-log'Björn-Egil Dahlberg
* egil/fix-ttsl_drv-log: Fix ttsl_drv logging without TERMCAP
2016-03-18Fix implementation of dropped signal to portRickard Green
2016-03-18Merge branch 'lukas/erts/scheduler_SUITE_compile_win/OTP-13428'Lukas Larsson
* lukas/erts/scheduler_SUITE_compile_win/OTP-13428: Fix dirty scheduler tc on windows
2016-03-18Merge branch 'lukas/erts/fix-vsyslog-freebsd/OTP-13427'Lukas Larsson
* lukas/erts/fix-vsyslog-freebsd/OTP-13427: erts: Fix run_erl syslog prototypes for freebsd Conflicts: erts/etc/unix/run_erl.c
2016-03-18Merge branch 'lukas/erts/fix_scheduler_suspend/ERL-94/PR-978/OTP-13425'Lukas Larsson
* lukas/erts/fix_scheduler_suspend/ERL-94/PR-978/OTP-13425: erts: Fix install of suspend handler Conflicts: erts/emulator/sys/unix/erl_unix_sys.h erts/emulator/sys/unix/sys.c
2016-03-18erts: Fix pthread_setname_np warning on osxLukas Larsson
2016-03-17Allow delayed gc while scheduled outRickard Green
2016-03-17configure: Remove obsolete --enable-darwin-* optionsBjörn Gustavsson
Remove the options: --enable-darwin-universal --enable-darwin-64bit The --enable-darwin-universal option turns on universal binaries (Intel/PPC). It does not work on modern releases of OS X, and OTP 19 will most not likely build on an OS X release that still supports universal builds. The --enable-darwin-64bit option is not needed, because 64-bit builds are default on modern OS X releases. There is also the generic --enable-m64-build option.
2016-03-17Update preloaded modulesBjörn Gustavsson
2016-03-17init: Load modules in parallel using the new loader BIFsBjörn Gustavsson
Use erlang:prepare_loading/1 and erlang:finish_loading/1 to load modules in parallel to potentially decrease start-up times.
2016-03-17Merge branch 'bjorn/kernel/code_server-normalized-paths/OTP-13410'Björn Gustavsson
* bjorn/kernel/code_server-normalized-paths/OTP-13410: code_server: Normalize the pathnames for all loaded modules Update preloaded modules init: Correct spec for fetch_loaded/1
2016-03-16erts: Fix LOW_WRITE section for non llvm os x compilationLukas Larsson
2016-03-16Take out (parts of) broken fp exception support for MacOS XBjörn Gustavsson
Floating-point exception support on MacOS X has never been especially reliable, and has therefore been disabled by default for a long time. The fpe support is now broken. Therefore, take out the unnecessary test for modern mcontext in configure (whatever that means) and the associated code in sys_float.c. Add #error directives to sys_float.c to make it clear that fpe is not supported. It seems to risky to mess with the mess of #ifdef's, so we will not attempt to remove all fpe support code for MacOS X.
2016-03-16Update preloaded modulesBjörn Gustavsson
2016-03-16init: Correct spec for fetch_loaded/1Björn Gustavsson
fetch_loaded/1 returns a list of tuples, not a list of atoms.
2016-03-15Fix ttsl_drv logging without TERMCAPBjörn-Egil Dahlberg
2016-03-15erts: Fix erts_debug:set_internal_state(wait,deallocations)Sverker Eriksson
that could hang if concurrent deallocations was initiated.
2016-03-15configure.in: Fix compilation error in ethread.cBjörn Gustavsson
3121171f56c2 made warnings for missing prototypes into compilation errors. That broke building on MacOS X, because prototypes for the pthread_getname_np() and pthread_setname_np() functions included by ethread.c are missing. The prototypes for those functions *are* located in pthread.h, but are not included if _XOPEN_SOURCE is defined. Therefore, we must undefine _XOPEN_SOURCE. 6e606582a6 is the commit that started to define _XOPEN_SOURCE on MacOS X in order to mend floating-point exceptions. Since fp exceptions again are broken and disabled by default, it is safe to remove the definition of _XOPEN_SOURCE.
2016-03-15run_erl: Don't define _XOPEN_SOURCE on OS XBjörn Gustavsson
On MacOS X, defining _XOPEN_SOURCE usually *removes* features from header files. Therefore, we should not set _XOPEN_SOURCE to 600 since that will remove the prototype for vsyslog(). Setting it to an empty value or not including it will ensure that the vsyslog() prototype is included.