User Details
- User Since
- Oct 19 2020, 10:52 AM (153 w, 2 d)
Fri, Sep 8
Wed, Sep 6
Fri, Sep 1
- Use || to merge counters that refer to the same regions
- Use || to merge counters from raw profiles
Aug 28 2023
Fixed the issue that causes a crash in InstCombinePHI.cpp. Phi instructions need to be inserted at the beginning of basic blocks, and profile increments need to be inserted after phis for conditional operators.
Aug 22 2023
Aug 21 2023
Aug 18 2023
Remove hyphen between "single counter" for consistency
Ensure the correct traversal order for loops in CodeGenPGO to fix the profile test failures (Profile/cxx-hash-v2.cpp and Profile/cxx-rangefor.cpp)
Aug 17 2023
Aug 16 2023
I added a few nit-picks. Other than that, looks good to me.
Aug 15 2023
Aug 14 2023
- Extend the prototype by implementing the rest of the control-flow statements
- Rename the prototype to single byte counters to be consistent with the single byte coverage used in PGO
Aug 11 2023
Please remove the following in the commit message:
Reuse the CoverageSize field of the first file record to store the section size after Version4.
Aug 9 2023
Aug 8 2023
Aug 7 2023
We started seeing a segmentation fault after this patch in our mac builders.
[12554/40876](1) RUST host_x64/netstack3_core_instrumented_lib_test host_x64/exe.unstripped/netstack3_core_instrumented_lib_test FAILED: host_x64/netstack3_core_instrumented_lib_test host_x64/exe.unstripped/netstack3_core_instrumented_lib_test PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace. Stack dump: #0 0x0000000107d536d8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x1057e16d8) #1 0x0000000107d515c9 llvm::sys::RunSignalHandlers() (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x1057df5c9) #2 0x0000000107d53d66 SignalHandler(int) (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x1057e1d66) #3 0x00007fff70b215fd (/usr/lib/system/libsystem_platform.dylib+0x7fff673fc5fd) #4 0x0000000000000000 #5 0x00000001077bf1d2 llvm::object::ArchiveMemberHeader::getSize() const (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x10524d1d2) #6 0x00000001077c09cf llvm::object::Archive::Child::getName() const (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x10524e9cf) #7 0x00000001077c149e llvm::object::Archive::Child::getMemoryBufferRef() const (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x10524f49e) #8 0x0000000104e9cf7b lld::macho::ArchiveFile::addLazySymbols() (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x10292af7b) #9 0x0000000104e835c6 addFile(llvm::StringRef, LoadType, bool, bool, bool, bool) (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x1029115c6) #10 0x0000000104e80852 lld::macho::link(llvm::ArrayRef<char const*>, llvm::raw_ostream&, llvm::raw_ostream&, bool, bool) (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x10290e852) #11 0x000000010537f33f lld::unsafeLldMain(llvm::ArrayRef<char const*>, llvm::raw_ostream&, llvm::raw_ostream&, llvm::ArrayRef<lld::DriverDef>, bool) (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x102e0d33f) #12 0x000000010263af99 lld_main(int, char**, llvm::ToolContext const&) (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x1000c8f99) #13 0x00000001028474bb findTool(int, char**, char const*) (/opt/s/w/ir/x/w/fuchsia/out/not-default/../../prebuilt/third_party/clang/mac-x64/bin/ld64.lld+0x1002d54bb) #14 0x00007fff70928cc9 (/usr/lib/system/libdyld.dylib+0x7fff67203cc9) #15 0x000000000000009f clang++: error: unable to execute command: Segmentation fault: 11 clang++: error: linker command failed due to signal (use -v to see invocation)
Jul 19 2023
Thanks, that looks better.
Jul 18 2023
Jul 15 2023
Can we simplify the commit message? We do not need all the details in the commit message as we have them in the Discourse discussion. I would suggest something like: "llvm-cov currently generates a single top-level index HTML file, which causes rendering scalability issues in large projects. This patch adds support for hierarchical directory structure into the HTML reports to solve scalability issues."
Jun 9 2023
Jun 8 2023
Jun 5 2023
Created a duplicate review by mistake.
May 25 2023
We started seeing the following failure in our Clang Toolchain builders:
[1576/1617](6) Linking CXX shared library /b/s/w/ir/x/w/staging/llvm_build/lib/clang/17/lib/x86_64-unknown-fuchsia/libclang_rt.hwasan.so FAILED: /b/s/w/ir/x/w/staging/llvm_build/lib/clang/17/lib/x86_64-unknown-fuchsia/libclang_rt.hwasan.so ld.lld: error: undefined symbol: __sanitizer::RenderFrame(__sanitizer::InternalScopedString*, char const*, int, unsigned long, __sanitizer::AddressInfo const*, bool, char const*)
May 9 2023
Changed the commit message
May 8 2023
I did not have a change to finish reviewing this patch, but it breaks binary-id.c and binary-id-lookup.c tests that you can see in the pre-merge checks.
LLVM Profile Error: Failed to write file "/var/lib/buildkite-agent/builds/llvm-project/build/projects/compiler-rt/test/profile/Profile-x86_64/Linux/Output/binary-id.c.tmp.profraw": File exists error: /var/lib/buildkite-agent/builds/llvm-project/build/projects/compiler-rt/test/profile/Profile-x86_64/Linux/Output/binary-id.c.tmp.profraw: invalid instrumentation profile data (file header is corrupt)
Apr 26 2023
Extend the comment about the usage of CoveragePrefixMap.
Add text to document that coverage prefix map should be traversed in reverse order.
Apr 25 2023
Added more info into HelpText and reversed prefix map in the first place to incorporate coworker feedback.
GCC uses a linked list to store the prefix mappings in reverse order:
https://github.com/gcc-mirror/gcc/blob/master/gcc/file-prefix-map.cc#L27
Added a comment about reverse traversal.
Addressed feedback and rebased.
Updated the text.
Apr 24 2023
Remove the changes from debuginfo, which is handled in D14897.
Apr 20 2023
I compared Clang and GCC behavior.
1) Following user-specified prefix mapping order
GCC uses a linked list to store the prefix mappings, so it applies the prefix mappings based on the user-provided order.
https://github.com/gcc-mirror/gcc/blob/master/gcc/file-prefix-map.cc#L27
Whereas, Clang currently uses an std::map, which does NOT follow user-provided order. So, Clang and GCC behavior do not match on that.
Modified the test case
Apr 19 2023
Mar 24 2023
Thanks, and the issue is fixed in your reland.
Mar 23 2023
We started seeing a segmentation fault while running ExecutionEngine tests on Mac.
******************** TEST 'LLVM :: ExecutionEngine/MCJIT/2003-01-04-ArgumentBug.ll' FAILED ******************** Script: -- : 'RUN: at line 1'; /opt/s/w/ir/x/w/staging/llvm_build/bin/lli -jit-kind=mcjit /opt/s/w/ir/x/w/llvm-llvm-project/llvm/test/ExecutionEngine/MCJIT/2003-01-04-ArgumentBug.ll > /dev/null : 'RUN: at line 2'; /opt/s/w/ir/x/w/staging/llvm_build/bin/lli /opt/s/w/ir/x/w/llvm-llvm-project/llvm/test/ExecutionEngine/MCJIT/2003-01-04-ArgumentBug.ll > /dev/null -- Exit Code: 139
Mar 22 2023
We started seeing a test failure in avr-ld.c.
/b/s/w/ir/x/w/llvm-llvm-project/clang/test/Driver/avr-ld.c:48:11: error: // LINKP: {{".*ld.*"}} {{.*}} "--defsym=__DATA_REGION_ORIGIN__=0x800100" "-plugin" {{.*}} "-plugin-opt=mcpu=atmega328" ^ <stdin>:1:1: note: scanning from here Fuchsia clang version 17.0.0 (https://llvm.googlesource.com/llvm-project 0d37efdbc599e61ce2a0418723a66d6b45aea8d7) ^ <stdin>:6:239: note: possible intended match here
Mar 13 2023
Your commit message mentioned: "Fuchsia is not yet supported."
Is there anything that stops us generating MC/DC coverage in Fuchsia or is it just not tested yet?
Mar 10 2023
Overall, it looks good to me. I added a few minor things.
Please add --show-mcdc to the llvm-cov command guide.
https://github.com/llvm/llvm-project/blob/main/llvm/docs/CommandGuide/llvm-cov.rst
Mar 8 2023
Can you please add a test with DEBUGINFOD_CACHE_POLICY environment variable?
Mar 1 2023
Feb 17 2023
Please remove the dot at the end of the commit message.
Feb 10 2023
Feb 9 2023
Addressed reviewer feedback.
Feb 8 2023
Corrected Petr's name.