aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-05-17erts: Move max_heap_size field so that ErLLVM works againLukas Larsson
2016-05-17Merge branch 'lukas/erts/re-openbsd-gcc-bug/OTP-13602'Lukas Larsson
* lukas/erts/re-openbsd-gcc-bug/OTP-13602: erts: Fix OpenBSD gcc compiler bug in re code
2016-05-17erts: Fix OpenBSD gcc compiler bug in re codeLukas Larsson
The OpenBSD 5.8 gcc compiler emits erroneous code which results in the re:run function behaving badly, though strangely enough it does not segfault the vm. This fix moves code around a bit in order to make gcc emit correct code.
2016-05-17Merge branch 'lukas/erts/tracing/fix-non-smp-trace/OTP-13503'Lukas Larsson
* lukas/erts/tracing/fix-non-smp-trace/OTP-13503: erts: Fix erl_tracer xml doc errors erts: Fix bug when tracing in non-smp non-scheduler thread
2016-05-17erts: Fix erl_tracer xml doc errorsLukas Larsson
2016-05-17erts: Fix bug when tracing in non-smp non-scheduler threadLukas Larsson
2016-05-17Merge branch 'dgud/wx/cmd-queue-bug'Dan Gudmundsson
* dgud/wx/cmd-queue-bug: Fix compilation warning wx: Fix generated defines in gl.hrl wx: Fix driver command queue
2016-05-17Merge branch 'jrobhoward/os_mon/fix-freebsd_get_os_wordsize/PR-1039/OTP-13601'Björn-Egil Dahlberg
* jrobhoward/os_mon/fix-freebsd_get_os_wordsize/PR-1039/OTP-13601: Fix memsup:get_os_wordsize() on 64-bit Linux PPC os_mon: Test wordsize of memsup:get_os_wordsize/0 Fix memsup:get_os_wordsize() on 64-bit FreeBSD
2016-05-17Merge remote-tracking branch 'origin/ingela/public_key/tests'Ingela Anderton Andin
* origin/ingela/public_key/tests: public_key: Remove test_server config macros and unsed hooks
2016-05-17Merge branch 'egil/egd/improve-line/OTP-13598'Björn-Egil Dahlberg
* egil/egd/improve-line/OTP-13598: egd: Save images during tests egd: Use anti-aliasing for lines egd: Add more line tests egd: Add line thickness algorithm for lines egd: Use maps to map height to line spans egd: Refactor precompile objects egd: Refactor object_on_line egd: Refactor primitives style egd: Improve span calculation
2016-05-17Merge branch 'ingela/inets/dialyzer'Ingela Anderton Andin
* ingela/inets/dialyzer: inets: httpd_util:split does not return {error, Reason}
2016-05-16Merge branch 'hairyhum/eldap/ignore_tcp_errors_at_close/PR-1048/OTP-13590'Hans Nilsson
* hairyhum/eldap/ignore_tcp_errors_at_close/PR-1048/OTP-13590: indentation Ignore tcp errors during close request to eldap
2016-05-16Merge branch 'hans/ssh/badmatch'Hans Nilsson
2016-05-16inets: httpd_util:split does not return {error, Reason}Ingela Anderton Andin
Fix return value handling that was missed when code was refactored to use re-module.
2016-05-16Fix memsup:get_os_wordsize() on 64-bit Linux PPCBjörn-Egil Dahlberg
2016-05-16os_mon: Test wordsize of memsup:get_os_wordsize/0Björn-Egil Dahlberg
Simple test against erlang:system_info({wordsize,external}).
2016-05-16Merge branch 'mururu/os_mon/cpu-sup-osx/PR-1049/OTP-13597'Björn-Egil Dahlberg
* mururu/os_mon/cpu-sup-osx/PR-1049/OTP-13597: os_mon: Implement cpu_sup:util/0,1 on OSX
2016-05-16Merge branch 'egil/common_test/fix-doc-lint'Björn-Egil Dahlberg
* egil/common_test/fix-doc-lint: common_test: Fix doc tags of ct_netconfc
2016-05-16Merge branch 'ingela/ssl/cipher-suites-refactor'Ingela Anderton Andin
* ingela/ssl/cipher-suites-refactor: ssl: Refactor to make code easier to understand
2016-05-16Fix compilation warningDan Gudmundsson
2016-05-16Merge branch 'kostis/dialyzer/opaque_type/OTP-13586/PR-1047'Hans Bolinder
* kostis/dialyzer/opaque_type/OTP-13586/PR-1047: Declare the erl_types:var_table() type as opaque
2016-05-16Update primary bootstrapBjörn Gustavsson
2016-05-16Merge branch 'bjorn/compiler/beam_bool/ERL-143'Björn Gustavsson
* bjorn/compiler/beam_bool/ERL-143: Eliminate crash in beam_bool Add beam_bool_SUITE Add missing test cases in andor_SUITE and beam_block_SUITE
2016-05-16Merge branch 'bjorn/compiler/misc'Björn Gustavsson
* bjorn/compiler/misc: beam_utils: Correct break in conventions for split_even/1 and join_even/1 beam_utils: Remove clause checking for illegal set/4 instruction beam_utils: Simplify the return value for check_liveness/3 beam_utils: Remove unused code beam_utils: Let code_at/2 fail if the label does not exist beam_utils: Remove unused handling of try/3 in live_opt/4 beam_utils: Correct translation of BIFs to tests core_pp: Remove uncovered clause in is_simple_term/1 core_pp: Crash on unhandled Core Erlang forms core_pp: Remove unused clauses in unindent/3 to improve coverage core_pp: Remove useless try...catch core_pp: Simplify printing of map literals compile_SUITE: Cover numeric variable names in core_pp compile_SUITE: Eliminate clones when re-compiling test suites test_lib: Add is_cloned_mod/1 trycatch_SUITE: Cover the only uncovered line in sys_core_fold test_lib: Correct calculation of number of processes
2016-05-16Eliminate crash in beam_boolBjörn Gustavsson
beam_bool would crash when attempting to optimize BEAM code similar to this code: bif '=:=' Reg1 SomeValue => y(0) bif '=:=' Reg2 {atom,true} => x(2) bif '=:=' Reg3 {atom,true} => x(3) bif 'or' x(2) x(3) => x(2) is_eq_exact Fail x(2) {atom,true} The problem is that the first instruction that assigns a value to a Y register. beam_bool:ssa_assign/2 will not accept a Y register argument. We could change ssa_assign/2 to accept a Y register, but that would only cause the entire optimization to be rejected later because the Y register is alive in the code that follows. Therefore, a better solution is to modify extend_block/3 so that the instruction that assign to Y registers are not added to the block. That is, the optimizer will only operate on the following code: bif '=:=' Reg2 {atom,true} => x(2) bif '=:=' Reg3 {atom,true} => x(3) bif 'or' x(2) x(3) => x(2) is_eq_exact Fail x(2) {atom,true} Usually the optimization will succeed, rewriting the four instructions to a select_val instruction. Assembly code such as the above can be produced by code similar to: Y = Something == SomethingElse, case Y of Condition; OtherCondition -> . . . end, . . ., Y. Reported-by: http://bugs.erlang.org/browse/ERL-143 Reported-by: José Valim
2016-05-16Add beam_bool_SUITEBjörn Gustavsson
It's time that we have a dedicated test suite for beam_bool.
2016-05-16Add missing test cases in andor_SUITE and beam_block_SUITEBjörn Gustavsson
Two test cases were not actually run. Even if their main purpose is to ensure that the compiler doesn't crash, we always try to also run the test case (when practial) to also ensure that the generated code is correct.
2016-05-15egd: Save images during testsBjörn-Egil Dahlberg
2016-05-15egd: Use anti-aliasing for linesBjörn-Egil Dahlberg
* Also remove old line algorithm
2016-05-14egd: Add more line testsBjörn-Egil Dahlberg
Add images to common_test logs.
2016-05-14egd: Add line thickness algorithm for linesBjörn-Egil Dahlberg
2016-05-13common_test: Fix doc tags of ct_netconfcBjörn-Egil Dahlberg
2016-05-13Merge branch 'egil/erts/nif-format_term/OTP-13580'Björn-Egil Dahlberg
* egil/erts/nif-format_term/OTP-13580: runtime_tools: Change erts_snprintf to enif_snprintf erts: Document enif_snprintf erts: Add tests for enif_snprintf erts: Add enif_snprintf Conflicts: erts/emulator/beam/erl_nif_api_funcs.h
2016-05-13ssh: badmatch in connection_handler (badly renamed variable)Hans Nilsson
2016-05-13Merge branch 'egil/tools/fix-unmatched_return/OTP-13595'Björn-Egil Dahlberg
* egil/tools/fix-unmatched_return/OTP-13595: xref: Fix unmatched return warnings tags: Fix unmatched return warnings lcnt: Fix unmatched return warnings fprof: Fix unmatched return warnings fprof: Fix unmatched return warnings eprof: Fix unmatched return warnings cover: Fix unmatched return warnings
2016-05-13Merge branch 'egil/runtime_tools/fix-unmatched_return/OTP-13595'Björn-Egil Dahlberg
* egil/runtime_tools/fix-unmatched_return/OTP-13595: runtime_tools: Fix unmatched return warnings
2016-05-13Merge branch 'egil/os_mon/fix-unmatched_return/OTP-13595'Björn-Egil Dahlberg
* egil/os_mon/fix-unmatched_return/OTP-13595: os_mon: Fix unmatched return warnings
2016-05-13Merge branch 'egil/et/fix-doc-lint'Björn-Egil Dahlberg
* egil/et/fix-doc-lint: et: Fix linting documentation xml tags
2016-05-13Merge branch 'egil/runtime_tools/fix-doc-lint'Björn-Egil Dahlberg
* egil/runtime_tools/fix-doc-lint: runtime_tools: Fix tags of dbg reference manual runtime_tools: Fix tags of LTTng User's Guide
2016-05-13Merge branch 'egil/percept/fix-ug-doc'Björn-Egil Dahlberg
* egil/percept/fix-ug-doc: egd: Fix User's Guide lint
2016-05-13Merge branch 'egil/erts-epmd/modernize-tests'Björn-Egil Dahlberg
* egil/erts-epmd/modernize-tests: Eliminate use of doc and suite clauses Replace use of test_server:format/2 with io:format/2 Modernize use of timetraps Remove ?line macros
2016-05-13public_key: Remove test_server config macros and unsed hooksIngela Anderton Andin
2016-05-13beam_utils: Correct break in conventions for split_even/1 and join_even/1Björn Gustavsson
Exported functions in this file should appear at the top of the file. Also add missing spaces after commas.
2016-05-13beam_utils: Remove clause checking for illegal set/4 instructionBjörn Gustavsson
I can't remember that clause ever trigger during development. Remove it to eliminated an uncovered line.
2016-05-13beam_utils: Simplify the return value for check_liveness/3Björn Gustavsson
check_liveness/3 returns {unknown,State} if an instruction is not handled. All callers will handle 'unknown' the same way as 'used'. Therefore, we can simplify the code and improve the coverage if we return {used,State} instead of {unknown,State}.
2016-05-13beam_utils: Remove unused codeBjörn Gustavsson
2016-05-13beam_utils: Let code_at/2 fail if the label does not existBjörn Gustavsson
All callers only calls code_at/2 for existing labels and they don't handle the return value 'none'.
2016-05-13beam_utils: Remove unused handling of try/3 in live_opt/4Björn Gustavsson
30cc5c902d moved try/3 instruction inside blocks, so the clause for handling try/3 in live_opt/4 is never executed.
2016-05-13beam_utils: Correct translation of BIFs to testsBjörn Gustavsson
Two lines were never covered, because '[]' was used instead of 'nil'.
2016-05-13core_pp: Remove uncovered clause in is_simple_term/1Björn Gustavsson
The clause for handling #c_values{} in is_simple_term/1 is never executed. It can be safely removed, since there is a default clause that will return 'false' in the extremly unlikely event that a Without the clause, code such as: let <_v1,_v2> = <1,2> in {_v1,_v2} would be printed with an extra newline: let <_v1,_v2> = <1,2> in {_v1,_v2}