[all-commits] [llvm/llvm-project] d56ce3: [Clang] Non-polymorphic trivially relocatable type...
Aiden Grossman via All-commits
all-commits at lists.llvm.org
Tue Jun 10 00:37:22 PDT 2025
Branch: refs/heads/users/boomanaiden154/main.ci-cleanup-buildkite-test-report-script
Home: https://github.com/llvm/llvm-project
Commit: d56ce312d0c2e5ae74476977a8952dbb3ba4c513
https://github.com/llvm/llvm-project/commit/d56ce312d0c2e5ae74476977a8952dbb3ba4c513
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/SemaCXX/attr-trivial-abi.cpp
M clang/test/SemaObjCXX/attr-trivial-abi.mm
Log Message:
-----------
[Clang] Non-polymorphic trivially relocatable types can have [[trivial_abi]] (#143111)
Use the definition of trivially relocatable types to short-circuit some
checks for trivial_abi.
Note that this is mostly a no-op as there is a lot of overlap between
trivial_abi and trivial relocatability (ie, I can't envision a scenario
in which there would be a trivially relocatable type that would not be
eligible for trivial_abi based on its special member function... which
is good!)
Note that for bases and members, we need to check CanPassInRegister
rather than just relocation. So we do these checks first, which leads to
better diagnostics.
Commit: 6881c7d5fad8182116e41cc8fc061773afd5ec88
https://github.com/llvm/llvm-project/commit/6881c7d5fad8182116e41cc8fc061773afd5ec88
Author: Jim Lin <jim at andestech.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/reassoc-shl-addi-add.ll
Log Message:
-----------
[RISCV] Don't select sh{1,2,3}add if shl doesn't have one use (#143351)
Try to fix https://github.com/llvm/llvm-project/pull/130829#pullrequestreview-2730533158.
There's no benefit if shl doesn't have one use.
Commit: 5f648c370edf5d71c471ffbabdaaa821ad05fb4b
https://github.com/llvm/llvm-project/commit/5f648c370edf5d71c471ffbabdaaa821ad05fb4b
Author: David Green <david.green at arm.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
M clang/test/CodeGen/ptrauth-in-c-struct.c
M clang/test/CodeGenCXX/ptrauth-qualifier-struct.cpp
M clang/test/CodeGenCXX/trivial_abi.cpp
Log Message:
-----------
[AArch64] Change the coercion type of structs with pointer members. (#135064)
The aim here is to avoid a ptrtoint->inttoptr round-trip through the function
argument whilst keeping the calling convention the same. Given a struct which
is <= 128bits in size, which can only contain either 1 or 2 pointers, we
convert to a ptr or [2 x ptr] as opposed to the old coercion that uses i64 or
[2 x i64]. This helps alias analysis produce more accurate results.
Commit: bfe096760345fb040138e10a2884b95fbd812dc9
https://github.com/llvm/llvm-project/commit/bfe096760345fb040138e10a2884b95fbd812dc9
Author: Jim Lin <jim at andestech.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Remove the TODO for vqdotsu. NFC.
It has been supported by #141267.
Commit: 487e757f3e587aedc1668fb9cb18a8d464913605
https://github.com/llvm/llvm-project/commit/487e757f3e587aedc1668fb9cb18a8d464913605
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-06-09 (Mon, 09 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CGExprCXX.cpp
Log Message:
-----------
[clang][NFC] Remove dead PassTypeToPlacementDelete field (#143448)
The CallDeleteDuringNew::PassTypeToPlacementDelete field became unneeded
during the many refactorings of P2719 but I didn't actually remove it.
Commit: 530f5b779111034da78c3419eeda7a360c101755
https://github.com/llvm/llvm-project/commit/530f5b779111034da78c3419eeda7a360c101755
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] LowerStore - always split 512-bit concatenated stores (#143426)
All BWI regressions have now been addressed, so remove the special case
handling.
Commit: 0c3a7725375ec583147429cc367320f0e8506847
https://github.com/llvm/llvm-project/commit/0c3a7725375ec583147429cc367320f0e8506847
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rv64zba.ll
Log Message:
-----------
[RISCV][test] Add tests for add.uw with a constant
Commit: 77347d6513de6a6f5dee8ade76e0a0ad1552c12b
https://github.com/llvm/llvm-project/commit/77347d6513de6a6f5dee8ade76e0a0ad1552c12b
Author: Martin Storsjö <martin at martin.st>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
R llvm/test/tools/llvm-rc/Inputs/tag-accelerators-ascii-alt.rc
M llvm/test/tools/llvm-rc/Inputs/tag-accelerators.rc
M llvm/test/tools/llvm-rc/tag-accelerators.test
M llvm/tools/llvm-rc/ResourceFileWriter.cpp
Log Message:
-----------
[llvm-rc] Allow ALT on non-virtkey accelerators (#143374)
While
https://learn.microsoft.com/en-us/windows/win32/menurc/accelerators-resource
specifies that ALT only applies to virtkeys, this doesn't seem to be the
case in reality.
https://learn.microsoft.com/en-us/windows/win32/menurc/using-keyboard-accelerators
contains an example that uses this combination:
"B", ID_ACCEL5, ALT ; ALT_SHIFT+B
Also Microsoft also includes such cases in their repo of test cases:
https://github.com/microsoft/Windows-classic-samples/blob/263dd514ad215d0a40d1ec44b4df84b30ec11dcf/Samples/Win7Samples/begin/sdkdiff/sdkdiff.rc#L161-L164
Also MS rc.exe doesn't warn/error about this. However if applying SHIFT
or CONTROL on a non-virtkey accelerator, MS rc.exe does produce this
warning:
warning RC4203 : SHIFT or CONTROL used without VIRTKEY
Hence, keep the checks for SHIFT and CONTROL, but remove the checks for
ALT, which seems to have been incorrect.
This fixes one aspect of
https://github.com/llvm/llvm-project/issues/143157.
Commit: ecc8b29eda2acc517170e9dde212986ad677cc68
https://github.com/llvm/llvm-project/commit/ecc8b29eda2acc517170e9dde212986ad677cc68
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
Log Message:
-----------
[CIR][NFC] Use actual operand name in adaptor-obtained operands (#143028)
This mirrors incubator changes from https://github.com/llvm/clangir/pull/1661
Commit: 20e8de9c8f4cf54c6c57535428c987d921861034
https://github.com/llvm/llvm-project/commit/20e8de9c8f4cf54c6c57535428c987d921861034
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/test/Transforms/InstCombine/icmp.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
Log Message:
-----------
[InstCombine] Support nested GEPs in OptimizePointerDifference (#142958)
Currently OptimizePointerDifference() only handles single GEPs with a
common base, not GEP chains. This patch generalizes the support to
nested GEPs with a common base.
Finding the common base is a bit annoying because we want to stop as
soon as possible and not recurse into common GEP prefixes.
This helps avoids regressions from
https://github.com/llvm/llvm-project/pull/137297.
Commit: e5ff7055beb116f103f030d992fadea49c994511
https://github.com/llvm/llvm-project/commit/e5ff7055beb116f103f030d992fadea49c994511
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/test/Transforms/LoopUnroll/peel-last-iteration-with-guards.ll
Log Message:
-----------
[LoopPeel] Use loop guards when checking if last iter can be peeled. (#142605)
Apply loop guards to BTC before checking if the last iteration should be
peeled off. This also adds an assert to make sure applying the guards
does not pessimize the results. I checked on a large test set and it did
not trigger there, but it adds an additional guard to catch potential
cases where loop-guards pessimize results.
Peels ~15% more loops.
PR: https://github.com/llvm/llvm-project/pull/142605
Commit: 6a8464b1251ae6cf01eb3af34441e3ce714a5542
https://github.com/llvm/llvm-project/commit/6a8464b1251ae6cf01eb3af34441e3ce714a5542
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
R llvm/test/CodeGen/X86/avx512fp16-cvt-novl.ll
A llvm/test/CodeGen/X86/avx512fp16-novl.ll
Log Message:
-----------
[X86][FP16] Do not generate X86 FMIN/FMAX for FP16 when VLX not enabled, part 2 (#143483)
Fixes: https://godbolt.org/z/eYTxeqE48
Commit: f0d05b973b0d09521aad00d3aec36e4478626cc2
https://github.com/llvm/llvm-project/commit/f0d05b973b0d09521aad00d3aec36e4478626cc2
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M llvm/lib/IR/LLVMContextImpl.h
Log Message:
-----------
[NFC][DebugInfo] Make MDNodeKeyImpl<DILocation>::Column 16 bits (#143399)
Column is limited to 16 bits in several places in the compiler:
DebugInfoMetadata.cpp#L87, LLParser.cpp#L4706, and more
Slight compile time improvement due to reducing `hash_combine` workload
in `MDNodeKeyImpl<DILocation>::getHashValue()`.
Positively affects compile time regardless of whether Key Instructions
is enabled. See PR for numbers.
Commit: 4cafd28b7dd92080103d11cccc78d9a2f01e1242
https://github.com/llvm/llvm-project/commit/4cafd28b7dd92080103d11cccc78d9a2f01e1242
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
R lld/test/COFF/lto-late-arm.ll
Log Message:
-----------
[lld] Delete lto-late-arm.ll
This test is failing on a couple of bots and on premerge after
a082f665f85b1002ab22af263eeafceca5288657.
That patch configures the relevant libcalls for ARM in RuntimeLibCalls.
This causes __rt_sdiv to get pulled into the LTO preopt IR. This should
happen for other builtins as well, which means that the original issue
that the patch introducing this patch intended to diagnose should no
longer exist.
The compiler generated calls to builtins mentioned in
7f9a0048fa3fb5513c09731a7f82a851b0bcd609 should always have definitions,
assuming they are available in the link and will not only get pulled in
late if lazily loading symbols from archives. We otherwise get the
standard diagnostic if they are not.
Commit: 125a7fb26fa4a855b6feeda2ffe3050e4f91b8d6
https://github.com/llvm/llvm-project/commit/125a7fb26fa4a855b6feeda2ffe3050e4f91b8d6
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2025-06-10 (Tue, 10 Jun 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
M clang/test/CodeGen/ptrauth-in-c-struct.c
M clang/test/CodeGenCXX/ptrauth-qualifier-struct.cpp
M clang/test/CodeGenCXX/trivial_abi.cpp
M clang/test/SemaCXX/attr-trivial-abi.cpp
M clang/test/SemaObjCXX/attr-trivial-abi.mm
R lld/test/COFF/lto-late-arm.ll
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/test/CodeGen/RISCV/reassoc-shl-addi-add.ll
M llvm/test/CodeGen/RISCV/rv64zba.ll
R llvm/test/CodeGen/X86/avx512fp16-cvt-novl.ll
A llvm/test/CodeGen/X86/avx512fp16-novl.ll
M llvm/test/Transforms/InstCombine/icmp.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
M llvm/test/Transforms/LoopUnroll/peel-last-iteration-with-guards.ll
R llvm/test/tools/llvm-rc/Inputs/tag-accelerators-ascii-alt.rc
M llvm/test/tools/llvm-rc/Inputs/tag-accelerators.rc
M llvm/test/tools/llvm-rc/tag-accelerators.test
M llvm/tools/llvm-rc/ResourceFileWriter.cpp
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.6
[skip ci]
Compare: https://github.com/llvm/llvm-project/compare/b28384f28b8e...125a7fb26fa4
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