Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-01-31 | Merge branch 'maint' | Björn Gustavsson | |
* maint: Fix incorrect type interference of integer ranges Conflicts: lib/compiler/src/beam_type.erl | |||
2018-01-31 | Merge branch 'bjorn/compiler/fix-beam_type-bug/OTP-14898' into maint | Björn Gustavsson | |
* bjorn/compiler/fix-beam_type-bug/OTP-14898: Fix incorrect type interference of integer ranges | |||
2018-01-30 | Merge hipe-amd64-trampoline/PR-1669/OTP-14903 | Sverker Eriksson | |
2018-01-29 | Merge PR-1639 from sverker/scheduler_utilization OTP-14904 | Sverker Eriksson | |
runtime_tools: Add scheduler module | |||
2018-01-29 | runtime_tools: Add scheduler module | Sverker Eriksson | |
2018-01-29 | erts: Refactor hipe x86_64 trampolines | Sverker Eriksson | |
2018-01-29 | Update primary bootstrap | Sverker Eriksson | |
for hipe_unified_loader | |||
2018-01-29 | make HiPE work on x86_64 when PIE is enabled | bhuztez | |
Currently HiPE amd64 assumes the runtime system code is loaded into the low 2G of the address space. However, this is not the case when PIE is enabled, it is loaded into a random location. So trampolines are required to call BIFs, and also we have first to load the address of sse2_fnegate_mask to a regisiter before xorpd in fchs. | |||
2018-01-29 | Merge branch 'maint' | Sverker Eriksson | |
2018-01-29 | Merge branch 'sverker/ets-match_spec_run-spec/OTP-14889' into maint | Sverker Eriksson | |
2018-01-29 | Merge PR-1685 from sverker/sverker/hipe-verify-gcsafe OTP-14900 | Sverker Eriksson | |
Make hipe compile option verify_gcsafe the default | |||
2018-01-29 | Merge branch 'bjorn/compiler/integer-encoding' | Björn Gustavsson | |
* bjorn/compiler/integer-encoding: Speed up misc_SUITE:integer_encoding/1 beam_asm: Encode big numbers as literals | |||
2018-01-29 | Fix incorrect type interference of integer ranges | Björn Gustavsson | |
2018-01-29 | Merge branch 'maint' | Hans Nilsson | |
* maint: ssh: Disable test failing if docker command exists ssh: Skeleton of build scripts for DropBear image ssh: Can use DropBear SSH dockers ssh: Remove duplicate test cases from ssh_to_openssh_SUITE ssh: Add more tests ssh: Change the default list of ssh and ssl version images ssh: Enable building openssh 0.9.8[a-l] ssh: Add LibreSSL to compat tests | |||
2018-01-29 | Merge branch 'hans/ssh/docker_compat_tests/OTP-14194' into maint | Hans Nilsson | |
* hans/ssh/docker_compat_tests/OTP-14194: ssh: Disable test failing if docker command exists ssh: Skeleton of build scripts for DropBear image ssh: Can use DropBear SSH dockers ssh: Remove duplicate test cases from ssh_to_openssh_SUITE ssh: Add more tests ssh: Change the default list of ssh and ssl version images ssh: Enable building openssh 0.9.8[a-l] ssh: Add LibreSSL to compat tests | |||
2018-01-26 | Merge branch 'maint' | Ingela Anderton Andin | |
2018-01-26 | Merge branch 'ingela/ssl/no-dsa-libressl' into maint | Ingela Anderton Andin | |
* ingela/ssl/no-dsa-libressl: ssl: Check OpenSSL version for DSS (DSA) support | |||
2018-01-26 | ssh: Disable test failing if docker command exists | Hans Nilsson | |
This test is just to get a marking in test result listings where a docker system is installed | |||
2018-01-26 | ssh: Skeleton of build scripts for DropBear image | Hans Nilsson | |
2018-01-26 | ssh: Can use DropBear SSH dockers | Hans Nilsson | |
2018-01-26 | Speed up misc_SUITE:integer_encoding/1 | Björn Gustavsson | |
misc_SUITE:integer_encoding/1 was written to make sure that big integers were encoding correctly in a reasonable amount of time. Now that beam_asm will encode big integers as literals, we can reduce the scope of integer_encode/1. That will make it significantly faster, especially when cover is running. | |||
2018-01-26 | Merge branch 'maint' | Peter Andersson | |
2018-01-26 | Merge branch 'peppe/common_test/skip_groups_in_spec' into maint | Peter Andersson | |
* peppe/common_test/skip_groups_in_spec: Fix skip_groups option in combination with all suites in test spec | |||
2018-01-26 | Fix skip_groups option in combination with all suites in test spec | Peter Andersson | |
2018-01-26 | beam_asm: Encode big numbers as literals | Björn Gustavsson | |
Numbers that clearly are not smalls can be encoded as literals. Conservatively, we assume that integers whose absolute value is greater than 1 bsl 128 are bignums and that they can be encoded as literals. Literals are slightly easier for the loader to handle than huge integers. | |||
2018-01-26 | Merge pull request #1691 from bjorng/bjorn/compiler/local-cse | Björn Gustavsson | |
Do local common sub expression elimination (CSE) | |||
2018-01-26 | Merge pull request #1690 from bjorng/bjorn/compiler/binary-matching/OTP-14774 | Björn Gustavsson | |
Do some minor optimizations of binary matching | |||
2018-01-25 | ssh: Remove duplicate test cases from ssh_to_openssh_SUITE | Hans Nilsson | |
2018-01-25 | ssh: Add more tests | Hans Nilsson | |
2018-01-25 | ssh: Change the default list of ssh and ssl version images | Hans Nilsson | |
2018-01-25 | ssh: Enable building openssh 0.9.8[a-l] | Hans Nilsson | |
2018-01-25 | ssh: Add LibreSSL to compat tests | Hans Nilsson | |
2018-01-25 | Merge branch 'ingela/DTLS-supported' | Ingela Anderton Andin | |
* ingela/DTLS-supported: ssl: Fix typo dtls: Add DTLS handling to utility functions ssl: Document enhancment ssl: Document DTLS | |||
2018-01-25 | ssl: Fix typo | Ingela Anderton Andin | |
2018-01-25 | ssl: Check OpenSSL version for DSS (DSA) support | Ingela Anderton Andin | |
LibreSSL-2.6.3 dropped DSS (DSA) support | |||
2018-01-25 | Merge branch 'dgud/wx/fix-driver-usage' | Dan Gudmundsson | |
* dgud/wx/fix-driver-usage: wx: open_port doesn't allow 0 terminated strings anymore | |||
2018-01-25 | beam_type: Optimize away unnecessary test_unit instructions | Björn Gustavsson | |
Optimize away unnecessary test_unit instructions that verify that binaries are byte-aligned. In a tight loop, eliminating an instruction can have a small but measurable improvement of the execution time. | |||
2018-01-25 | beam_type: Refactor simplify_basic/2 and friends | Björn Gustavsson | |
Separate the simplification of instructions from updating of the type data base. | |||
2018-01-24 | Merge branch 'maint' | Raimo Niskanen | |
Conflicts: lib/stdlib/src/gen_statem.erl | |||
2018-01-24 | Merge branch 'raimo/stdlib/optimize-gen_statem' into maint | Raimo Niskanen | |
* raimo/stdlib/optimize-gen_statem: Optimize plain call response time Correct typo in design principles for gen_statem | |||
2018-01-24 | Merge branch 'maint' | Ingela Anderton Andin | |
2018-01-24 | Merge branch 'ingela/ssl/record-version-check/OTP-14892' into maint | Ingela Anderton Andin | |
* ingela/ssl/record-version-check/OTP-14892: ssl: Add record version sanity check | |||
2018-01-24 | Merge branch 'maint' | Sverker Eriksson | |
2018-01-24 | Merge branch 'sverker/hipe-load-fixing/OTP-14891' into maint | Sverker Eriksson | |
2018-01-24 | Merge branch 'maint' | Sverker Eriksson | |
2018-01-24 | Merge PR-1684 from sverker/float_to_list-rounding-bug/OTP-14890 | Sverker Eriksson | |
Fix rounding bug in float_to_list/2 | |||
2018-01-24 | Optimize matching of empty binaries | Björn Gustavsson | |
Extend an existing optimization in beam_dead to avoid creating a match context when matching an empty binary. | |||
2018-01-24 | Apply common subexpression elimination in blocks | Björn Gustavsson | |
Eliminate repeated evaluation of guard BIFs and building of cons cells in blocks. This optimization is applicable in more places than might be expected, because code generation for binaries and record can generate common sub expressions not visible in the original source code. For example, consider this function: make_binary(Term) -> Bin = term_to_binary(Term), Size = byte_size(Bin), <<Size:32,Bin/binary>>. The compiler inserts a call to byte_size/2 to calculate the size of the binary being built: {function, make_binary, 1, 2}. {label,1}. {line,...}. {func_info,{atom,t},{atom,make_binary},1}. {label,2}. {allocate,0,1}. {line,...}. {call_ext,1,{extfunc,erlang,term_to_binary,1}}. {line,...}. {gc_bif,byte_size,{f,0},1,[{x,0}],{x,1}}. %Present in original code. {line,...}. {gc_bif,byte_size,{f,0},2,[{x,0}],{x,2}}. %Inserted by compiler. {bs_add,{f,0},[{x,2},{integer,4},1],{x,2}}. {bs_init2,{f,0},{x,2},0,2,{field_flags,[]},{x,2}}. {bs_put_integer,{f,0},{integer,32},1,{field_flags,[unsigned,big]},{x,1}}. {bs_put_binary,{f,0},{atom,all},8,{field_flags,[unsigned,big]},{x,0}}. {move,{x,2},{x,0}}. {deallocate,0}. return. Common sub expression elimination (CSE) eliminates the second call to byte_size/2: {function, make_binary, 1, 2}. {label,1}. {line,...}. {func_info,{atom,t},{atom,make_binary},1}. {label,2}. {allocate,0,1}. {line,...}. {call_ext,1,{extfunc,erlang,term_to_binary,1}}. {line,...}. {gc_bif,byte_size,{f,0},1,[{x,0}],{x,1}}. {move,{x,1},{x,2}}. {bs_add,{f,0},[{x,2},{integer,4},1],{x,2}}. {bs_init2,{f,0},{x,2},0,2,{field_flags,[]},{x,2}}. {bs_put_integer,{f,0},{integer,32},1,{field_flags,[unsigned,big]},{x,1}}. {bs_put_binary,{f,0},{atom,all},8,{field_flags,[unsigned,big]},{x,0}}. {move,{x,2},{x,0}}. {deallocate,0}. return. Note: A possible future optimization would be to include binary construction instructions in blocks. If that is done, the {move,{x,1},{x,2}} instruction could also be eliminated. | |||
2018-01-24 | Merge pull request #1682 from bjorng/bjorn/optimize-unbuilt-stacktrace | Björn Gustavsson | |
Don't build a stacktrace if it's only passed to erlang:raise/3 | |||
2018-01-24 | Merge branch 'raimo/stdlib/gen-bench-fsm-vs-statem' | Raimo Niskanen | |
* raimo/stdlib/gen-bench-fsm-vs-statem: Dodge divide by zero Introduce gen_statem vs gen_fsm benchmark Remove test suite warning |