Commit
efcdd598b766e764a7efb48b49e9ec8b0a590510
by craig.topper[RISCV] Teach VSETVLI inserter to use VSETIVLI when possible.
We always create the VL operand using a register, but if we can determine that it came from an ADDI X0, imm with a sufficiently small immediate, we can use VSETIVLI.
Reviewed By: frasercrmck
Differential Revision: https://reviews.llvm.org/D97332
|
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-mask-logic.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll |
 | llvm/test/CodeGen/RISCV/rvv/extractelt-fp-rv32.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-setcc.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-vrgather.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-setcc.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-splat-rv64.ll |
 | llvm/test/CodeGen/RISCV/rvv/vreductions-int-rv32.ll |
 | llvm/lib/Target/RISCV/RISCVISelLowering.cpp |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract.ll |
 | llvm/test/CodeGen/RISCV/rvv/extractelt-fp-rv64.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-mask-load-store.ll |
 | llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv32.ll |
 | llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv64.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-mask-splat.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-vrgather.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-splat-rv32.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-splat.ll |
 | llvm/test/CodeGen/RISCV/rvv/zvlsseg-zero-vl.ll |
Commit
7c926fee930012f9ec19cdaab23b7e154a3845ba
by dblaikieImprove attribute documentation for nodebug on typedefs
(followup to 8472fa6c54c9d044adcd147f6826bccebd730f30 )
|
 | clang/include/clang/Basic/AttrDocs.td |
Commit
b03bb054e19c550ba895ec406e7b04cd1531407e
by Jonas Devlieghere[llvm] Check availability for os_signpost
Add availability checks to the os_signpost code so this can be used with an older deployment target.
Differential revision: https://reviews.llvm.org/D97410
|
 | llvm/lib/Support/Signposts.cpp |
Commit
392fd3f1bf9f925942b385d8b99fb662d5739a83
by Yaxun.Liuupdate AMDGPU _Float16 support in clang doc
Reviewed by: Matt Arsenault
Differential Revision: https://reviews.llvm.org/D97386
|
 | clang/docs/LanguageExtensions.rst |
Commit
e9445765a5708a9097c253a5f783349ace2956ee
by i[test] Improve SanitizerCoverage tests on !associated and comdat
|
 | llvm/test/Instrumentation/SanitizerCoverage/interposable-symbol-nocomdat.ll |
 | llvm/test/Instrumentation/SanitizerCoverage/trace-pc-guard-comdat.ll |
 | llvm/test/Instrumentation/SanitizerCoverage/trace-pc-guard-nocomdat.ll |
 | llvm/test/Instrumentation/SanitizerCoverage/inline-bool-flag.ll |
Commit
151990dd94e5087c94527553e9a91b64ae864a71
by gkm[lld-macho] add code signature for native arm64 macOS
Differential Revision: https://reviews.llvm.org/D96164
|
 | llvm/include/llvm/BinaryFormat/MachO.h |
 | lld/MachO/SyntheticSections.cpp |
 | lld/MachO/OutputSegment.h |
 | lld/MachO/SyntheticSections.h |
 | lld/MachO/Writer.cpp |
Commit
4bc7c8631ad62487a290dd4b7791848b67635787
by chen3.liu[X86] Support amx-bf16 intrinsic.
Adding support for intrinsics of AMX-BF16. This patch alse fix a bug that AMX-INT8 instructions will be selected with wrong predicate.
Differential Revision: https://reviews.llvm.org/D97358
|
 | llvm/lib/Target/X86/X86LowerAMXType.cpp |
 | llvm/lib/Target/X86/X86InstrAMX.td |
 | llvm/test/CodeGen/X86/AMX/amx-tile-basic.ll |
 | clang/include/clang/Basic/BuiltinsX86_64.def |
 | clang/lib/Headers/amxintrin.h |
 | clang/test/CodeGen/X86/amx_api.c |
 | llvm/lib/Target/X86/X86ISelDAGToDAG.cpp |
 | llvm/lib/Target/X86/X86RegisterInfo.cpp |
 | llvm/include/llvm/IR/IntrinsicsX86.td |
 | llvm/lib/Target/X86/X86PreTileConfig.cpp |
 | llvm/lib/Target/X86/X86ExpandPseudo.cpp |
