[all-commits] [llvm/llvm-project] 9fbf5c: [clang][modules] Partially revert 48d0eb518 to fix...

Vitaly Buka via All-commits all-commits at lists.llvm.org
Wed Jan 22 20:53:19 PST 2025


  Branch: refs/heads/users/vitalybuka/spr/modularize-create-objects-on-the-stack
  Home:   https://github.com/llvm/llvm-project
  Commit: 9fbf5cfebcd770fbe0e453f36ee7c74809339f18
      https://github.com/llvm/llvm-project/commit/9fbf5cfebcd770fbe0e453f36ee7c74809339f18
  Author: Ben Langmuir <blangmuir at apple.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M clang/include/clang/CodeGen/BackendUtil.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
    A clang/test/Modules/gmodules-codegenopts.c

  Log Message:
  -----------
  [clang][modules] Partially revert 48d0eb518 to fix -gmodules output (#124003)

With the changes in 48d0eb518, the CodeGenOptions used to emit .pcm
files with -fmodule-format=obj (-gmodules) were the ones from the
original invocation, rather than the ones specifically crafted for
outputting the pcm. This was causing the pcm to be written with only the
debug info and without the __clangast section in some cases (e.g. -O2).
This unforunately was not covered by existing tests, because compiling
and loading a module within a single compilation load the ast content
from the in-memory module cache rather than reading it from the pcm file
that was written. This broke bootstrapping a build of clang with modules
enabled on Darwin.

rdar://143418834


  Commit: 8f45452c5309d0ae59dd383de6dae1aa4eabbb9c
      https://github.com/llvm/llvm-project/commit/8f45452c5309d0ae59dd383de6dae1aa4eabbb9c
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries: Restrict jobs based on owner instead of repo (#123797)

Not really any functional change, just a clean up that could make it
easier to share snippets with other repos.


  Commit: 8110af75b1500be2313e523a2d2da6bb7806b700
      https://github.com/llvm/llvm-project/commit/8110af75b1500be2313e523a2d2da6bb7806b700
  Author: vporpo <vporpodas at google.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    A llvm/test/Transforms/SandboxVectorizer/pack.ll

  Log Message:
  -----------
  [SandboxVec][BottomUpVec] Fix codegen when packing constants. (#124033)

Before this patch packing a bundle of constants would crash because
`getInsertPointAfterInstrs()` expected instructions. This patch fixes
this.


  Commit: d5457e4c1619e5dbeefd49841e284cbc24d35cb4
      https://github.com/llvm/llvm-project/commit/d5457e4c1619e5dbeefd49841e284cbc24d35cb4
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M clang/test/Index/crash-recovery-modules.m

  Log Message:
  -----------
  [NFC][Index] Disable LSAN on crash recovery tests (#124035)

Avoiding leaks in such cases is very hard.

There are similar suppression in other Index tests.


  Commit: eaaac050588ec67afcdbb347df5597458a9b10d1
      https://github.com/llvm/llvm-project/commit/eaaac050588ec67afcdbb347df5597458a9b10d1
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M clang/lib/Sema/SemaSYCL.cpp

  Log Message:
  -----------
  [Sema] Fix a warning

This patch fixes:

  clang/lib/Sema/SemaSYCL.cpp:428:25: error: unused variable 'SKI'
  [-Werror,-Wunused-variable]


  Commit: a9d2834508e276d0a3cc09ac549132b56796e87f
      https://github.com/llvm/llvm-project/commit/a9d2834508e276d0a3cc09ac549132b56796e87f
  Author: Hua Tian <akiratian at tencent.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    A llvm/test/CodeGen/Hexagon/swp-ws-live-intervals-issue123165.mir

  Log Message:
  -----------
  [llvm][CodeGen] Fix the issue caused by live interval checking in window scheduler (#123184)

At some corner cases, the cloned MI still retains an old slot index,
which leads to the compiler crashing. This patch update the slot index
map before delete the recycled MI.

https://github.com/llvm/llvm-project/issues/123165


  Commit: 847acbbc529133b2300721a809751891200f37f5
      https://github.com/llvm/llvm-project/commit/847acbbc529133b2300721a809751891200f37f5
  Author: epitavy <32581827+epitavy at users.noreply.github.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/examples/ExceptionDemo/CMakeLists.txt
    M llvm/examples/ExceptionDemo/ExceptionDemo.cpp

  Log Message:
  -----------
  [ExceptionDemo] Transition example from MCJIT to ORC and fix errors (#92504)

ExceptionDemo has been broken for some time. This patch fixes the
compilation errors and moves the example from MCJIT to ORC.


  Commit: 23d2a1862a8b60cf5a04ffabdf5c1ea776120d04
      https://github.com/llvm/llvm-project/commit/23d2a1862a8b60cf5a04ffabdf5c1ea776120d04
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp

  Log Message:
  -----------
  PeepholeOpt: Remove unnecessary check for null TargetInstrInfo (#123929)

This can never happen.


  Commit: d3aea77f50a2215a9fa50c1bfa5f4b9717d8e928
      https://github.com/llvm/llvm-project/commit/d3aea77f50a2215a9fa50c1bfa5f4b9717d8e928
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  -----------
  [SLP] Move transformMaskAfterShuffle into BaseShuffleAnalysis and use it as much as possible. (#123896)


  Commit: 1042ddc31b594511657ff70a82d71e2d037e2e35
      https://github.com/llvm/llvm-project/commit/1042ddc31b594511657ff70a82d71e2d037e2e35
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn

  Log Message:
  -----------
  [gn] port ec15b242505


  Commit: 6f69adeed6728e49c16d47bdde658285f49c8ed7
      https://github.com/llvm/llvm-project/commit/6f69adeed6728e49c16d47bdde658285f49c8ed7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp

  Log Message:
  -----------
  PeepholeOpt: Remove null TargetRegisterInfo check (#123933)

This cannot happen. Also simplify the LaneBitmask check from !none
to any.


  Commit: 2646e2d487027e61c4e3cba5ceecfd95cedce0fe
      https://github.com/llvm/llvm-project/commit/2646e2d487027e61c4e3cba5ceecfd95cedce0fe
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp

  Log Message:
  -----------
  PeepholeOpt: Stop allocating tiny helper classes (NFC) (#123936)

This was allocating tiny helper classes for every instruction
visited. We can just dispatch over the cases in the visitor
function instead.


  Commit: ba70368f1380f8d22494fc8c100d2ab894a3cf94
      https://github.com/llvm/llvm-project/commit/ba70368f1380f8d22494fc8c100d2ab894a3cf94
  Author: ZhaoQi <zhaoqi01 at loongson.cn>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    A clang/test/Driver/loongarch-relax-features.c

  Log Message:
  -----------
  [Clang][Driver] Support linker relaxation options for LoongArch (#123587)

This commit completed four tasks:
- Add `-mrelax/-mno-relax` options support for LoongArch in clang
driver.
- Print error for `-gsplit-dwarf` with LoongArch linker relaxation
(`-mrelax`).
- Pass `-X` to linker to discard a plethora of `.L` symbols due to
linker relaxation.
- Forward `--no-relax` option to linker.


  Commit: 15c2d4baf17292b4966d335846b30c50063f0265
      https://github.com/llvm/llvm-project/commit/15c2d4baf17292b4966d335846b30c50063f0265
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp

  Log Message:
  -----------
  PeepholeOpt: Remove check for subreg index on a def operand (#123943)

This is looking at operand 0 of a REG_SEQUENCE, which can never
have a subregister index.


  Commit: 9cefa3e6fccf30959433b96a8a275417b1429f4e
      https://github.com/llvm/llvm-project/commit/9cefa3e6fccf30959433b96a8a275417b1429f4e
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp

  Log Message:
  -----------
  [msan] Generalize handleIntrinsicByApplyingToShadow by adding bitcasting (#123474)

`handleIntrinsicByApplyingToShadow` (introduced in
https://github.com/llvm/llvm-project/pull/114490) requires that the
intrinsic supports integer-ish operands; this is not the case for all
intrinsics. This patch generalizes the function to bitcast the shadow
arguments to be the same type as the original intrinsic, thus
guaranteeing that the intrinsic exists. Additionally, it casts the
computed shadow to be an appropriate shadow type.

This function assumes that the intrinsic will handle arbitrary
bit-patterns (for example, if the intrinsic accepts floats for var1, we
assume that it works normally even if inputs are NaNs etc.).


  Commit: ba3e6f0f0f2bebeb2b82e976ea1b5df007784862
      https://github.com/llvm/llvm-project/commit/ba3e6f0f0f2bebeb2b82e976ea1b5df007784862
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp

  Log Message:
  -----------
  [RISCV][VLOPT] Remove dead passthru check in getOperandLog2EEW. NFC (#123911)

We already bail if the user is tied in checkUsers, which is true for all
passthrus. Remove the check in getOperandLog2EEW so that it only worries
about computing the OperandInfo, and leaves the passthru correctness to
checkUsers.


  Commit: 0fe8e70c6609ff86cd40fbb45a85a8ed04c153c2
      https://github.com/llvm/llvm-project/commit/0fe8e70c6609ff86cd40fbb45a85a8ed04c153c2
  Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsSPIRV.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_detail.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaSPIRV.cpp
    R clang/test/CodeGenHLSL/builtins/reflect.hlsl
    R clang/test/CodeGenSPIRV/Builtins/reflect.c
    R clang/test/SemaHLSL/BuiltIns/reflect-errors.hlsl
    R clang/test/SemaSPIRV/BuiltIns/reflect-errors.c
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    R llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reflect.ll
    R llvm/test/CodeGen/SPIRV/opencl/reflect-error.ll

  Log Message:
  -----------
  Revert "Reland "[HLSL] Implement the `reflect` HLSL function"" (#124046)

Reverts llvm/llvm-project#123853

The introduction of `reflect-error.ll` surfaced a bug with the use of
`report_fatal_error` in `SPIRVInstructionSelector` that was propagated
into the pr. This has caused a build-bot breakage, and the work to solve
the underlying issue is tracked here:
https://github.com/llvm/llvm-project/issues/124045. We can re-apply this
commit when the underlying issue is resolved.


  Commit: 3ef90f843fee74ff811ef88246734475f50e2073
      https://github.com/llvm/llvm-project/commit/3ef90f843fee74ff811ef88246734475f50e2073
  Author: Jianjian Guan <jacquesguan at me.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Target/Cpp/switch.mlir

  Log Message:
  -----------
  [emitc] Fix the translation switchop with argument of expressionop (#123701)

Now a `emitc.switch` with argument of `emitc.expression` wouldn't emit
its argument to cpp. This patch fix it.


  Commit: b46fcb9fa32f24660b1b8858d5c4cbdb76ef9d8b
      https://github.com/llvm/llvm-project/commit/b46fcb9fa32f24660b1b8858d5c4cbdb76ef9d8b
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/test/CXX/drs/cwg26xx.cpp
    M clang/test/SemaTemplate/deduction-guide.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [Clang] Implement CWG 2628 "Implicit deduction guides should propagate constraints" (#111143)

Closes https://github.com/llvm/llvm-project/issues/98592


  Commit: 652ff20140d79544db4dfa21314fc62c3c9182e5
      https://github.com/llvm/llvm-project/commit/652ff20140d79544db4dfa21314fc62c3c9182e5
  Author: Renaud Kauffmann <rkauffmann at nvidia.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/module/cudadevice.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    M flang/test/Semantics/cuf-device-procedures01.cuf

  Log Message:
  -----------
  [flang][cuda] Adding atomicadd as a cudadevice intrinsic and converting it LLVM dialect (#123840)

With these changes, CUF atomic operations are handled as cudadevice
intrinsics and are converted straight to the LLVM dialect with the
`llvm.atomicrw` operation.

I am only submitting changes for `atomicadd` to gather feedback. If we
are to proceed with these changes I will add support for all other
applicable atomic operations following this pattern.


  Commit: 892a804d93d44ddfd7cd351852fe6aef32d4dcd0
      https://github.com/llvm/llvm-project/commit/892a804d93d44ddfd7cd351852fe6aef32d4dcd0
  Author: Akshay Deodhar <adeodhar at nvidia.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/test/CodeGen/NVPTX/atomics-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm90.ll
    M llvm/test/CodeGen/NVPTX/cmpxchg.ll

  Log Message:
  -----------
  [NVPTX] Stop using 16-bit CAS instructions from PTX (#120220)

Increases minimum CAS size from 16 bit to 32 bit, for better SASS
codegen.

When atomics are emulated using atom.cas.b16, the SASS generated
includes 2 (nested) emulation loops. When emulated using an atom.cas.b32
loop, the SASS too has a single emulation loop. Using 32 bit CAS thus
results in better codegen.


  Commit: 1c5d971e425ff080dffd4d9a9a7734ead042d323
      https://github.com/llvm/llvm-project/commit/1c5d971e425ff080dffd4d9a9a7734ead042d323
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M llvm/lib/Support/Unix/Signals.inc

  Log Message:
  -----------
  [Signals] Exclude dladdr for AIX after #123879

Widely supported but missing on AIX
https://www.austingroupbugs.net/view.php?id=993


  Commit: 75750722737e9128500b81363ba66c62fea1e4fe
      https://github.com/llvm/llvm-project/commit/75750722737e9128500b81363ba66c62fea1e4fe
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/test/tools/llvm-exegesis/X86/inverse_throughput/inverse_throughput-prepare-all-snippets-exhaustively.s
    M llvm/test/tools/llvm-exegesis/X86/inverse_throughput/inverse_throughput-prepare-all-snippets.s
    M llvm/test/tools/llvm-exegesis/X86/uops/uops-prepare-all-snippets-exhaustively.s
    M llvm/test/tools/llvm-exegesis/X86/uops/uops-prepare-all-snippets.s

  Log Message:
  -----------
  [llvm-exegesis] Disable exhaustive tests on Windows

When looking at the slowest lit tests, I'm seeing these four tests take
two to eight minutes. Test coverage on Linux should be sufficient for
the functionality on top of it not really being useful on Windows at
all.

This was observed when hacking on the new premerge in a windows VM.


  Commit: 19834b4623fd1e7ae5185ed76031b407c3fa7a47
      https://github.com/llvm/llvm-project/commit/19834b4623fd1e7ae5185ed76031b407c3fa7a47
  Author: tangaac <tangyan01 at loongson.cn>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/test/Driver/loongarch-march.c
    A clang/test/Driver/loongarch-mscq.c
    M clang/test/Preprocessor/init-loongarch.c
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.def
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
    M llvm/lib/Target/LoongArch/LoongArch.td
    M llvm/lib/Target/LoongArch/LoongArchExpandAtomicPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/LoongArchTargetParser.cpp
    A llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg-128.ll

  Log Message:
  -----------
  [LoongArch] Support sc.q instruction for 128bit cmpxchg operation (#116771)

Two options for clang
  -mno-scq:                Disable sc.q instruction.
  -mscq:                   Enable sc.q instruction.
The default is -mno-scq.


  Commit: 0bcf34e422683b900ed504c5e4605038b257f1ee
      https://github.com/llvm/llvm-project/commit/0bcf34e422683b900ed504c5e4605038b257f1ee
  Author: MagentaTreehouse <99200384+MagentaTreehouse at users.noreply.github.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M clang/include/clang/AST/UnresolvedSet.h

  Log Message:
  -----------
  [Clang] [NFC] Mark `UnresolvedSetImpl`'s move operations as defaulted (#97930)


  Commit: d80b814c010580b0fd02c1b1a9521a0b640a358a
      https://github.com/llvm/llvm-project/commit/d80b814c010580b0fd02c1b1a9521a0b640a358a
  Author: Weining Lu <luweining at loongson.cn>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [LoongArch] Summary llvm20 release notes


  Commit: 3c7a878d919c6483c9e78a3ed4578d4ee2f54408
      https://github.com/llvm/llvm-project/commit/3c7a878d919c6483c9e78a3ed4578d4ee2f54408
  Author: Weining Lu <luweining at loongson.cn>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [LoongArch] Summary clang20 release notes


  Commit: aa273fd83eccb55215f4cb18285f8462a1013f5c
      https://github.com/llvm/llvm-project/commit/aa273fd83eccb55215f4cb18285f8462a1013f5c
  Author: Weining Lu <luweining at loongson.cn>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M lld/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [LoongArch] Update lld20 release notes


  Commit: 163935a48df69bde944fae2b4581541dab30c730
      https://github.com/llvm/llvm-project/commit/163935a48df69bde944fae2b4581541dab30c730
  Author: quic_hchandel <165007698+hchandel at users.noreply.github.com>
  Date:   2025-01-23 (Thu, 23 Jan 2025)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/test/CodeGen/RISCV/attributes.ll
    A llvm/test/MC/RISCV/xqcilo-aliases-valid.s
    A llvm/test/MC/RISCV/xqcilo-invalid.s
    A llvm/test/MC/RISCV/xqcilo-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add Qualcomm uC Xqcilo (Large Offset Load Store) extension (#123881)

This extension adds eight 48 bit load store instructions.

The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/latest

This patch adds assembler only support.

---------

Co-authored-by: Harsh Chandel <hchandel at qti.qualcomm.com>


  Commit: c753eea11d2266461110a7504fd8f26c4cb3e359
      https://github.com/llvm/llvm-project/commit/c753eea11d2266461110a7504fd8f26c4cb3e359
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M .github/workflows/release-binaries.yml
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/UnresolvedSet.h
    M clang/include/clang/Basic/BuiltinsSPIRV.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/CodeGen/BackendUtil.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Headers/hlsl/hlsl_detail.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaSPIRV.cpp
    M clang/lib/Sema/SemaSYCL.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/test/CXX/drs/cwg26xx.cpp
    R clang/test/CodeGenHLSL/builtins/reflect.hlsl
    R clang/test/CodeGenSPIRV/Builtins/reflect.c
    M clang/test/Driver/loongarch-march.c
    A clang/test/Driver/loongarch-mscq.c
    A clang/test/Driver/loongarch-relax-features.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Index/crash-recovery-modules.m
    A clang/test/Modules/gmodules-codegenopts.c
    M clang/test/Preprocessor/init-loongarch.c
    R clang/test/SemaHLSL/BuiltIns/reflect-errors.hlsl
    R clang/test/SemaSPIRV/BuiltIns/reflect-errors.c
    M clang/test/SemaTemplate/deduction-guide.cpp
    M clang/www/cxx_dr_status.html
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/module/cudadevice.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    M flang/test/Semantics/cuf-device-procedures01.cuf
    M lld/docs/ReleaseNotes.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/examples/ExceptionDemo/CMakeLists.txt
    M llvm/examples/ExceptionDemo/ExceptionDemo.cpp
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.def
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp
    M llvm/lib/Support/Unix/Signals.inc
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArch.td
    M llvm/lib/Target/LoongArch/LoongArchExpandAtomicPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/LoongArchTargetParser.cpp
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    A llvm/test/CodeGen/Hexagon/swp-ws-live-intervals-issue123165.mir
    A llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg-128.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm90.ll
    M llvm/test/CodeGen/NVPTX/cmpxchg.ll
    M llvm/test/CodeGen/RISCV/attributes.ll
    R llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reflect.ll
    R llvm/test/CodeGen/SPIRV/opencl/reflect-error.ll
    A llvm/test/MC/RISCV/xqcilo-aliases-valid.s
    A llvm/test/MC/RISCV/xqcilo-invalid.s
    A llvm/test/MC/RISCV/xqcilo-valid.s
    A llvm/test/Transforms/SandboxVectorizer/pack.ll
    M llvm/test/tools/llvm-exegesis/X86/inverse_throughput/inverse_throughput-prepare-all-snippets-exhaustively.s
    M llvm/test/tools/llvm-exegesis/X86/inverse_throughput/inverse_throughput-prepare-all-snippets.s
    M llvm/test/tools/llvm-exegesis/X86/uops/uops-prepare-all-snippets-exhaustively.s
    M llvm/test/tools/llvm-exegesis/X86/uops/uops-prepare-all-snippets.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Target/Cpp/switch.mlir

  Log Message:
  -----------
  rebase

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/cd4ff6baa7b7...c753eea11d22

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