[all-commits] [llvm/llvm-project] f1e59d: Renaming Cuf passes to CUF (#113351)

Vitaly Buka via All-commits all-commits at lists.llvm.org
Tue Oct 22 14:13:53 PDT 2024


  Branch: refs/heads/users/vitalybuka/spr/msan-reduces-overhead-of-todo-by-10
  Home:   https://github.com/llvm/llvm-project
  Commit: f1e59dcb4587fe65837237f780ca55b221726ff3
      https://github.com/llvm/llvm-project/commit/f1e59dcb4587fe65837237f780ca55b221726ff3
  Author: Renaud Kauffmann <rkauffmann at nvidia.com>
  Date:   2024-10-22 (Tue, 22 Oct 2024)

  Changed paths:
    A flang/include/flang/Optimizer/Transforms/CUFOpConversion.h
    R flang/include/flang/Optimizer/Transforms/CufOpConversion.h
    M flang/include/flang/Optimizer/Transforms/Passes.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
    A flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
    R flang/lib/Optimizer/Transforms/CufImplicitDeviceGlobal.cpp
    R flang/lib/Optimizer/Transforms/CufOpConversion.cpp
    M flang/test/Fir/CUDA/cuda-implicit-device-global.f90

  Log Message:
  -----------
  Renaming Cuf passes to CUF (#113351)

For consistency with other dialects and other CUF passes and files, this
patch renames passes CufOpConversion to CUFOpConversion,
CufImplicitDeviceGlobal to CUFDeviceGlobal.
It also renames the file.


  Commit: 020fa86897c0d39d6a806221e330abf901be3cdd
      https://github.com/llvm/llvm-project/commit/020fa86897c0d39d6a806221e330abf901be3cdd
  Author: Artem Belevich <tra at google.com>
  Date:   2024-10-22 (Tue, 22 Oct 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h
    M llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    A llvm/test/DebugInfo/NVPTX/debug-ptx-symbols.ll

  Log Message:
  -----------
  [NVPTX] mangle symbols in debug info to conform to PTX restrictions. (#113216)

Until now debug info was printing the symbols names as-is and that
resulted in invalid PTX when the symbols contained characters that are
invalid for PTX. E.g. `__PRETTY_FUNCTION.something`

Debug info is somewhat disconnected from the symbols themselves, so the
regular "NVPTXAssignValidGlobalNames" pass can't easily fix them.

As the "plan B" this patch catches printout of debug symbols and fixes
them, as needed. One gotcha is that the same code path is used to print
the names of debug info sections. Those section names do start with a
'.debug'. The dot in those names is nominally illegal in PTX, but the
debug section names with a dot are accepted as a special case. The
downside of this change is that if someone ever has a `.debug*` symbol
that needs to be referred to from the debug info, that label will be
passed through as-is, and will still produce broken PTX output. If/when
we run into a case where we need it to work, we could consider only
passing through specific debug section names, or add a mechanism
allowing us to tell section names apart from regular symbols.

Fixes #58491


  Commit: c3aa8b7dd62065714256ad439afeab6fb2b1b89f
      https://github.com/llvm/llvm-project/commit/c3aa8b7dd62065714256ad439afeab6fb2b1b89f
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-22 (Tue, 22 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/msan_basic.ll
    M llvm/test/Instrumentation/MemorySanitizer/pr32842.ll

  Log Message:
  -----------
  Revert "[msan] Switch to -msan-handle-icmp-exact my default" (#113376)

Reverts llvm/llvm-project#113200

Breaks bots, see llvm/llvm-project#113200


  Commit: 71792dc570c5b0eca0937efbd57d9ea1457dc87f
      https://github.com/llvm/llvm-project/commit/71792dc570c5b0eca0937efbd57d9ea1457dc87f
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-22 (Tue, 22 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp

  Log Message:
  -----------
  [NFC][msan] Workaround arg evaluation order diff GCC vs Clang (#113378)


  Commit: 5c92f2331c7e02059baddaa3eaf35c039a48caf2
      https://github.com/llvm/llvm-project/commit/5c92f2331c7e02059baddaa3eaf35c039a48caf2
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-10-22 (Tue, 22 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineOperand.cpp
    M llvm/test/CodeGen/WebAssembly/externref-globalget.ll

  Log Message:
  -----------
  [WebAssembly] Fix MIR printing of reference types (#113028)

When printing a memory operand in MIR, this line

https://github.com/llvm/llvm-project/blob/d37bc32a65651e647148236ffb9728ea2e77eac3/llvm/lib/CodeGen/MachineOperand.cpp#L1247
calls this
https://github.com/llvm/llvm-project/blob/d37bc32a65651e647148236ffb9728ea2e77eac3/llvm/include/llvm/Support/Alignment.h#L238
which assumes `Rhs` (the size in this case) is positive.

But Wasm reference types' size is set to 0:
https://github.com/llvm/llvm-project/blob/d37bc32a65651e647148236ffb9728ea2e77eac3/llvm/include/llvm/CodeGen/ValueTypes.td#L326-L328

`getSize() > 0` condition was added with the Wasm reference types
support in
https://github.com/llvm/llvm-project/commit/46667a10039b664b953eb70534c27627b35a267d,
and it looks it was removed in #84751. This revives the condition so
that Wasm reference types will not crash the MIR printer.


  Commit: c77d8edf80570f450122a7687100553836149652
      https://github.com/llvm/llvm-project/commit/c77d8edf80570f450122a7687100553836149652
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-22 (Tue, 22 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/msan_basic.ll
    M llvm/test/Instrumentation/MemorySanitizer/pr32842.ll

  Log Message:
  -----------
  Revert "Revert "[msan] Switch to -msan-handle-icmp-exact my default"" (#113379)

Reverts llvm/llvm-project#113376

Fixed with #113378


  Commit: f07a39f58122c65ce8f93b4d805a676ee1d979be
      https://github.com/llvm/llvm-project/commit/f07a39f58122c65ce8f93b4d805a676ee1d979be
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-22 (Tue, 22 Oct 2024)

  Changed paths:
    A flang/include/flang/Optimizer/Transforms/CUFOpConversion.h
    R flang/include/flang/Optimizer/Transforms/CufOpConversion.h
    M flang/include/flang/Optimizer/Transforms/Passes.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
    A flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
    R flang/lib/Optimizer/Transforms/CufImplicitDeviceGlobal.cpp
    R flang/lib/Optimizer/Transforms/CufOpConversion.cpp
    M flang/test/Fir/CUDA/cuda-implicit-device-global.f90
    M llvm/lib/CodeGen/MachineOperand.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h
    M llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    M llvm/test/CodeGen/WebAssembly/externref-globalget.ll
    A llvm/test/DebugInfo/NVPTX/debug-ptx-symbols.ll

  Log Message:
  -----------
  rebase

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/741e224c712f...f07a39f58122

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list