LoongArch: Don't use C++17 feature [PR119238]

Structured binding is a C++17 feature but the GCC code base is in C++14.

gcc/ChangeLog:

	PR target/119238
	* config/loongarch/simd.md (<su>dot_prod<wvec_half><mode>):
	Stop using structured binding.
This commit is contained in:
Xi Ruoyao 2025-03-12 21:02:38 +08:00
parent 8015a72ae4
commit 4e6967aba1
No known key found for this signature in database
GPG key ID: ACAAD20E19E710E3

View file

@ -809,18 +809,20 @@
(any_extend (const_int 0))]
""
{
auto [op0, op1, op2, op3] = operands;
rtx *op = operands;
if (op3 == CONST0_RTX (<WVEC_HALF>mode))
if (op[3] == CONST0_RTX (<WVEC_HALF>mode))
emit_insn (
gen_<simd_isa>_<x>vmulwev_<simdfmt_w>_<simdfmt><u> (op0, op1, op2));
gen_<simd_isa>_<x>vmulwev_<simdfmt_w>_<simdfmt><u> (op[0], op[1],
op[2]));
else
emit_insn (
gen_<simd_isa>_<x>vmaddwev_<simdfmt_w>_<simdfmt><u> (op0, op3, op1,
op2));
gen_<simd_isa>_<x>vmaddwev_<simdfmt_w>_<simdfmt><u> (op[0], op[3],
op[1], op[2]));
emit_insn (
gen_<simd_isa>_<x>vmaddwod_<simdfmt_w>_<simdfmt><u> (op0, op0, op1, op2));
gen_<simd_isa>_<x>vmaddwod_<simdfmt_w>_<simdfmt><u> (op[0], op[0],
op[1], op[2]));
DONE;
})