Age | Commit message (Collapse) | Author |
|
|
|
* egil/fix-release_tests-path:
otp: Add paths to erlc for release_tests
|
|
|
|
* dgud/mnesia/upgrade-cont/OTP-9657:
Prepare release
[mnesia] Fix deadlock in aborted mnesia:del_table_copy/2
[mnesia] Make all schema operations protocol aware
[mnesia] Remove export of clear_table which is not a schema operation anymore
[mnesia] Cleanly bring down mnesia
|
|
* siri/stdlib/badarg-extract-child/OTP-9669:
Handle undefined pid when reporting error from supervisor
|
|
* rj/fix-debugger-msgs:
Fix "OK" spelling in debugger messages and variables
Fix debugger message with wx
OTP-9699
|
|
* rj/fix-remove-exec-bit:
Remove exec bit from files: info files, dat, bat
Remove exec bit from files related to: XML, make, C
Remove exec bit from: erl, hrl, xml, html, asn, gif, xpm
OTP-9698
|
|
* rj/fix-erlang-doc-style:
Fixes module erlang doc style: option description
OTP-9697
|
|
* pg/fix-cover-leftover-down-msg:
[cover]fix leftover {'DOWN', ..} msg in callers queue
OTP-9694
|
|
* rj/fix-doctypos:
Add missing spaces in the Reference Manual distributed section
Add missing parenthesis in heart doc
Fix typo in the Reference Manual macros section
OTP-9693
|
|
* ss/re-split-doc-bug:
Fix re:split spec not to accept option 'global'
OTP-9691
|
|
|
|
|
|
|
|
* sverk/bif-args/OTP-9662:
erts,hipe: Limited support for hipe cross compilation
erts-hipe: Change THE_NON_VALUE for HiPE enabled debug emulator
erts-hipe: Enable debug compiled hipe-VM with lock checker
erts-hipe: Rename fail_bif_interface_0 to standard_bif_interface_0
erts-hipe: Deliberate leak of native fun entries
erts-hipe: Fix new trap conventions for x86, amd64 and ppc
Store the trap address in p->i
Store the trap arguments in the X register array
erts-hipe: Make some primops use new BIF calling convention
erts-hipe: Adapt generated BIF wrappers for new calling convention
erts-hipe: Remove obscuring macros in generated assembler code
erts-hipe: Make hipe enabled emulator compile with new BIF calls
Simplify the instructions for calling BIFs
Change the calling convention for BIFs
Use the proper macros in all BIFs
Conflicts:
erts/emulator/beam/bif.h
erts/emulator/beam/erl_bif_info.c
|
|
Normally hipe assumes that generated native code will be executed
on the same emulator as the hipe compiler is running on.
This commit allows you to build a hipe "cross-compiler"
for a different configured emulator (but for same architecture).
Example:
> cd lib/hipe
> make clean
> make XCOMP=yes FLAVOR=smp TYPE=debug
This hipe compiler will generate code to be executed
on the debug compiled smp-emulator at $ERL_TOP.
|
|
* sverk/enif_inspect-memleak/OTP-9668:
erts: Fix memory leak of enif_inspect_* on independent environment
|
|
erlc wants a path to a current compiler. Add search paths for
compiler in src tree and bootstrap compiler.
|
|
Simple code refactor in the debugger: renames all the occurrences of
"Ok" to "OK" in the code, variable names and strings. This improves the
consistency of the code and follows the GTK UI where "OK" is always
used.
|
|
Add missing spaces when using wx UI. The gs UI didn't need them.
Change the exclamation of the message by a dot, more formal style for a
UI message.
|
|
In the HTML version of the doc those spaces are necessary to separate
those words.
|
|
|
|
The module is not added in a function call inside a macro.
|
|
* bjorn/line-numbers/OTP-9468:
beam_type: Improve FP optimizations in the presence of line numbers
|
|
* bjorn/create-less-garbage:
Optimize filename:basename/1 to produce less garbage
Optimize filename:extension/1 to produce less garbage
sys.c for Unix: Undo caching of utsname in os_flavor()
Pre-build the tuples returned by os:type/0 and os:version/0
|
|
* egil/fix-compiler-warnings:
erts: Remove unused variable in enif_make_binary
erts: Remove debug variable in list_to_binary
erts: Remove cp on exiting and trapping processes
erts: Remove debug variables in erl_db
erts: Remove dead code in efile_drv
erts: Remove lock_check debug variables
erts: Remove unused variable in ttsl_drv
erts: "initialized" is only used with CHLDWTHR
erts: remove debug variables in beam_bp
|
|
OTP-9675
|
|
OTP-9604
The profiling test tool has been rewritten.
H�kan Mattsson
OTP-9679
Merge branch 'bmk/megaco/r15_integration'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In most cases, we can simply return a tail of the flattened
filename.
|
|
|
|
|
|
Allow schema operation even if not all nodes are upgraded to
latest version.
|
|
|
|
Aviods failing/wobbling testcase. Mnesia mishandled supervisors.
|
|
|
|
* bjorn/fun-improvements/OTP-9667:
sys_pre_expand: Remove incorrect comment
compiler: Eliminate use of deprecated erlang:hash/2
beam_asm: Fix broken NewIndex in fun entries
beam_asm: Strenghten the calculation of Uniq for funs
|
|
* bjorn/external-funs/OTP-9643:
EEP-23: Allow variables in fun M:F/A
Reference manual: Improve the documentation for external funs
Test calling a parameterized module within a fun
beam_loader: Support external funs in the literal pool
|
|
sys_pre_expand does not keep track of used or new variables (and have
not done since about the time Core Erlang was introduced).
|
|
Now that beam_asm computes the Index and Uniq values for funs, there
is no need to compute those values in the sys_pre_expand and v3_kernel
modules, thus eliminating the calls to the deprecated erlang:hash/2
function.
It would be tempting to stop generating the name for the fun in
sys_pre_expand so that we did not have to add the Info field to a tuple.
But:
* The debugger depends on the name being there. (Simple solution:
Let the debugger generate the name itself.)
* When a fun has been inlined into another function, the fun name in
'id' annotation will be used to notice the inlining and change the
final clause of the top-level case from generating a 'function_clause'
exception to a case_clause exception. (Possible workaround: Have the
inliner set an inlined attribute on functions that have been inlined, or
have the inliner rewrite 'function_clause' exceptions itself.)
|
|
The calculation of the NewIndex field in fun entries is broken: the
sys_pre_expand and v3_kernel modules keep separate index counters
starting at zero; thus there is no guarantee that each fun within a
module will have its own unique NewIndex.
We don't really need the NewIndex any more (see below), but since
we do need the NewUniq field, we should fix NewIndex for cleanliness
sake. The simplest way is to assign NewIndex as late as possible,
namely in beam_asm, and to set it to the same value as Index.
Historical Note: Why NewIndex Was Introduced
There was once an idea that the debugger should be able to interpret
only a single function in a module (for speed). To make sure that
interpreted funs could be called from BEAM code and vice versa,
the fun identification must be visible in the abstract code.
Therefore a NewIndex field was introduced in each fun in the abstract
code.
However, it turned out that interpreting single functions does not
play well with aggressive code optimization. For example, in this
code:
f() ->
X = 1,
fun() -> X+2 end.
the variable X will seem to be free in the fun, but an aggressive
optimizer will replace X with 1 in the fun; thus the fun will no
longer have any free variables. Therefore, the debugger will always
interpret entire modules.
|