2020-10-15 18:53:54 +00:00
|
|
|
/* SPDX-License-Identifier: MIT */
|
|
|
|
/*
|
|
|
|
* Define Arm target-specific operand constraints.
|
|
|
|
* Copyright (c) 2021 Linaro
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Define constraint letters for register sets:
|
|
|
|
* REGS(letter, register_mask)
|
|
|
|
*/
|
2022-10-14 00:24:52 +00:00
|
|
|
REGS('e', ALL_GENERAL_REGS & 0x5555) /* even regs */
|
2020-10-15 18:53:54 +00:00
|
|
|
REGS('r', ALL_GENERAL_REGS)
|
2023-04-24 11:31:46 +00:00
|
|
|
REGS('q', ALL_QLDST_REGS)
|
|
|
|
REGS('Q', ALL_QLDST_REGS & 0x5555) /* even qldst */
|
2021-05-03 23:47:52 +00:00
|
|
|
REGS('w', ALL_VECTOR_REGS)
|
2020-10-15 18:53:54 +00:00
|
|
|
|
|
|
|
/*
|
|
|
|
* Define constraint letters for constants:
|
|
|
|
* CONST(letter, TCG_CT_CONST_* bit set)
|
|
|
|
*/
|
|
|
|
CONST('I', TCG_CT_CONST_ARM)
|
|
|
|
CONST('K', TCG_CT_CONST_INV)
|
|
|
|
CONST('N', TCG_CT_CONST_NEG)
|
2020-09-05 22:54:33 +00:00
|
|
|
CONST('O', TCG_CT_CONST_ORRI)
|
|
|
|
CONST('V', TCG_CT_CONST_ANDI)
|
2020-10-15 18:53:54 +00:00
|
|
|
CONST('Z', TCG_CT_CONST_ZERO)
|