Commit
be31a7b7eec8ed7c033f3087dd88e8fd685c3ded
by arsenm2GlobalISel: Move extension scalar narrowing to separate function Also rename a few things. Handling a different requested type will require this to become much more complex.
|
 | llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp |
 | llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h |
Commit
a66d2817ca9e1dd72674627b18aec80d077910f0
by arsenm2GlobalISel: Don't ignore requested ext narrowing type This was assuming the narrow target was the source type. Respect the requested type when these don't match by using intermediate merges. This avoids producing very wide, illegal shift expansions.
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-shl.mir |
 | llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sext.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-zext.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ashr.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-unmerge-values.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-anyext.mir |
 | llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h |
 | llvm/test/CodeGen/AArch64/GlobalISel/legalize-sext-zext-128.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-lshr.mir |
Commit
e12b840abfcde8ec02062fa7600348ad4623d049
by arsenm2AMDGPU/GlobalISel: Improve lowering of G_SEXT_INREG Clamping the scalar is much better than lowering with superwide shifts for types > s64.
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sext-inreg.mir |
 | llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp |
Commit
8945b23af590286d3a48e72d59348eb218bb7fbd
by arsenm2AMDGPU: Update more tests to use modern buffer intrinsics
|
 | llvm/test/Transforms/StructurizeCFG/rebuild-ssa-infinite-loop.ll |
 | llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll |
 | llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll |
Commit
ff1e3cad71e69a35b05610691552950232ab1dbe
by wanyu9511Don't run powerpc lit test case on other platforms. Only run this test on powerpc tragets, because other platforms might not have powerpc registered.
|
 | llvm/test/tools/llc/aix-pic-setting.ll |
Commit
f5d98543b89ea5095f6bd185b2a32b75e1a0f09a
by arsenm2AMDGPU: Remove outdated comment
|
 | llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.cpp |
Commit
5f8e4121882b61d289237bb27636c76a030a9627
by Jonas Devlieghere[lldb/test] Exted test for CMTime data formatter Cover more cases handled by the formatter.
|
 | lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/TestDataFormatterCMTime.py |
 | lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/main.m |
Commit
59919c4d6b6370da7133bbca0d31844e21646bb1
by eric[libc++] Fix Windows DLL build for string. We need to mark string::npos with _LIBCPP_FUNC_VIS on the first in-class declaration, otherwise it might get ignored
|
 | libcxx/include/string |
Commit
39f746d8def66ef8f5c4d3f1eb4c4cee4baac988
by protze[OpenMP][Tool] Fix memory leak and double-allocation Fix the memory leak pointed out in https://reviews.llvm.org/D70412. And a second one due to double-allocation. Reviewed by: Hahnfeld Differential revision: https://reviews.llvm.org/D72779
|
 | openmp/tools/archer/ompt-tsan.cpp |
Commit
d0b02aecacc626d245a0e1ef5fe6276d6d3f9ed4
by wanyu9511Address redirect issue on Windows.
|
 | llvm/test/tools/llc/aix-pic-setting.ll |
Commit
2d7a8cf90478cd845ffb39763b0e95b7715322d2
by maskray[ELF] -r: don't create .interp `{clang,gcc} -nostdlib -r a.c` passes --dynamic-linker to the linker, and the expected behavior is to ignore it. If .interp is kept in the relocatable object file, a final link will get PT_INTERP even if --dynamic-linker is not specified. glibc ld.so expects to see PT_DYNAMIC and the executable will likely fail to run. Ignore --dynamic-linker in -r mode as well as -shared.
|
 | lld/test/ELF/dynamic-linker.s |
 | lld/ELF/Writer.cpp |
Commit
6f3effbbf054e75039030d389752608efd5a0221
by kparzysz[Hexagon] Update autogenerated intrinsic info in clang In addition to that, use target features to validate intrinsic availability on a given target.
|
 | clang/test/Sema/builtins-hexagon-v62.c |
 | clang/include/clang/Basic/BuiltinsHexagonDep.def |
 | clang/test/CodeGen/hexagon-brev-store-elm.c |
 | clang/test/Sema/builtins-hexagon-v60.c |
 | clang/include/clang/Basic/BuiltinsHexagon.def |
 | clang/test/CodeGen/builtins-hexagon-circ.c |
 | clang/lib/Basic/Targets/Hexagon.cpp |
 | clang/test/Sema/builtins-hexagon-v55.c |
 | clang/test/Sema/builtins-hvx-v60.c |
 | clang/test/CodeGen/hexagon-brev-ld-ptr-incdec.c |
 | clang/test/Sema/builtins-hvx-none.c |
 | clang/lib/Sema/SemaChecking.cpp |
 | clang/test/Sema/builtins-hvx-v62.c |
 | clang/include/clang/Sema/Sema.h |
