|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2 |
|
| #
634da7a1 |
| 10-Feb-2022 |
Teresa Johnson <[email protected]> |
[sanitizer] Check if directory exists before trying to create
Add a DirExists mechanism, modeled after FileExists. Use it to guard creation of the report path directory.
This should avoid failures
[sanitizer] Check if directory exists before trying to create
Add a DirExists mechanism, modeled after FileExists. Use it to guard creation of the report path directory.
This should avoid failures running the sanitizer in a sandbox where the file creation attempt causes hard failures, even for an existing directory. Problem reported on D109794 for ChromeOS in sandbox (https://issuetracker.google.com/209296420).
Differential Revision: https://reviews.llvm.org/D119495
show more ...
|
|
Revision tags: llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1 |
|
| #
aacaebc6 |
| 10-Nov-2021 |
Snehasish Kumar <[email protected]> |
[memprof] Make the raw binary format the default.
Set the default memprof serialization format as binary. 9 tests are updated to use print_text=true. Also fixed an issue with concatenation of defaul
[memprof] Make the raw binary format the default.
Set the default memprof serialization format as binary. 9 tests are updated to use print_text=true. Also fixed an issue with concatenation of default and test specified options (missing separator).
Differential Revision: https://reviews.llvm.org/D113617
show more ...
|
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1 |
|
| #
a75b2e87 |
| 19-Nov-2020 |
Teresa Johnson <[email protected]> |
[MemProf] Add interface to dump profile
Add an interface so that the profile can be dumped on demand.
Differential Revision: https://reviews.llvm.org/D91768
|
| #
7f32ddc9 |
| 30-Oct-2020 |
Teresa Johnson <[email protected]> |
[MemProf] Reenable test with fix for bot failures
The issue was unexpected macro expansion when the bot's test output directory contained a token matching a build system macro (e.g. "linux"). Switch
[MemProf] Reenable test with fix for bot failures
The issue was unexpected macro expansion when the bot's test output directory contained a token matching a build system macro (e.g. "linux"). Switch to using a hardcoded path, which is invalid but is sufficient for ensuring that the path is passed down to the runtime.
Differential Revision: https://reviews.llvm.org/D90466
show more ...
|
|
Revision tags: llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5 |
|
| #
0949f96d |
| 29-Sep-2020 |
Teresa Johnson <[email protected]> |
[MemProf] Pass down memory profile name with optional path from clang
Similar to -fprofile-generate=, add -fmemory-profile= which takes a directory path. This is passed down to LLVM via a new module
[MemProf] Pass down memory profile name with optional path from clang
Similar to -fprofile-generate=, add -fmemory-profile= which takes a directory path. This is passed down to LLVM via a new module flag metadata. LLVM in turn provides this name to the runtime via the new __memprof_profile_filename variable.
Additionally, always pass a default filename (in $cwd if a directory name is not specified vi the = form of the option). This is also consistent with the behavior of the PGO instrumentation. Since the memory profiles will generally be fairly large, it doesn't make sense to dump them to stderr. Also, importantly, the memory profiles will eventually be dumped in a compact binary format, which is another reason why it does not make sense to send these to stderr by default.
Change the existing memprof tests to specify log_path=stderr when that was being relied on.
Depends on D89086.
Differential Revision: https://reviews.llvm.org/D89087
show more ...
|
| #
d124ac0c |
| 29-Oct-2020 |
Teresa Johnson <[email protected]> |
[MemProf] Temporarily disable test failing on a couple bots
I finally see why this test is failing (on now 2 bots). Somehow the path name is getting messed up, and the "linux" converted to "1". I su
[MemProf] Temporarily disable test failing on a couple bots
I finally see why this test is failing (on now 2 bots). Somehow the path name is getting messed up, and the "linux" converted to "1". I suspect there is something in the environment causing the macro expansion in the test to get messed up:
http://lab.llvm.org:8011/#/builders/112/builds/555/steps/5/logs/FAIL__MemProfiler-x86_64-linux__log_path_test_cpp http://lab.llvm.org:8011/#/builders/37/builds/275/steps/31/logs/stdio
On the avr bot: -DPROFILE_NAME_VAR="/home/buildbot/llvm-avr-linux/llvm-avr-linux/stage1/projects/compiler-rt/test/memprof/X86_64LinuxConfig/TestCases/Output/log_path_test.cpp.tmp.log2"
after macros expansions becomes: /home/buildbot/llvm-avr-1/llvm-avr-1/stage1/projects/compiler-rt/test/memprof/X86_64LinuxConfig/TestCases/Output/log_path_test.cpp.tmp.log2
Similar (s/linux/1/) on the other bot.
Disable it while I investigate
show more ...
|
| #
240b4217 |
| 29-Oct-2020 |
Teresa Johnson <[email protected]> |
[MemProf] Augment test to debug avr bot failure
After 81f7b96ed0a2295e0b82ca185019370ac8e1895e, I can see that the reason this test is failing on llvm-avr-linux is that it doesn't think the director
[MemProf] Augment test to debug avr bot failure
After 81f7b96ed0a2295e0b82ca185019370ac8e1895e, I can see that the reason this test is failing on llvm-avr-linux is that it doesn't think the directory exists (error comes during file open for write command). Not sure why since this is the main test Output directory and we created a different file there earlier in the test from the same file open invocation. Print directory contents in an attempt to debug.
show more ...
|
| #
81f7b96e |
| 25-Oct-2020 |
Teresa Johnson <[email protected]> |
[sanitizer] Print errno for report file open failure
To help debug failures, specifically the llvm-avr-linux bot failure from 5c20d7db9f2791367b9311130eb44afecb16829c:
http://lab.llvm.org:8011/#/bu
[sanitizer] Print errno for report file open failure
To help debug failures, specifically the llvm-avr-linux bot failure from 5c20d7db9f2791367b9311130eb44afecb16829c:
http://lab.llvm.org:8011/#/builders/112/builds/407/steps/5/logs/FAIL__MemProfiler-x86_64-linux-dynamic__log_path_t
Also re-enable the failing test which I temporarily disabled, to see if this change will help identify why that particular log file can't be opened for write on that bot (when another log file in the same directory could earlier in the test).
Differential Revision: https://reviews.llvm.org/D90120
show more ...
|
| #
13c62ce9 |
| 25-Oct-2020 |
Teresa Johnson <[email protected]> |
[MemProf] Temporarily disable part of test
Disable the part of this test that started failing only on the llvm-avr-linux bot after 5c20d7db9f2791367b9311130eb44afecb16829c. Unfortunately, "XFAIL: av
[MemProf] Temporarily disable part of test
Disable the part of this test that started failing only on the llvm-avr-linux bot after 5c20d7db9f2791367b9311130eb44afecb16829c. Unfortunately, "XFAIL: avr" does not work. Still in the process of trying to figure out how to debug.
show more ...
|
| #
eeba325b |
| 23-Oct-2020 |
Teresa Johnson <[email protected]> |
[MemProf] Attempt to debug avr bot failure
Reverts the XFAIL added in b67a2aef8ac9fd9c10666a05d72d909315140dcb, which had no effect.
Adjust the test to make sure all output is dumped to stderr, so
[MemProf] Attempt to debug avr bot failure
Reverts the XFAIL added in b67a2aef8ac9fd9c10666a05d72d909315140dcb, which had no effect.
Adjust the test to make sure all output is dumped to stderr, so that hopefully I can get a better idea of where/why this is failing.
Remove some redundant checking while here.
show more ...
|
| #
b67a2aef |
| 23-Oct-2020 |
Teresa Johnson <[email protected]> |
[MemProf] XFAIL test on avr until issue can be debugged
For unknown reasons, this test started failing only on the llvm-avr-linux bot after 5c20d7db9f2791367b9311130eb44afecb16829c: http://lab.llvm.
[MemProf] XFAIL test on avr until issue can be debugged
For unknown reasons, this test started failing only on the llvm-avr-linux bot after 5c20d7db9f2791367b9311130eb44afecb16829c: http://lab.llvm.org:8011/#/builders/112/builds/365
The error message is not helpful, and I have an email out to the bot owner to help with debugging. XFAIL it on avr for now.
show more ...
|
| #
5c20d7db |
| 29-Sep-2020 |
Teresa Johnson <[email protected]> |
[MemProf] Allow the binary to specify the profile output filename
This will allow the output directory to be specified by a build time option, similar to the directory specified for regular PGO prof
[MemProf] Allow the binary to specify the profile output filename
This will allow the output directory to be specified by a build time option, similar to the directory specified for regular PGO profiles via -fprofile-generate=. The memory profiling instrumentation pass will set up the variable. This is the same mechanism used by the PGO instrumentation and runtime.
Depends on D87120 and D89629.
Differential Revision: https://reviews.llvm.org/D89086
show more ...
|
|
Revision tags: llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3 |
|
| #
3d4bba30 |
| 03-Sep-2020 |
Teresa Johnson <[email protected]> |
[MemProf] Memory profiling runtime support
See RFC for background: http://lists.llvm.org/pipermail/llvm-dev/2020-June/142744.html
Follow on companion to the clang/llvm instrumentation support in D8
[MemProf] Memory profiling runtime support
See RFC for background: http://lists.llvm.org/pipermail/llvm-dev/2020-June/142744.html
Follow on companion to the clang/llvm instrumentation support in D85948 and committed earlier.
This patch adds the compiler-rt runtime support for the memory profiling.
Note that much of this support was cloned from asan (and then greatly simplified and renamed). For example the interactions with the sanitizer_common allocators, error handling, interception, etc.
The bulk of the memory profiling specific code can be found in the MemInfoBlock, MemInfoBlockCache, and related classes defined and used in memprof_allocator.cpp.
For now, the memory profile is dumped to text (stderr by default, but honors the sanitizer_common log_path flag). It is dumped in either a default verbose format, or an optional terse format.
This patch also adds a set of tests for the core functionality.
Differential Revision: https://reviews.llvm.org/D87120
show more ...
|