Commit
a9b33ffb8f84f0f5b1c2253973ed04bc776bd710
by aeubanks[ThinLTO][NewPM] Clean up dead code under -O0
We're running into undefined references using ThinLTO with -O0 on Windows/Chrome. This fixes that.
This matches the legacy PM.
Reviewed By: tejohnson
Differential Revision: https://reviews.llvm.org/D97414
|
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/test/Other/new-pm-O0-defaults.ll |
Commit
841f6995cd33b8891655b2aeb78deca548362c23
by clementval[flang][fir][NFC] Move remaining types to TableGen type definition
Move the remaing of FIR types to TableGen type definition. This follow suggestion in D96422.
Reviewed By: schweitz, jeanPerier, rriddle
Differential Revision: https://reviews.llvm.org/D96987
|
 | flang/include/flang/Optimizer/Dialect/FIRTypes.td |
 | flang/lib/Optimizer/Dialect/FIRType.cpp |
 | flang/include/flang/Optimizer/Dialect/FIROps.td |
 | flang/include/flang/Optimizer/Dialect/FIRType.h |
Commit
082ec3ab07760d1a6e47886246090c6f58708dbf
by eschweitz[flang][fir][NFC] Remove dead code.
This patch removes OpaqueAttr as it is no longer used.
Differential Revision: https://reviews.llvm.org/D97424
|
 | flang/include/flang/Optimizer/Dialect/FIRAttr.h |
 | flang/lib/Optimizer/Dialect/FIRDialect.cpp |
 | flang/lib/Optimizer/Dialect/FIRAttr.cpp |
 | flang/test/Fir/fir-ops.fir |
Commit
b950de5c13ef2171c0457a413c3b06aa31047938
by nullptr.cpp[docs] Add a release note for the removing of -Wreturn-std-move-in-c++11
`-Wreturn-std-move-in-c++11` has been removed in fbee4a0c79cc4ee87c34e51342742a5bc6fcf872.
Reviewed By: aaronpuchert, amccarth
Differential Revision: https://reviews.llvm.org/D97364
|
 | clang/docs/ReleaseNotes.rst |
Commit
c38000a9fb2cd64ad6e72939643e2c0fa4972690
by lxfind[Coroutine] Check indirect uses of alloca when checking lifetime info
In the existing logic, we look at the lifetime.start marker of each alloca, and check all uses of the alloca, to see if any pair of the lifetime marker and an use of alloca crosses suspension point. This approach is unfortunately incorrect. An use of alloca does not need to be a direct use, but can be an indirect use through alias. Only checking direct uses can miss cases where indirect uses are crossing suspension point. This can be demonstrated in the newly added test case 007. In the test case, both x and y are only directly used prior to suspend, but they are captured into an alias, merged through a PHINode (so they couldn't be materialized), and used after CoroSuspend. If we only check whether the lifetime starts cross suspension points with direct uses, we will put the allocas to the stack, and then capture their addresses in the frame.
Instead of fixing it in D96441 and D96566, this patch takes a different approach which I think is better. We still checks the lifetime info in the same way as before, but with two differences: 1. The collection of liftime.start is moved into AllocaUseVisitor to make the logic more concentrated. 2. When looking at lifetime.start and use pairs, we not only checks the direct uses as before, but in this patch we check all uses collected by AllocaUseVisitor, which would include all indirect uses through alias. This will make the analysis more accurate without throwing away the lifetime optimization.
Differential Revision: https://reviews.llvm.org/D96922
|
 | llvm/test/Transforms/Coroutines/coro-alloca-07.ll |
 | llvm/test/Transforms/Coroutines/coro-alloca-08.ll |
 | llvm/lib/Transforms/Coroutines/CoroFrame.cpp |