aboutsummaryrefslogtreecommitdiffstats
path: root/lib/tools/src
AgeCommit message (Collapse)Author
2018-05-08tools: Handle fast restarts of Xref serverHans Bolinder
2018-05-07Ensure that lcnt server is terminated after lcnt:stop/0John Högberg
This makes the nightly tests slightly more stable as they assert that the server isn't alive when lcnt:start/0 is called, which it could still be since the stop command was a plain gen_server call that didn't wait until the termination was completed.
2018-04-23erts: Rewrite memory instrumentationJohn Högberg
This commit replaces the old memory instrumentation with a new implementation that scans carriers instead of wrapping erts_alloc/erts_free. The old implementation could not extract information without halting the emulator, had considerable runtime overhead, and the memory maps it produced were noisy and lacked critical information. Since the new implementation walks through existing data structures there's no longer a need to start the emulator with special flags to get information about carrier utilization/fragmentation. Memory fragmentation is also easier to diagnose as it's presented on a per-carrier basis which eliminates the need to account for "holes" between mmap segments. To help track allocations, each allocation can now be tagged with what it is and who allocated it at the cost of one extra word per allocation. This is controlled on a per-allocator basis with the +M<S>atags option, and is enabled by default for binary_alloc and driver_alloc (which is also used by NIFs).
2018-02-13Merge branch 'maint'John Högberg
2018-02-13Merge branch 'john/tools/fix-lcnt-server-crash/PR-1711/OTP-14912' into maintJohn Högberg
2018-02-13Don't crash lcnt server if information/0 is called before collect/0Péter Gömöri
2018-02-12Automatically start lcnt server on first useJohn Högberg
lcnt:collect is documented as implicitly starting the lcnt server but didn't do so prior to this commit. I've decided to extend this behavior to all operations as the overhead is negligible and it's a bit more convenient to use.
2018-02-06tools: Do not call erlang:get_stacktrace()Hans Bolinder
2017-12-22Merge branch 'maint'Hans Bolinder
* maint: tools: Correct a counting bug in Cover
2017-12-21tools: Correct a counting bug in CoverHans Bolinder
See also PR #1641, https://github.com/erlang/otp/pull/1641. The bug was introduced in commit ab435488a (Erlang/OTP 18).
2017-09-21Merge branch 'maint'Hans Bolinder
* maint: fprof: Make sure the receiving file can handle Unicode
2017-09-21Merge branch 'hasse/tools/fprof_unicode_fix' into maintHans Bolinder
* hasse/tools/fprof_unicode_fix: fprof: Make sure the receiving file can handle Unicode
2017-09-20Merge branch 'maint'Dan Gudmundsson
* maint: erts, stdlib: Fix xmllint warning Update runtime deps to depend on new stdlib functionality
2017-09-20fprof: Make sure the receiving file can handle UnicodeHans Bolinder
It is assumed that I/O devices can handle character codes greater than 255.
2017-09-19Update runtime deps to depend on new stdlib functionalityDan Gudmundsson
~tw and new string functions are new since OTP-20 (stdlib-3.4)
2017-09-15Merge branch 'siri/string-new-api'Siri Hansen
* siri/string-new-api: (28 commits) hipe (test): Do not use deprecated functions in string(3) dialyzer (test): Do not use deprecated functions in string(3) eunit (test): Do not use deprecated functions in string(3) system (test): Do not use deprecated functions in string(3) system (test): Do not use deprecated functions in string(3) mnesia (test): Do not use deprecated functions in string(3) Deprecate old string functions observer: Do not use deprecated functions in string(3) common_test: Do not use deprecated functions in string(3) eldap: Do not use deprecated functions in string(3) et: Do not use deprecated functions in string(3) os_mon: Do not use deprecated functions in string(3) debugger: Do not use deprecated functions in string(3) runtime_tools: Do not use deprecated functions in string(3) asn1: Do not use deprecated functions in string(3) compiler: Do not use deprecated functions in string(3) sasl: Do not use deprecated functions in string(3) reltool: Do not use deprecated functions in string(3) kernel: Do not use deprecated functions in string(3) hipe: Do not use deprecated functions in string(3) ... Conflicts: lib/eunit/src/eunit_lib.erl lib/observer/src/crashdump_viewer.erl lib/reltool/src/reltool_target.erl
2017-09-14tools: Add handling of the -on_load() attribute to XrefHans Bolinder
2017-09-05xref: Improve handling of UnicodeHans Bolinder
The updates of xref_base:analysis() are cosmetic (the strings are parsed by the Erlang scanner only).
2017-09-05fprof: Modify handling of UnicodeHans Bolinder
It's not clear to me if the receiving file always can handle characters codes greater than 255.
2017-09-05eprof: Improve handling of UnicodeHans Bolinder
2017-08-24fprof: Sum callers and calleesJohan Claesson
When sampling multiple processes and analyzing with totals true sum together all caller and callee entries which concerns the same function. Previous behaviour was to report each contributing entry.
2017-07-06tools: Do not use deprecated functions in string(3)Hans Bolinder
2017-07-06johanclaesson/fprof/PR-1460/OTP-14500Lukas Larsson
fprof: Sum callers and callees
2017-07-06Merge branch 'john/erts/runtime-lcnt' into maintJohn Högberg
* john/erts/runtime-lcnt: Document rt_mask and add warnings about copy_save Add an emulator test suite for lock counting Break erts_debug:lock_counters/1 into separate BIFs Allow toggling lock counting at runtime Move lock flags to a common header Enable register_SUITE for lcnt builds Enable lcnt smoke test on all builds that have lcnt enabled Make lock counter info independent of the locks being counted OTP-14412 OTP-13170 OTP-14413
2017-07-06Break erts_debug:lock_counters/1 into separate BIFsJohn Högberg
2017-07-04fprof: Sum callers and calleesJohan Claesson
When sampling multiple processes and analyzing with totals true sum together all caller and callee entries which concerns the same function. Previous behaviour was to report each contributing entry.
2017-06-29[make] Do not use the interactive tool 'c' from makeSiri Hansen
2017-06-19Update copyright yearHans Nilsson
2017-06-16[ct] Print unicode atoms and strings correctly in common_test logsSiri Hansen
And use correct encoding when printing to files.
2017-05-04Update copyright yearRaimo Niskanen
2017-04-19Merge branch 'sverker/remove-latin1-atom-encoding'Sverker Eriksson
AGAIN * sverker/remove-latin1-atom-encoding: tools: Fix more assumptions in lcnt about external format
2017-04-18tools: Fix more assumptions in lcnt about external formatSverker Eriksson
Also tried to prepare for large creation.
2017-04-13Merge branch 'siri/make/include-path/ERL-395/OTP-14339'Siri Hansen
* siri/make/include-path/ERL-395/OTP-14339: [tools/make] Add current directory to include path
2017-04-12Merge branch sverker/remove-latin1-atom-encoding/OTP-14337Sverker Eriksson
* sverker/remove-latin1-atom-encoding: kernel: Fix erl_distribution_wb_SUITE:whitebox kernel: Remove pg2_SUITE:compat erts: Remove fun_r13_SUITE stdlib: Remove test cases for R12 io protocol kernel: Make DFLAG_UTF8_ATOMS mandatory kernel: Rewrite distribution flag verification tools: Update assumptions in lcnt about external atom format stdlib: Tweak beam_lib_SUITE whitebox assumptions orber: Remove hard dependency to external atom format kernel: Try mend disk_log whitebox tests erts: Mark latin1 atom encoding as deprecated jinterface: Do not generate atoms on old latin1 external format erl_interface: Do not generate atoms on old latin1 ext format erts: Do not generate atoms on old latin1 external format erts: Fix faulty ASSERT for failed dec_term
2017-04-12[tools/make] Add current directory to include pathSiri Hansen
This is to ensure that files are recompiled if a .hrl file in the current directory is changed.
2017-03-24Remove inets from runtime dependencies in toolsJosé Valim
Commit d8ff1e3 removed cover_web and therefore tools no longer depends on inets.
2017-03-13tools: Update assumptions in lcnt about external atom formatSverker Eriksson
2017-03-03tools: Allow Emake options to be passed in explicitlyAnthony Jackson
This allows build scripts to use emake without needing to generate an Emakefile before running make:all/0,1 or make:file/1,2.
2016-12-07Merge branch 'maint'Dan Gudmundsson
* 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
2016-12-07Update copyright-yearErlang/OTP
2016-11-02Merge branch 'maint'Lukas Larsson
2016-10-13handle send_to_non_existing_process trace event in fprofAndreas Schultz
fprof did not handle this trace event. Sending to a non existing process should not be much different from sending to an existing process, so duplicate that logic.
2016-09-01xref: Eliminate use of sys_pre_expandBjörn Gustavsson
2016-09-01cover: Remove always stale commentBjörn Gustavsson
The comment in the catch-all clause in munge_expr/2 will always be stale. There is no way it can be kept up to date. For example, 'eof' is listed, but 'eof' is a top-level form and is actually handled in the catch-all clause for munge/4.
2016-08-31Merge branch 'bjorn/fix-make/OTP-13855' into maintBjörn Gustavsson
* bjorn/fix-make/OTP-13855: make, ct_make: Handle warning attributes in source files
2016-08-31Merge branch 'raimo/gen_statem-callback_mode/OTP-13752' into maintRaimo Niskanen
* raimo/gen_statem-callback_mode/OTP-13752: ssl: Upgrade suite testing skipped if stdlib upgrade is required Fix version numbers and dependencies Conflicts: lib/ssl/src/ssl.appup.src lib/ssl/vsn.mk
2016-08-30make, ct_make: Handle warning attributes in source filesBjörn Gustavsson
epp learned to handle the -warning() directive in 14d72f02, but make and ct_make were not updated to expect a {warning,_} return value from epp:parse_erl_form/1.
2016-08-25Fix version numbers and dependenciesRaimo Niskanen
2016-07-29fix gc_start\end bugTihon
2016-06-28tools: Fix a bug adding multiple modules to an Xref serverHans Bolinder
The bug when introduced in OTP-19.0. Optimize adding multiple modules to an Xref server