aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2012-02-21erts: Move number-of-breakpoint counter from code to Module structSverker Eriksson
The is a refactoring in preparation to add a counter in Module struct for export entry tracing. It is nicer if the two are kept together.
2012-02-21test: Force emulator/test/mtx_SUITE to rebuild NIF librarySverker Eriksson
This will prevent test to fail when switching between opt and debug emulator.
2012-02-21erts: Fix print-bug in lock checker on debug-vmSverker Eriksson
2012-02-21erts: Cleanup code loadingSverker Eriksson
2012-02-21erts: Rename "loader" code_ix as "staging" code_ixSverker Eriksson
Staging is a better and more general name as does not necessary need to involve code loading (can be deletion, tracing, etc).
2012-02-21erts: Fix purge of module with loaded nif librarySverker Eriksson
Easy fallback solution that goes single threaded if the module to be purged has a loaded nif lib.
2012-02-21test: Safe purging in code_parallel_load_SUITESverker Eriksson
erlang:purge_module/1 is brutal and causes core dump if old code is still executing, especially on debug VM.
2012-02-21test: many_load_distributed_only_onceBjörn-Egil Dahlberg
2012-02-21test: parallel_load_check_purge_repeatBjörn-Egil Dahlberg
* test trivial non-blocking code loading (smoke test)
2012-02-21erts: Remove secondary_export_tableSverker Eriksson
2012-02-21erts: Refactor new function index_put_entry()Sverker Eriksson
Same as index_put() but returns pointer to entry instead of index integer.
2012-02-21erts: Refactor export entry allocationSverker Eriksson
Use a more general approach that does not assume in which order the table entries in a blob are allocated and freed.
2012-02-21erts: Fix case of breakpoint when deleting moduleSverker Eriksson
2012-02-21erts: Cleanup in export.cSverker Eriksson
2012-02-21erts: Rename erts_load_module to erts_preload_moduleSverker Eriksson
As it can only be used at initialization for preloading
2012-02-21erts: Call erts_export_consolidate automaticallySverker Eriksson
Renamed merge_secondary_table and called by export_start_load
2012-02-21First try at non-blocking code loading!Sverker Eriksson
Implemented some code_ix locks and commented calls to erts_smp_thr_progress_block()
2012-02-21beam_ranges: Make ranges safe with multi-scheduling activeBjörn Gustavsson
2012-02-21BEAM loader: Break out handling of ranges into beam_ranges.cBjörn Gustavsson
Having the entire implementation of range handling (address table) in one source file will help when we'll need to update the ranges without stopping all schedulers in the next commit.
2012-02-21erts: Remove unused erts_put_fun_entry2 declarationSverker Eriksson
2012-02-21erts: Add abort logic to export tablesSverker Eriksson
2012-02-21erts: Fix code_ix handling and locking for some more bifsSverker Eriksson
2012-02-21erts: Multiple module tables using code_ixSverker Eriksson
2012-02-21erts: Use several addresses in each ExportSverker Eriksson
2012-02-21erts: Multiple export tab's using code_ixSverker Eriksson
Still blocking code loading
2012-02-21erts: First stab at code_ix interface and beam_catches using itSverker Eriksson
Code loading still blocking
2012-02-21erts: First refactor step of export tableSverker Eriksson
2012-02-21erts: Make use of def_lambdas optimization during loadingSverker Eriksson
The default array was defined but not used.
2012-02-21erts: Refactor new helper function erts_init_trap_exportSverker Eriksson
2012-02-21erts: Refactor Module structSverker Eriksson
2012-02-20Merge branch 'maint'Rickard Green
* maint: Reduce thread progress read operations in handle_aux_work() Misc memory barrier fixes
2012-02-20Merge branch 'rickard/barriers/OTP-9922' into maintRickard Green
* rickard/barriers/OTP-9922: Reduce thread progress read operations in handle_aux_work() Misc memory barrier fixes
2012-02-19Reduce thread progress read operations in handle_aux_work()Rickard Green
2012-02-19Misc memory barrier fixesRickard Green
- Document barrier semantics - Introduce ddrb suffix on atomic ops - Barrier macros for both non-SMP and SMP case - Make the thread progress API a bit more intuitive
2012-02-16Merge branch 'maint'Henrik Nord
Conflicts: lib/hipe/cerl/erl_bif_types.erl lib/stdlib/doc/src/binary.xml
2012-02-16Merge branch 'jz/erts-remove-unused-var' into maintHenrik Nord
* jz/erts-remove-unused-var: erts: Remove unused variable OTP-9926
2012-02-16Merge branch 'rc/spell-registered' into maintHenrik Nord
* rc/spell-registered: Correct spelling of "registered" in various places in the source code OTP-9925
2012-02-14Merge branch 'maint'Henrik Nord
2012-02-14Merge branch 'jz/reduce-smp-locking-time-range' into maintHenrik Nord
* jz/reduce-smp-locking-time-range: erts: reduce smp locking time range in erts_garbage_collect OTP-9912
2012-02-09Merge branch 'maint'Björn Gustavsson
* maint: Update primary bootstrap HiPE: Remove support for is_constant/1 erl_lint: Remove handling of constant/1 erl_bif_types: Remove type for is_constant/1 erl_eval: Remove support for is_constant/1 Remove support for is_constant/1 in ms_transform Remove references to is_constant/1 from the match spec documentation Conflicts: lib/hipe/cerl/erl_bif_types.erl Also re-instate the type for erlang:is_boolean/1 which was accidentally omitted in the master branch.
2012-02-09Merge branch 'bjorn/remove-is_constant-vestiges/OTP-6454' into maintBjörn Gustavsson
* bjorn/remove-is_constant-vestiges/OTP-6454: HiPE: Remove support for is_constant/1 erl_lint: Remove handling of constant/1 erl_bif_types: Remove type for is_constant/1 erl_eval: Remove support for is_constant/1 Remove support for is_constant/1 in ms_transform Remove references to is_constant/1 from the match spec documentation
2012-02-08bif_SUITE: Test for suitable "shadowed by erl_bif_types" commentsBjörn Gustavsson
2012-02-08bif_SUITE: Add test to ensure that all guard BIFs have type infoBjörn Gustavsson
2012-02-08Replace autoimport_SUITE with bif_SUITE:auto_imports/1Björn Gustavsson
erts/test/autoimport_SUITE tested that auto-import information in erl_internal:bif/2 was consistent with the documentation. It did it by scanning erlang.xml. Since the documentation is now based on the specs in erlang.erl, we should now test consistency of the specs and erl_internal:bif/2. Since anyone that adds a new BIF runs the emulator test suite, it makes sense to do this test in bif_SUITE in the emulator test suite.
2012-02-08bif_SUITE: Add test case for specs and BIF stubsBjörn Gustavsson
Rename the existing types/1 test case to erl_bif_types/1 to make it clearer what it does. Also no longer test for missing type information for BIFs (since it has become optional), but only check that the information provided seems to be consistent. Introduce the specs/1 test case to ensure that all BIFs have specs. Also introduce improper_bif_stubs/1 to check for proper stubs. Since the BEAM loader will now silently allow stubs for BIFs, we want to be particular about exactly what a stub look like, so that an Erlang function is not unintentionally overridden by a BIF.
2012-02-07Merge branch 'maint'Patrik Nyblom
Conflicts: erts/doc/src/erlang.xml erts/preloaded/ebin/erlang.beam
2012-02-07Merge branch 'dgud/sched-work-time/OTP-9858' into maintPatrik Nyblom
* dgud/sched-work-time/OTP-9858: emulator: Document and test scheduler_wall_time Implement statistics(scheduler_wall_time)
2012-02-07Correct docs, comments and dialyzer testsPatrik Nyblom
Update preloaded erlang.beam Removed stray error in dialyzer test suite - different error message with the new specs.
2012-02-07Reintroduce sensitive BIFs in erl_bif_typesPatrik Nyblom
This involves exception BIF's, guar BIF's and some other complicated BIF's Also some minor corrections to documentation and specs in erlang.erl Added comment for each spec in erlang.erl shadowed by erl_bif_types. Dialyzer test should now run well except for one or two cases.
2012-02-07Correct dializer errors in erlang.erl and othersPatrik Nyblom
New errors found when adding specs to erlang.erl and removing them from erl_bif_types are examined and corrected. Some errors was due to faulty specs, while others were actual errors in the code using BIF's.