2021-12-21 08:40:40 +03:00
|
|
|
/* SPDX-License-Identifier: MIT */
|
|
|
|
/*
|
|
|
|
* Define LoongArch target-specific operand constraints.
|
|
|
|
*
|
|
|
|
* Copyright (c) 2021 WANG Xuerui <git@xen0n.name>
|
|
|
|
*
|
|
|
|
* Based on tcg/riscv/tcg-target-con-str.h
|
|
|
|
*
|
|
|
|
* Copyright (c) 2021 Linaro
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Define constraint letters for register sets:
|
|
|
|
* REGS(letter, register_mask)
|
|
|
|
*/
|
|
|
|
REGS('r', ALL_GENERAL_REGS)
|
2023-09-08 05:21:09 +03:00
|
|
|
REGS('w', ALL_VECTOR_REGS)
|
2021-12-21 08:40:40 +03:00
|
|
|
|
|
|
|
/*
|
|
|
|
* Define constraint letters for constants:
|
|
|
|
* CONST(letter, TCG_CT_CONST_* bit set)
|
|
|
|
*/
|
|
|
|
CONST('I', TCG_CT_CONST_S12)
|
2022-11-29 09:46:52 +03:00
|
|
|
CONST('J', TCG_CT_CONST_S32)
|
2021-12-21 08:40:40 +03:00
|
|
|
CONST('U', TCG_CT_CONST_U12)
|
|
|
|
CONST('Z', TCG_CT_CONST_ZERO)
|
|
|
|
CONST('C', TCG_CT_CONST_C12)
|
|
|
|
CONST('W', TCG_CT_CONST_WSZ)
|
2023-09-08 05:21:11 +03:00
|
|
|
CONST('M', TCG_CT_CONST_VCMP)
|
2023-09-08 05:21:12 +03:00
|
|
|
CONST('A', TCG_CT_CONST_VADD)
|