[all-commits] [llvm/llvm-project] 7c5542: Revert "[rtsan] Intercept aligned_alloc on all ver...

Yuxuan Chen via All-commits all-commits at lists.llvm.org
Mon Oct 28 22:32:44 PDT 2024


  Branch: refs/heads/users/yuxuanchen1997/coro-fix-cgscc-update
  Home:   https://github.com/llvm/llvm-project
  Commit: 7c554265ce0b94059f216dcab643055e98c8f439
      https://github.com/llvm/llvm-project/commit/7c554265ce0b94059f216dcab643055e98c8f439
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-10-28 (Mon, 28 Oct 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h

  Log Message:
  -----------
  Revert "[rtsan] Intercept aligned_alloc on all versions of OSX if available on build machine (#112780)" (#113982)

This reverts commit 97fb21ac1d6bc528b61a555356457ff2129dfde1.

Due to issue brought up in #112780

> Unfortunately this breaks the build on our (automerger) bots, which
have -mmacosx-version-min=10.13 and also
-Werror=unguarded-availability-new . I was thinking about patching it
via wrapping in __builtin_available check (which I believe is the right
one to use, as it should match the -mmacosx-version-min ) - but can't
actually think of a quick fix, due to interceptors being defined via C
macros.

>
llvm-project/compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp:475:21:
error: 'aligned_alloc' is only available on macOS 10.15 or newer
[-Werror,-Wunguarded-availability-new] 475 | INTERCEPTOR(void *,
aligned_alloc, SIZE_T alignment, SIZE_T size) {


  Commit: b46a0482f9e4c0ee82b38da794b20f8f1a76f044
      https://github.com/llvm/llvm-project/commit/b46a0482f9e4c0ee82b38da794b20f8f1a76f044
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-29 (Tue, 29 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/Sema/arithmetic-fence-builtin.c

  Log Message:
  -----------
  [clang][bytecode] Implement __builtin_arithmetic_fence (#113937)


  Commit: 1549a0c183ee337a6de4c3933e10828808c6a094
      https://github.com/llvm/llvm-project/commit/1549a0c183ee337a6de4c3933e10828808c6a094
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-29 (Tue, 29 Oct 2024)

  Changed paths:
    M mlir/docs/Bufferization.md
    M mlir/include/mlir/Dialect/SCF/Transforms/Passes.h
    M mlir/include/mlir/Dialect/SCF/Transforms/Passes.td
    M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
    R mlir/lib/Dialect/SCF/Transforms/Bufferize.cpp
    M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
    M mlir/test/Dialect/SCF/bufferize.mlir

  Log Message:
  -----------
  [mlir][SCF] Remove `scf-bufferize` pass (#113840)

The dialect conversion-based bufferization passes have been migrated to
One-Shot Bufferize about two years ago. To clean up the code base, this
commit removes the `scf-bufferize` pass, one of the few remaining parts
of the old infrastructure. Most bufferization passes have already been
removed.

Note for LLVM integration: If you depend on this pass, migrate to
One-Shot Bufferize or copy the pass to your codebase.


  Commit: 6233346895abfb57782511cddc263d439fdd537b
      https://github.com/llvm/llvm-project/commit/6233346895abfb57782511cddc263d439fdd537b
  Author: Chengjun <chengjunp at Nvidia.com>
  Date:   2024-10-28 (Mon, 28 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h

  Log Message:
  -----------
  [GenericCycle] Add a Cache for getExitBlocks in GenericCycle (#112290)

In `UniformityAnalysis`, we need to get the exit blocks of cycles in the
`DivergencePropagator` and currently, we have to do a search for the
exit blocks every time. In this change, we add a cache of the results in
the `GenericCycle` so that it can save the compile time. By testing, for
some large cases, this can save about 60% compile time in the
`UniformityAnalysis`.


  Commit: 61353cc1f65f02477eedeebcb08e9193cbd53305
      https://github.com/llvm/llvm-project/commit/61353cc1f65f02477eedeebcb08e9193cbd53305
  Author: Eisuke Kawashima <e.kawaschima+github at gmail.com>
  Date:   2024-10-28 (Mon, 28 Oct 2024)

  Changed paths:
    M compiler-rt/lib/asan/scripts/asan_symbolize.py
    M compiler-rt/lib/hwasan/scripts/hwasan_symbolize

  Log Message:
  -----------
  [compiler-rt] Fix invalid escape sequences in python files (#94030)

\d, \( and \) are not valid escape sequences; since python 3.12
they give SyntaxWarning, and will raise SyntaxError in future.
https://docs.python.org/3.12/whatsnew/3.12.html#other-language-changes

r"\(\d\)" and "\\(\\d\\)" are equivalent but the former is the shorter.

Co-authored-by: Eisuke Kawashima <e-kwsm at users.noreply.github.com>


  Commit: 1ceccbb0dd9d8539fec2213566fe6cc2a05b7993
      https://github.com/llvm/llvm-project/commit/1ceccbb0dd9d8539fec2213566fe6cc2a05b7993
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-28 (Mon, 28 Oct 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/LiveRegMatrix.h
    M llvm/lib/CodeGen/LiveRegMatrix.cpp
    M llvm/lib/CodeGen/VirtRegMap.cpp
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill-inspect-subrange.mir
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill.mir
    A llvm/test/CodeGen/AMDGPU/issue98474-assigned-physreg-interference.mir
    A llvm/test/CodeGen/AMDGPU/issue98474-need-live-out-undef-subregister-def.ll
    A llvm/test/CodeGen/AMDGPU/issue98474-virtregrewriter-live-out-undef-subregisters.mir
    A llvm/test/MachineVerifier/AMDGPU/issue98474-missing-def-liveout-physical-subregister.mir

  Log Message:
  -----------
  VirtRegRewriter: Add implicit register defs for live out undef lanes (#112679)

If an undef subregister def is live into another block, we need to
maintain a physreg def to track the liveness of those lanes. This
would manifest a verifier error after branch folding, when the cloned
tail block use no longer had a def.

We need to detect interference with other assigned intervals to avoid
clobbering the undef lanes defined in other intervals, since the undef
def didn't count as interference. This is pretty ugly and adds a new
dependency on LiveRegMatrix, keeping it live for one more pass. It also
adds a lot of implicit operand spam (we really should have a better
representation for this).

There is a missing verifier check for this situation. Added an xfailed
test that demonstrates this. We may also be able to revert the changes
in 47d3cbcf842a036c20c3f1c74255cdfc213f41c2.

It might be better to insert an IMPLICIT_DEF before the instruction
rather than using the implicit-def operand.

Fixes #98474


  Commit: a461869db3bdc372203c9a7b8326d66a626f80d9
      https://github.com/llvm/llvm-project/commit/a461869db3bdc372203c9a7b8326d66a626f80d9
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-28 (Mon, 28 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Pass.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintInstructionCount.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/unittests/SandboxIR/PassTest.cpp

  Log Message:
  -----------
  [SandboxIR][Pass] Implement Analyses class (#113962)

The Analyses class provides a way to pass around commonly used Analyses
to SandboxIR passes throught `runOnFunction()` and `runOnRegion()`
functions.


  Commit: 6128ff6630762310f6ae4eb61adda02cb4ad5260
      https://github.com/llvm/llvm-project/commit/6128ff6630762310f6ae4eb61adda02cb4ad5260
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-10-28 (Mon, 28 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/MachO.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/MachOObjectFormat.h
    M llvm/lib/ExecutionEngine/Orc/Shared/MachOObjectFormat.cpp
    M llvm/unittests/ExecutionEngine/JITLink/CMakeLists.txt
    R llvm/unittests/ExecutionEngine/JITLink/JITLinkMocks.cpp
    R llvm/unittests/ExecutionEngine/JITLink/JITLinkMocks.h
    A llvm/unittests/ExecutionEngine/JITLink/JITLinkTestUtils.cpp
    A llvm/unittests/ExecutionEngine/JITLink/JITLinkTestUtils.h
    M llvm/unittests/ExecutionEngine/JITLink/LinkGraphTests.cpp
    A llvm/unittests/ExecutionEngine/JITLink/MachOLinkGraphTests.cpp
    M llvm/unittests/ExecutionEngine/JITLink/MemoryManagerErrorTests.cpp

  Log Message:
  -----------
  [JITLink][MachO] Add convenience functions for default text/data sections.

The getMachODefaultTextSection and getMachODefaultRWDataSection functions
return the "__TEXT,__text" and "__DATA,__data" sections respectively, creating
empty sections if the default sections are not already present in the graph.
These functions can be used by utilities that want to add code or data to these
standard sections (e.g. these functions can be used to supply the section
argument to the createAnonymousPointerJumpStub and
createPointerJumpStubBlock functions in the various targets).


  Commit: 0c1c37bfbed08c9d4e414a10f46cbed9a3e4c870
      https://github.com/llvm/llvm-project/commit/0c1c37bfbed08c9d4e414a10f46cbed9a3e4c870
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-10-29 (Tue, 29 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp

  Log Message:
  -----------
  [TLI] Add support for the `tgamma` libcall. (#113791)

This patch adds the `tgamma` libcall.


  Commit: 18311093abe6481388a0d963d58438d743b47569
      https://github.com/llvm/llvm-project/commit/18311093abe6481388a0d963d58438d743b47569
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-29 (Tue, 29 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/test/Transforms/InstCombine/vec_shuffle.ll

  Log Message:
  -----------
  [InstCombine] Do not fold `shufflevector(select)` if the select condition is a vector (#113993)

Since `shufflevector` is not element-wise, we cannot do fold it into
select when the select condition is a vector.
For shufflevector that doesn't change the length, it doesn't crash, but
it is still a miscompilation: https://alive2.llvm.org/ce/z/s8saCx

Fixes https://github.com/llvm/llvm-project/issues/113986.


  Commit: 635c344dfb3227f80c76dfbee9d6bf44ef742675
      https://github.com/llvm/llvm-project/commit/635c344dfb3227f80c76dfbee9d6bf44ef742675
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-28 (Mon, 28 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/test/CodeGen/X86/vector-compress.ll

  Log Message:
  -----------
  [X86] Add vector_compress patterns with a zero vector passthru. (#113970)

We can use the kz form to automatically zero the extra elements.

Fixes #113263.


  Commit: 00ca2071e08f3a82171e564618981906a15e8dca
      https://github.com/llvm/llvm-project/commit/00ca2071e08f3a82171e564618981906a15e8dca
  Author: Jerry Sun <105613447+jerryyiransun at users.noreply.github.com>
  Date:   2024-10-28 (Mon, 28 Oct 2024)

  Changed paths:
    M llvm/utils/TableGen/Attributes.cpp
    M llvm/utils/TableGen/CTagsEmitter.cpp
    M llvm/utils/TableGen/DXILEmitter.cpp
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp
    M llvm/utils/TableGen/IntrinsicEmitter.cpp
    M llvm/utils/TableGen/OptionParserEmitter.cpp
    M llvm/utils/TableGen/PseudoLoweringEmitter.cpp
    M llvm/utils/TableGen/VTEmitter.cpp

  Log Message:
  -----------
  [TableGen] [NFC] Remove unused includes in TableGen BE (#113725)

split PR as requested from
https://github.com/llvm/llvm-project/pull/113318.

Removes unused imports in TableGen BE


  Commit: 6588073724d3241d90663e45154d806a28bce95a
      https://github.com/llvm/llvm-project/commit/6588073724d3241d90663e45154d806a28bce95a
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-29 (Tue, 29 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp

  Log Message:
  -----------
  [mlir][func] Fix incorrect API usage in `FuncOpConversion` (#113977)

This commit fixes a case of incorrect dialect conversion API usage
during `FuncOpConversion`. `replaceAllUsesExcept` (same as
`replaceAllUsesWith`) is currently not supported in a dialect
conversion. `replaceUsesOfBlockArgument` should be used instead. It
sometimes works anyway (like in this case), but that's just because of
the way we insert materializations.

This commit is in preparation of merging the 1:1 and 1:N dialect
conversion drivers. (At that point, the current use of
`replaceAllUsesExcept` will no longer work.)


  Commit: 828467a54e156cbb04820ae47df32c45fbc75fc0
      https://github.com/llvm/llvm-project/commit/828467a54e156cbb04820ae47df32c45fbc75fc0
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-10-29 (Tue, 29 Oct 2024)

  Changed paths:
    M lld/ELF/Symbols.h
    M llvm/include/llvm/Support/Endian.h
    M llvm/lib/ExecutionEngine/ExecutionEngine.cpp

  Log Message:
  -----------
  Fix warnings introduced in #111434 [-Wnontrivial-memaccess]


  Commit: d3b98559be72682da45df73522173cb315912f6f
      https://github.com/llvm/llvm-project/commit/d3b98559be72682da45df73522173cb315912f6f
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2024-10-29 (Tue, 29 Oct 2024)

  Changed paths:
    M libcxx/include/__vector/vector.h
    M libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp

  Log Message:
  -----------
  Add exception guard for constructor vector(n, x, a) (#113086)

Added exception guard to the `vector(n, x, a)` constructor to enhance
exception safety. This change ensures that the `vector(n, x, a)`
constructor is consistent with other constructors, such as `vector(n)`,
`vector(n, x)`, `vector(n, a)`, in terms of exception safety.


  Commit: 15eb5af3d4e764a8d35186169392eea2b8f594d6
      https://github.com/llvm/llvm-project/commit/15eb5af3d4e764a8d35186169392eea2b8f594d6
  Author: Yuxuan Chen <ych at fb.com>
  Date:   2024-10-28 (Mon, 28 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/Sema/arithmetic-fence-builtin.c
    M compiler-rt/lib/asan/scripts/asan_symbolize.py
    M compiler-rt/lib/hwasan/scripts/hwasan_symbolize
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
    M libcxx/include/__vector/vector.h
    M libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp
    M lld/ELF/Symbols.h
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/CodeGen/LiveRegMatrix.h
    M llvm/include/llvm/ExecutionEngine/JITLink/MachO.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/MachOObjectFormat.h
    M llvm/include/llvm/SandboxIR/Pass.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/Support/Endian.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintInstructionCount.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
    M llvm/lib/CodeGen/LiveRegMatrix.cpp
    M llvm/lib/CodeGen/VirtRegMap.cpp
    M llvm/lib/ExecutionEngine/ExecutionEngine.cpp
    M llvm/lib/ExecutionEngine/Orc/Shared/MachOObjectFormat.cpp
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill-inspect-subrange.mir
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill.mir
    A llvm/test/CodeGen/AMDGPU/issue98474-assigned-physreg-interference.mir
    A llvm/test/CodeGen/AMDGPU/issue98474-need-live-out-undef-subregister-def.ll
    A llvm/test/CodeGen/AMDGPU/issue98474-virtregrewriter-live-out-undef-subregisters.mir
    M llvm/test/CodeGen/X86/vector-compress.ll
    A llvm/test/MachineVerifier/AMDGPU/issue98474-missing-def-liveout-physical-subregister.mir
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    M llvm/test/Transforms/InstCombine/vec_shuffle.ll
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/ExecutionEngine/JITLink/CMakeLists.txt
    R llvm/unittests/ExecutionEngine/JITLink/JITLinkMocks.cpp
    R llvm/unittests/ExecutionEngine/JITLink/JITLinkMocks.h
    A llvm/unittests/ExecutionEngine/JITLink/JITLinkTestUtils.cpp
    A llvm/unittests/ExecutionEngine/JITLink/JITLinkTestUtils.h
    M llvm/unittests/ExecutionEngine/JITLink/LinkGraphTests.cpp
    A llvm/unittests/ExecutionEngine/JITLink/MachOLinkGraphTests.cpp
    M llvm/unittests/ExecutionEngine/JITLink/MemoryManagerErrorTests.cpp
    M llvm/unittests/SandboxIR/PassTest.cpp
    M llvm/utils/TableGen/Attributes.cpp
    M llvm/utils/TableGen/CTagsEmitter.cpp
    M llvm/utils/TableGen/DXILEmitter.cpp
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp
    M llvm/utils/TableGen/IntrinsicEmitter.cpp
    M llvm/utils/TableGen/OptionParserEmitter.cpp
    M llvm/utils/TableGen/PseudoLoweringEmitter.cpp
    M llvm/utils/TableGen/VTEmitter.cpp
    M mlir/docs/Bufferization.md
    M mlir/include/mlir/Dialect/SCF/Transforms/Passes.h
    M mlir/include/mlir/Dialect/SCF/Transforms/Passes.td
    M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
    M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
    R mlir/lib/Dialect/SCF/Transforms/Bufferize.cpp
    M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
    M mlir/test/Dialect/SCF/bufferize.mlir

  Log Message:
  -----------
  Merge branch 'main' into users/yuxuanchen1997/coro-fix-cgscc-update


Compare: https://github.com/llvm/llvm-project/compare/3bbd280015ba...15eb5af3d4e7

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