[PATCH] Revert "[LoongArch] Support InlineAsm for LSX and LASX"
authorchenli <chenli@loongson.cn>
Mon, 18 Mar 2024 07:16:34 +0000 (15:16 +0800)
committerMatthias Klose <doko@debian.org>
Fri, 7 Feb 2025 09:17:16 +0000 (10:17 +0100)
commit7c918313046141a3249a207012cf8a6321dac6ee
tree10b705a88fa6f8bfcb776d5f90adf3531aad94c8
parentf4ec43617484e65e35e282a91f46b82a6df65e6d
[PATCH] Revert "[LoongArch] Support InlineAsm for LSX and LASX"

This reverts commit d25c79dc70008b835312e5cc7ef48b199fda3165.

D154931[1] needs to be reverted on LLVM17. As Loongson SIMD Extension(LSX) and
Loongson Advanced SIMD Extension(LASX) are not fully supported on LLVM17,
InlineAsm for LSX and LASX should not be supported as well. Otherwise it leads
to the following issue[2]:
'''
LLVM ERROR: Cannot select: 0x7ffea41a3650: ch = store<(store (s128) into %ir.mask
store52)> 0x7ffea41a35e0, 0x7ffea4196a30, FrameIndex:i64<6>, undef:i64
'''

LSX and LASX are fully supported on LLVM18 and are not supported on LLVM16,
thus only LLVM17 has the problem.

[1] https://reviews.llvm.org/D154931
[2] https://buildd.debian.org/status/fetch.php?pkg=qtdeclarative-opensource-src&arch=loong64&ver=5.15.10%2Bdfsg-2%2Bb1&stamp=1710571569&raw=0

Change-Id: I2bd74a71fe5f0bcadeb04ecf1d63d9f97765e8b5

Gbp-Pq: Name D154931-revert-loong64.patch
13 files changed:
clang/lib/Basic/Targets/LoongArch.cpp
clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs-error.c [deleted file]
clang/test/CodeGen/LoongArch/lasx/inline-asm-gcc-regs.c [deleted file]
clang/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.c [deleted file]
clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs-error.c [deleted file]
clang/test/CodeGen/LoongArch/lsx/inline-asm-gcc-regs.c [deleted file]
clang/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.c [deleted file]
llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
llvm/test/CodeGen/LoongArch/lasx/inline-asm-operand-modifier.ll [deleted file]
llvm/test/CodeGen/LoongArch/lasx/inline-asm-reg-names.ll [deleted file]
llvm/test/CodeGen/LoongArch/lsx/inline-asm-operand-modifier.ll [deleted file]
llvm/test/CodeGen/LoongArch/lsx/inline-asm-reg-names.ll [deleted file]