Age | Commit message (Collapse) | Author |
|
The compiler would keep the data structures for two compiler
passes in memory. That could increase the maximum amount of
memory that the compiler uses, and could also have a negative
impact on performance (terms that would not be used again would be
copied by a garbage collection).
Here is an example that shows how the previous version of the code
could get captured:
a_compiler_pass(Mod, St) ->
case Mod:module(St#compile.code, St#compile.options) of
{ok,Code} ->
{ok,St#compile{code=Code}};
...
The reference to the code from the previous pass will only be released
when St is updated. We can avoid the problem by passing the
current version of the code as a function argument:
a_compiler_pass(Mod, Code0, St) ->
case Mod:module(Code0, St#compile.options) of
{ok,Code} ->
{ok,Code,St};
...
In practice, this change does not seem to significantly speed up
the compiler, but it does not do any harm either. It should help
dialyzer in situations when dialyzer compiles several large modules
at the same time.
|
|
|
|
* egil/doc-maps-type/ERL-197/OTP-14096:
doc: Enchance map pair optional/mandatory notes
doc: Change "stands for" to "denotes" in typespec
Remove whitespace errors
|
|
* maint:
Create CONTRIBUTING.md (#1278)
Make sure that Travis fails when test cases fail
Don't include problematic test cases in smoke test
|
|
According to https://help.github.com/articles/setting-guidelines-for-repository-contributors, a link to a file named CONTRIBUTING.md will be shown when someone is about to create a pull request. That is more visible than our Wiki pages, which are easy to miss.
Create the CONTRIBUTING.md file, based on the existing Wiki page https://github.com/erlang/otp/wiki/Contribution-Guidelines.
|
|
Make sure that Travis fails when test cases fail
|
|
=== OTP-19.2 ===
Changed Applications:
- common_test-1.13
- compiler-7.0.3
- crypto-3.7.2
- dialyzer-3.0.3
- edoc-0.8.1
- erl_docgen-0.6.1
- erl_interface-3.9.2
- erts-8.2
- eunit-2.3.2
- hipe-3.15.3
- inets-6.3.4
- kernel-5.1.1
- mnesia-4.14.2
- observer-2.3
- odbc-2.12
- parsetools-2.1.4
- public_key-1.3
- runtime_tools-1.11
- sasl-3.0.2
- ssh-4.4
- ssl-8.1
- stdlib-3.2
- syntax_tools-2.1.1
- tools-2.9
- wx-1.8
Unchanged Applications:
- asn1-4.0.4
- cosEvent-2.2.1
- cosEventDomain-1.2.1
- cosFileTransfer-1.2.1
- cosNotification-1.2.2
- cosProperty-1.2.1
- cosTime-1.2.2
- cosTransactions-1.3.2
- debugger-4.2.1
- diameter-1.12.1
- eldap-1.2.2
- et-1.6
- gs-1.6.2
- ic-4.4.2
- jinterface-1.7.1
- megaco-3.18.1
- orber-3.8.2
- os_mon-2.4.1
- otp_mibs-1.1.1
- percept-0.9
- reltool-0.7.2
- snmp-5.2.4
- typer-0.9.11
- xmerl-1.3.12
* tag 'OTP-19.2':
Updated OTP version
Prepare release
Conflicts:
OTP_VERSION
|
|
|
|
|
|
|
|
|
|
In time_SUITE, the univ_to_local/1 and local_to_univ/1 test cases will
fail if they are run outside the CET timezone. The consistency/1
test case uses is not reliable in March and October because it
uses a simplified model for when the switch to/from DST is done.
|
|
|
|
* bjorn/compiler/beam_type:
beam_type: Minimize number of regs in test_heap instructions
|
|
Printout the client stacktrace when a gen_server crashes
OTP-14089
|
|
erts: Fix missing HiPE trampolines on arm (master only)
|
|
The beam_type may pass move and recalculates test_heap instructions.
The number of live registers are not always the lowest. Minimize the
number of registers by running beam_utils:live_opt/1 one more time.
|
|
|
|
|
|
Add option 'deterministic' for reproducible builds
OTP-14087
|
|
* bjorn/crypto/support-openssl-1.1:
Support OpenSSL 1.1.0
crypto.c: Disable broken code for ChaCha and Poly1305
configure.in: Fix configure test for usable OpenSSL
configure.in: Fix test for SSL with Kerberos
OTP-13900
|
|
When a gen_server crashes it is in many cases helpful to know in which
context its client made its call.
|
|
|
|
* egil/erl_interface/fix-warning-in-erl_call/OTP-14086:
erl_interface: Fix compile warning in erl_call
|
|
Add the option 'deterministic' to make it easier to
achieve reproducible builds.
This option omits the {options,...} and {source,...} tuples in
M:module_info(compile), because those options may contain absolute
paths.
The author of ERL-310 suggested that only compiler options that
may contain absolute paths (such as {i,...}) should be excluded. But I
find it confusing to keep only some options.
Alternatives considered: Always omitting this information. Since this
information has been available for a long time, that would probably
break some workflows. As an example that some people care about
{source,...}, 2d785c07fbf9 made it possible to give a compiler option
to set {source,...}.
ERL-310
|
|
* maint:
Update preloaded modules
|
|
|
|
* maint:
Update copyright-year
Conflicts:
lib/dialyzer/src/dialyzer.hrl
lib/dialyzer/src/dialyzer_options.erl
lib/dialyzer/test/opaque_SUITE_data/src/recrec/dialyzer.hrl
lib/dialyzer/test/opaque_SUITE_data/src/recrec/dialyzer_races.erl
lib/hipe/icode/hipe_icode.erl
lib/hipe/main/hipe.erl
lib/hipe/main/hipe.hrl.src
lib/hipe/main/hipe_main.erl
|
|
|
|
|
|
8bb80fe76f5b replaced the "__arm__" macro used to test for the arm
architecture in hipe_bif0 with the "arm" macro, which is not universally
available. As this replacement is not motivated in the commit message,
nor replicated in any other file that uses the "__arm__" macro, this
seems to be an accident, and this commit reverts the replacement.
When compiled in an environment without the "arm" macro, upgrading hipe
code would occasionally not patch relocations to the new module due to
being out of range for a shortjump, and a trampoline not being provided
to do a longjump. Since this type of relocation patches are not expected
to be able to fail, there is no error handling, and aside from a
"hipe_redirect_to_module: patch failed" message, code upgrade would
proceed and lead to various incorrect behaviour.
|
|
|
|
Eldap vsn.mk (version) was updated alhough it shouldn't.
|
|
This reverts commit c9bf308b6e3e1a699d6262bbb5ec829fd7819513.
|
|
* siri/observer/more-port-info/ERL-272/OTP-13948:
[observer] Fix update of range in memory allocator graphs
[observer] Add more port information
[observer] Show monitored ports in process details view
|
|
|
|
* megaco/version:
Revert "[megaco] Update version" - only test suite updated
|
|
This reverts commit ae8f00912587cbb8e9ace6660434e921bae9730b.
|
|
|
|
* ingela/inets/httpd-profiles/OTP-14082:
inets: Add Profile argument missed by commit fdfda2fab0921d409789174556582db28141448e
|
|
* ingela/ssl/next-version:
ssl: Prepare for release
|
|
|
|
* ingela/dtls/statem/OTP-12982:
ssl: Implement DTLS state machine
|
|
|
|
|
|
* emj/report-tunnel-errors/PR-1254:
Report errors from TLS tunnel request to correct process
|
|
|
|
* ingela/ECC-tests:
ssl: Make sure common-test priv_dir is used for test case generated files
|
|
fdfda2fab0921d409789174556582db28141448e
|
|
|