Commit
53b68e676faf208b4a8f817e9bd4ddd522cc6006
by kazuResubmit: [JumpThreading] Thread jumps through two basic blocks This reverts commit 2d258ed931cdf47a7d1dcf08ad963b5452a8670f. This revision fixes the Windows build and adds a testcase for it, namely thread-two-bbs3.ll. My original patch improperly copied EH pads on Windows. This patch disregards jump threading opportunities having to do with EH pads. [JumpThreading] Thread jumps through two basic blocks Summary: This patch teaches JumpThreading.cpp to thread through two basic blocks like: bb3: %var = phi i32* [ null, %bb1 ], [ @a, %bb2 ] %tobool = icmp eq i32 %cond, 0 br i1 %tobool, label %bb4, label ... bb4: %cmp = icmp eq i32* %var, null br i1 %cmp, label bb5, label bb6 by duplicating basic blocks like bb3 above. Once we duplicate bb3 as bb3.dup and redirect edge bb2->bb3 to bb2->bb3.dup, we have: bb3: %var = phi i32* [ @a, %bb2 ] %tobool = icmp eq i32 %cond, 0 br i1 %tobool, label %bb4, label ... bb3.dup: %var = phi i32* [ null, %bb1 ] %tobool = icmp eq i32 %cond, 0 br i1 %tobool, label %bb4, label ... bb4: %cmp = icmp eq i32* %var, null br i1 %cmp, label bb5, label bb6 Then the existing code in JumpThreading.cpp can thread edge bb3.dup->bb4 through bb4 and eventually create bb3.dup->bb5. Reviewers: wmi Subscribers: hiraditya, jfb, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70247
|
 | llvm/test/Transforms/JumpThreading/thread-two-bbs1.ll |
 | llvm/lib/Transforms/Scalar/JumpThreading.cpp |
 | llvm/include/llvm/Transforms/Scalar/JumpThreading.h |
 | llvm/test/Transforms/JumpThreading/thread-two-bbs3.ll |
 | llvm/test/Transforms/JumpThreading/thread-two-bbs2.ll |
Commit
1f2dad1fd575ff24cfb2c5323c10e1014b516df0
by fedor.sergeev[GVN] add GVN parameters parsing to new pass manager Introduce parsing, add a few instances of parameter use into GVN-PRE tests. Reviewers: skatkov, asbirlea Reviewed By: skatkov Tags: #llvm Differential Revision: https://reviews.llvm.org/D72752
|
 | llvm/test/Transforms/GVN/PRE/pre-basic-add.ll |
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/test/Transforms/GVN/PRE/pre-single-pred.ll |
 | llvm/test/Transforms/GVN/PRE/load-pre-align.ll |
 | llvm/lib/Passes/PassRegistry.def |
 | llvm/test/Transforms/GVN/PRE/pre-gep-load.ll |
 | llvm/test/Transforms/GVN/PRE/local-pre.ll |
 | llvm/test/Transforms/GVN/PRE/pre-load.ll |
Commit
ecf0766cf14191fb44386a097e78325c7f555d81
by kparzysz[Hexagon] Add ELF flags for Hexagon v66 to ELFYAML.cpp
|
 | llvm/lib/ObjectYAML/ELFYAML.cpp |
Commit
40514a7d7a3b745ba43c2d014e54a0d78d65d957
by michael.hliao[clangd] Add workaround for GCC5 host compilers. NFC.
|
 | clang-tools-extra/clangd/Hover.cpp |
Commit
fc4e43ad618b6a00840f0fd0c84d32922dfd3cd2
by wanyu9511[NFC] Remove unnecessary link components. Remove unused link components in unittest according to post commit comments.
|
 | llvm/unittests/Target/PowerPC/CMakeLists.txt |
Commit
c299d1981deaf822dfaa06c791f3158bd6801e20
by peterscudo: Add initial memory tagging support. When the hardware and operating system support the ARM Memory Tagging Extension, tag primary allocation granules with a random tag. The granules either side of the allocation are tagged with tag 0, which is normally excluded from the set of tags that may be selected randomly. Memory is also retagged with a random tag when it is freed, and we opportunistically reuse the new tag when the block is reused to reduce overhead. This causes linear buffer overflows to be caught deterministically and non-linear buffer overflows and use-after-free to be caught probabilistically. This feature is currently only enabled for the Android allocator and depends on an experimental Linux kernel branch available here: https://github.com/pcc/linux/tree/android-experimental-mte All code that depends on the kernel branch is hidden behind a macro, ANDROID_EXPERIMENTAL_MTE. This is the same macro that is used by the Android platform and may only be defined in non-production configurations. When the userspace interface is finalized the code will be updated to use the stable interface and all #ifdef ANDROID_EXPERIMENTAL_MTE will be removed. Differential Revision: https://reviews.llvm.org/D70762
|
 | compiler-rt/lib/scudo/standalone/common.h |
 | compiler-rt/lib/scudo/standalone/combined.h |
 | compiler-rt/lib/scudo/standalone/memtag.h |
 | compiler-rt/lib/scudo/standalone/allocator_config.h |
 | compiler-rt/lib/scudo/standalone/primary32.h |
 | compiler-rt/lib/scudo/standalone/tests/primary_test.cpp |
 | compiler-rt/lib/scudo/standalone/wrappers_c.inc |
 | compiler-rt/lib/scudo/standalone/primary64.h |
 | compiler-rt/lib/scudo/standalone/linux.cpp |
 | compiler-rt/lib/scudo/standalone/tests/combined_test.cpp |