LLVM/project 0ded6c8llvm/docs LangRef.rst, llvm/include/llvm/IR Instructions.h

[IR] Add elementwise modifier to atomic loads
DeltaFile
+33-0llvm/test/Assembler/invalid-load-store-atomic-elementwise.ll
+18-4llvm/lib/IR/Verifier.cpp
+15-6llvm/docs/LangRef.rst
+15-3llvm/include/llvm/IR/Instructions.h
+14-2llvm/lib/AsmParser/LLParser.cpp
+16-0llvm/test/Bitcode/atomic-load-store-elementwise.ll
+111-156 files not shown
+141-2112 files

LLVM/project 876439fllvm/lib/Target/X86 X86TargetTransformInfo.cpp, llvm/test/Transforms/Inline/X86 call-abi-compatibility.ll

[X86][Inline] Make ABI compatibility check more precise (#205106)

When inlining a function that contains calls with vector arguments, we
have to be careful that inlining does not change the ABI of the call.
E.g. we generally can't inline a function without `+avx` into a
function with `+avx` if there are calls using vectors of size 256 or
larger, because they'd switch from passing in two xmm registers to
passing in a ymm register.

However, the current check is very crude and only allows inlining with
interior calls if the target features match *exactly* (via the base
areTypesABICompatible implementation). This is unnecessarily
conservative, as many target features do not affect the call ABI at all.

Make this check more precise by checking the result of
getRegisterTypeForCallingConv for the type between the TLI instances for
the caller and callee.
DeltaFile
+153-0llvm/test/Transforms/Inline/X86/call-abi-compatibility.ll
+24-25llvm/lib/Target/X86/X86TargetTransformInfo.cpp
+2-4llvm/test/Transforms/PhaseOrdering/X86/loop-vectorizer-noalias.ll
+179-293 files

LLVM/project 9550cd7llvm/include/llvm-c Core.h, llvm/include/llvm/IR IRBuilder.h

[IR] Remove IRBuilder AddMetadataToInst (#202280)

This avoids an extra check for metadata on every instruction insertion,
makes constructing an IRBuilder cheaper, and therefore slightly improves
performance.

As the C API doesn't expose CollectMetadataToCopy or any other way to
add additional metadata to the IRBuilder, make LLVMAddMetadataToInst an
alias for LLVMSetInstDebugLocation and undeprecate the latter.
DeltaFile
+1-53llvm/include/llvm/IR/IRBuilder.h
+18-8llvm/lib/Target/X86/X86ISelLowering.cpp
+13-4llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
+9-6llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+7-5llvm/lib/CodeGen/AtomicExpandPass.cpp
+4-5llvm/include/llvm-c/Core.h
+52-811 files not shown
+53-827 files

LLVM/project 115c749llvm/lib/Target/AMDGPU AMDGPUISelDAGToDAG.cpp, llvm/test/CodeGen/AMDGPU packed-fp64.ll

[AMDGPU] Select fneg modifier for v2f64 instructions (#205194)
DeltaFile
+28-17llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
+12-23llvm/test/CodeGen/AMDGPU/packed-fp64.ll
+40-402 files

LLVM/project 3e69ed4clang/include/clang/Frontend SSAFOptions.h CompilerInvocation.h, clang/lib/Frontend CompilerInvocation.cpp

Revert some SSAF patches (#205279)

I've started seeing some failures on Windows permissive bots.
I'll revert my patches for now until further investigation.

errors:
https://lab.llvm.org/buildbot/#/builders/107/builds/20548
```
C:\b\slave\sanitizer-windows\llvm-project\clang\lib\Frontend\CompilerInvocation.cpp
C:\b\slave\sanitizer-windows\build\tools\clang\include\clang/Options/Options.inc(9981): error C2065: 'SSAFOpts': undeclared identifier
C:\b\slave\sanitizer-windows\build\tools\clang\include\clang/Options/Options.inc(9982): note: see reference to function template instantiation 'auto GenerateSSAFArgs::<lambda_5f504a9e8792b8b03f1d39701f31dbec>::operator ()<T>(const T &) const' being compiled
        with
        [
            T=std::vector<std::string,std::allocator<std::string>>
        ]
```

Revert "Reland "[clang][ssaf][NFC] Move SSAF flags from FrontendOptions
to a dedicated SSAFOptions" (#204798)"

    [4 lines not shown]
DeltaFile
+26-27clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
+0-52clang/include/clang/Frontend/SSAFOptions.h
+1-31clang/lib/Frontend/CompilerInvocation.cpp
+14-18clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
+7-18clang/include/clang/Frontend/CompilerInvocation.h
+23-1clang/include/clang/Frontend/FrontendOptions.h
+71-14712 files not shown
+87-19618 files

LLVM/project 9e3fc52llvm/lib/Target/AMDGPU SIFoldOperands.cpp, llvm/test/CodeGen/AMDGPU packed-fp64.ll fold-imm-pk64.mir

[AMDGPU] Fold v2{i|f}64 immediates (#205195)
DeltaFile
+68-182llvm/test/CodeGen/AMDGPU/packed-fp64.ll
+229-4llvm/test/CodeGen/AMDGPU/fold-imm-pk64.mir
+55-159llvm/test/CodeGen/AMDGPU/packed-u64.ll
+6-8llvm/test/CodeGen/AMDGPU/pk-lshl-add-u64.ll
+2-0llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
+360-3535 files

LLVM/project 635cbc0libc/src/__support/OSUtil/linux/syscall_wrappers ioctl.h CMakeLists.txt, libc/src/sys/ioctl/linux ioctl.cpp

Revert "[libc] Introduce the ioctl syscall wrapper and port all callers" (#205277)

Reverts llvm/llvm-project#204640

Breaks libc-x86_64-debian-fullbuild. Reverting while I investigate.
DeltaFile
+0-49libc/src/__support/OSUtil/linux/syscall_wrappers/ioctl.h
+14-7libc/src/termios/linux/CMakeLists.txt
+9-6libc/src/sys/ioctl/linux/ioctl.cpp
+8-5libc/src/unistd/linux/isatty.cpp
+0-13libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
+7-5libc/src/termios/linux/tcgetattr.cpp
+38-858 files not shown
+76-11314 files

LLVM/project ebaee77llvm/lib/Target/X86 X86InstrAVX512.td, llvm/test/CodeGen/X86 avx512-load-store.ll

[X86] Prevent folding of volatile scalar loads into masked loads in selects (#205103)

X86 select patterns were folding scalar FP loads into AVX-512 masked
loads. Since masked loads suppress memory access when the mask is 0,
this can incorrectly eliminate the observable access of volatile loads,
leading to miscompilation. Non-volatile loads are unaffected.

Multi-use loads already avoid folding, since folding consumes the load
into the instruction's memory operand and leaves no value for the other
users, forcing it to be materialized into a register. Single-use
volatile loads did not, and this must also be prevented, as volatile
loads are required to always perform their memory access.

Fix this by using the isSimple()-guarded simple_load pattern instead of
loadf32/loadf64, ensuring volatile loads are not folded.

Found via @jlebar's X86 LLVM bug hunt / FuzzX effort:
https://github.com/SemiAnalysisAI/FuzzX/blob/master/x86/bugs/093-avx512-vmovs-x86selects-load-fold-mask-suppress
DeltaFile
+60-0llvm/test/CodeGen/X86/avx512-load-store.ll
+4-4llvm/lib/Target/X86/X86InstrAVX512.td
+64-42 files

LLVM/project 007d6bdclang/include/clang/Basic TargetInfo.h, clang/lib/Basic/Targets M68k.cpp Sparc.h

clang: Change TargetInfo::setCPU to take StringRef

The related APIs all use StringRef, so use StringRef for
consistency.

Co-Authored-By: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+2-3clang/lib/Basic/Targets/M68k.cpp
+2-2clang/lib/Basic/Targets/Sparc.h
+1-3clang/include/clang/Basic/TargetInfo.h
+1-3clang/lib/Basic/Targets/AArch64.cpp
+1-1clang/lib/Basic/Targets/CSKY.cpp
+1-1clang/lib/Basic/Targets/CSKY.h
+8-1320 files not shown
+28-3326 files

LLVM/project 7db96e4libc/src/__support/OSUtil/linux/syscall_wrappers ioctl.h CMakeLists.txt, libc/src/sys/ioctl/linux ioctl.cpp

Revert "[libc] Introduce the ioctl syscall wrapper and port all callers (#204…"

This reverts commit 639c5a014fad13c683b01c66a1474b7aa47ce7ee.
DeltaFile
+0-49libc/src/__support/OSUtil/linux/syscall_wrappers/ioctl.h
+14-7libc/src/termios/linux/CMakeLists.txt
+9-6libc/src/sys/ioctl/linux/ioctl.cpp
+8-5libc/src/unistd/linux/isatty.cpp
+0-13libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
+7-5libc/src/termios/linux/tcsetattr.cpp
+38-858 files not shown
+76-11314 files

LLVM/project b36debcllvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/Target/AMDGPU AMDGPUHSAMetadataStreamer.h

AMDGPU: Rename AMDGPUTargetID to TargetID

The AMDGPU prefix is redundant with the namespace.

Co-Authored-By: Claude <noreply at anthropic.com>
DeltaFile
+8-16llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+9-10llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+9-9llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+8-8llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
+4-4llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
+4-4llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
+42-514 files not shown
+50-5910 files

LLVM/project 01faaecllvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/Target/AMDGPU/AsmParser AMDGPUAsmParser.cpp

AMDGPU: Move AMDGPUTargetID to AMDGPUTargetParser

Move the AMDGPUTargetID class and TargetIDSetting enum from
AMDGPUBaseInfo to AMDGPUTargetParser, making them available in the
MC-independent TargetParser library.

Currently there is this backend implementation, and a second one in
clang. Move this here so in the future the clang copy can be deleted.

Co-Authored-By: Claude <noreply at anthropic.com>
DeltaFile
+22-128llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+9-108llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
+107-0llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+106-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+8-8llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
+8-8llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
+260-2527 files not shown
+277-27913 files

LLVM/project fc6603eclang/include/clang/CIR/Dialect/Builder CIRBaseBuilder.h, clang/lib/CIR/CodeGen CIRGenItaniumCXXABI.cpp

set it on virtual call loads
DeltaFile
+23-0clang/test/CIR/CodeGen/vtable-load-invariant.cpp
+6-5clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
+4-4clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
+1-1clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
+34-104 files

LLVM/project 50838f4llvm/docs/CommandGuide llvm-symbolizer.rst, llvm/include/llvm/DebugInfo/Symbolize Symbolize.h

[symbolizer] Add a --pdb option. (#171053)

Closes #142490
DeltaFile
+50-36llvm/lib/DebugInfo/Symbolize/Symbolize.cpp
+6-0llvm/test/tools/llvm-symbolizer/pdb/pdb.test
+5-0llvm/docs/CommandGuide/llvm-symbolizer.rst
+1-0llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h
+1-0llvm/tools/llvm-symbolizer/Opts.td
+1-0llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
+64-366 files

LLVM/project 6edebc8clang/test/Driver amdgpu-xnack-sramecc-flags.c, llvm/lib/Target/AMDGPU AMDGPUAsmPrinter.cpp

AMDGPU: Use module flags to control xnack and sramecc

This ensures these ABI details are encoded in the IR module
rather than depending on external state from command-line flags.
Previously, these were encoded as function-level subtarget features.
The code object output was a single target ID directive implied
by the global subtarget. The backend would previously check if a
function's subtarget feature mismatched the global subtarget. This
is avoided by making xnack and sramecc module-level properties from
the start. This also provides proper linker compatibility
enforcement, moving the error point earlier.

The old encoding was also an abuse of the subtarget feature system.
Subtarget features are a bitvector, and later features in the string
can override earlier ones. The old handling added a special case
where explicit settings were preserved: ordinarily +feature,-feature
should result in the feature being disabled, but +xnack,-xnack would
preserve the explicit "-xnack" state, which differs from the absence
of any xnack setting.

    [25 lines not shown]
DeltaFile
+52-52llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
+30-46llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
+75-0llvm/test/CodeGen/AMDGPU/module-flag-xnack.ll
+36-33clang/test/Driver/amdgpu-xnack-sramecc-flags.c
+66-0llvm/test/CodeGen/AMDGPU/module-flag-sramecc.ll
+54-0llvm/test/CodeGen/AMDGPU/module-flag-xnack-no-on-off-modes.ll
+313-13195 files not shown
+1,178-362101 files

LLVM/project ffeb9c1clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary TUSummaryBuilder.h TUSummaryExtractor.h, clang/lib/ScalableStaticAnalysisFramework/Frontend TUSummaryExtractorFrontendAction.cpp

[clang][ssaf][NFC] Make SSAFOptions available in Builders and Extractors (#204684)

Now that we have SSAFOptions, it would make it a lot more ergonomic if
it was accessible from builders and extractors.
This PR does exactly that.

Part of rdar://179151023

Co-authored-by: Jan Korous <jkorous at apple.com>
Co-authored-by: Claude Opus 4.7 <noreply at anthropic.com>
DeltaFile
+7-3clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
+6-3clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
+7-1clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.h
+3-1clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
+3-1clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
+4-0clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.h
+30-94 files not shown
+41-1310 files

LLVM/project c1bc848clang/lib/CodeGen CGCall.cpp

[Clang][ABI] Validate consistency between ABI lowering implementation (#203281)

If the LLVM ABI library is used, and assertions are enabled, compute the
ABI both using Clang's implementation the the LLVM ABI library, and
verify that the results are the same.
DeltaFile
+117-3clang/lib/CodeGen/CGCall.cpp
+117-31 files

LLVM/project 639c5a0libc/src/__support/OSUtil/linux/syscall_wrappers ioctl.h CMakeLists.txt, libc/src/sys/ioctl/linux ioctl.cpp

[libc] Introduce the ioctl syscall wrapper and port all callers (#204640)

This patch adds an ioctl syscall wrapper in linux_syscalls namespace and
migrates all direct SYS_ioctl calls to use it.

To handle the polymorphic nature of ioctl arguments (where some commands
expect pointers, some expect scalar integers like queue_selector, and
some expect no argument at all), I use a helper struct IoctlArg with
implicit constructors. This avoids template bloat and overload
ambiguities (particularly around literal 0) while keeping call sites
clean.

Assisted by Gemini.
DeltaFile
+49-0libc/src/__support/OSUtil/linux/syscall_wrappers/ioctl.h
+7-14libc/src/termios/linux/CMakeLists.txt
+6-9libc/src/sys/ioctl/linux/ioctl.cpp
+5-8libc/src/unistd/linux/isatty.cpp
+13-0libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
+5-7libc/src/termios/linux/tcgetattr.cpp
+85-388 files not shown
+113-7614 files

LLVM/project 5765847orc-rt/include/orc-rt SPSAllocAction.h AllocAction.h, orc-rt/unittests AllocActionTest.cpp

[orc-rt] Add return serialization to AllocActionFunction::handle. (#205271)

Add a Serializer template parameter to AllocActionFunction::handle and
apply it to the handler's return value before forwarding as the action
result. This lets handler authors return types other than
WrapperFunctionBuffer.

For SPS, AllocActionSPSSerializer is the default Serializer used by
SPSAllocActionFunction::handle. It accepts either:
- WrapperFunctionBuffer (identity pass-through, the existing behavior),
or
- Error (success → empty WFB; failure → out-of-band-error WFB carrying
toString(Err)).

Adds AllocActionTest coverage for both Error-return paths.
DeltaFile
+36-0orc-rt/unittests/AllocActionTest.cpp
+17-1orc-rt/include/orc-rt/SPSAllocAction.h
+4-3orc-rt/include/orc-rt/AllocAction.h
+57-43 files

LLVM/project 19c5390llvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/Target/AMDGPU AMDGPUHSAMetadataStreamer.h

AMDGPU: Rename AMDGPUTargetID to TargetID

The AMDGPU prefix is redundant with the namespace.

Co-Authored-By: Claude <noreply at anthropic.com>
DeltaFile
+8-16llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+9-10llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+9-9llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+8-8llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
+4-4llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
+4-4llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
+42-514 files not shown
+50-5910 files

LLVM/project d555192llvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/Target/AMDGPU/AsmParser AMDGPUAsmParser.cpp

AMDGPU: Move AMDGPUTargetID to AMDGPUTargetParser

Move the AMDGPUTargetID class and TargetIDSetting enum from
AMDGPUBaseInfo to AMDGPUTargetParser, making them available in the
MC-independent TargetParser library.

Currently there is this backend implementation, and a second one in
clang. Move this here so in the future the clang copy can be deleted.

Co-Authored-By: Claude <noreply at anthropic.com>
DeltaFile
+22-128llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+9-108llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
+107-0llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+105-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+8-8llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
+8-8llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
+259-2527 files not shown
+276-27913 files

LLVM/project 194da0fclang/include/clang/Frontend SSAFOptions.h CompilerInvocation.h, clang/lib/Frontend CompilerInvocation.cpp

Reland "[clang][ssaf][NFC] Move SSAF flags from FrontendOptions to a dedicated SSAFOptions" (#204798)

Second attempt of #204686

This class will help keeping SSAF options apart from generic
FrontendOptions. It is inspired by AnalyzerOptions.

This way all of these SSAF (and future) options will be at a
centralized place.

In preparation of rdar://179151023
DeltaFile
+27-26clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
+52-0clang/include/clang/Frontend/SSAFOptions.h
+31-1clang/lib/Frontend/CompilerInvocation.cpp
+18-7clang/include/clang/Frontend/CompilerInvocation.h
+13-12clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
+1-23clang/include/clang/Frontend/FrontendOptions.h
+142-693 files not shown
+156-759 files

LLVM/project c492c7dllvm/lib/Target/RISCV RISCVFrameLowering.cpp

[RISCV] Avoid implicit conversions from MCRegister to MCPhysReg. NFC (#205260)
DeltaFile
+8-7llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
+8-71 files

LLVM/project 3d8ca7eorc-rt/include/orc-rt AllocAction.h

[orc-rt] Replace AAHandlerTraits with CallableArgInfo. NFCI. (#205257)

CallableArgInfo provides a superset of AAHandlerTraits functionality, so
we don't need the latter.
DeltaFile
+2-23orc-rt/include/orc-rt/AllocAction.h
+2-231 files

LLVM/project f7ec732flang/lib/Semantics mod-file.cpp, flang/test/Semantics modfile84.f90

Revert "[flang][cuda][openacc] Emit an error when CUDA symbols are imported with CUDA disabled" (#205254)

Reverts llvm/llvm-project#205207
DeltaFile
+0-29flang/lib/Semantics/mod-file.cpp
+0-17flang/test/Semantics/modfile84.f90
+0-462 files

LLVM/project d147ad9llvm/docs ReleaseNotes.md, llvm/lib/Target/RISCV RISCVInstrInfoXqci.td

[RISCV] Update Xqcilo Pseudos (#196422)

This changes the Xqcilo pseudos to instead emit a sequence of
`qc.e.li` followed by a standard load/store annotated with %qc.access.
The new sequence is easier for our linker to relax.

This Change was written with the assistance of AI.
DeltaFile
+148-33llvm/test/MC/RISCV/xqcilo-pseudos-valid.s
+123-8llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
+9-9llvm/test/MC/RISCV/xqcilo-pseudos-invalid.s
+8-7llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
+1-0llvm/docs/ReleaseNotes.md
+289-575 files

LLVM/project 6d3caa2clang/include/clang/CIR/Dialect/Builder CIRBaseBuilder.h, clang/include/clang/CIR/Dialect/IR CIROps.td

[CIR] Add invariant attribute to cir.load
DeltaFile
+21-0clang/test/CIR/Lowering/load-invariant.cir
+20-0clang/test/CIR/IR/load-invariant.cir
+10-5clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
+6-4clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
+9-1clang/include/clang/CIR/Dialect/IR/CIROps.td
+4-2clang/lib/CIR/CodeGen/CIRGenBuilder.h
+70-123 files not shown
+77-169 files

LLVM/project ad72523clang/test/CIR/IR metadata.cir

add metadata verify-roundtrip test
DeltaFile
+43-0clang/test/CIR/IR/metadata.cir
+43-01 files

LLVM/project 6060731flang/lib/Semantics mod-file.cpp, flang/test/Semantics modfile84.f90

Revert "[flang][cuda][openacc] Emit an error when CUDA symbols are imported w…"

This reverts commit a6986f0b929d575728d564cd41bb0f9a6b6fdea4.
DeltaFile
+0-29flang/lib/Semantics/mod-file.cpp
+0-17flang/test/Semantics/modfile84.f90
+0-462 files

LLVM/project cdfd1e0llvm/lib/Passes PassRegistry.def, llvm/lib/Transforms/Scalar SROA.cpp

Patch tryCanonicalizeStructToVector to handle split slice tails (#201434)

We choose a vector alloca over a struct alloca when all users of the
alloca are memory or lifetime intrinsics. But we only accounted for
slices that start in the corresponding partition. We have to also check
that all split slice tails overlapping the partition are memory or
lifetime intrinsics

I also updated the `PassRegistry.def` to include the new pass option
because we forgot to add that.
DeltaFile
+44-0llvm/test/Transforms/SROA/struct-to-vector-subpartition.ll
+14-7llvm/lib/Transforms/Scalar/SROA.cpp
+1-1llvm/lib/Passes/PassRegistry.def
+59-83 files