mirror of
https://github.com/qemu/qemu.git
synced 2024-12-13 22:43:32 +08:00
2908650333
Drop the target-specific trampolines for the standard slow path. This lets us use tcg_out_helper_{ld,st}_args, and handles the new atomicity bits within MemOp. At the same time, use the full load/store helpers for user-only mode. Drop inline unaligned access support for user-only mode, as it does not handle atomicity. Use TCG_REG_T[1-3] in the tlb lookup, instead of TCG_REG_O[0-2]. This allows the constraints to be simplified. Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
21 lines
514 B
C
21 lines
514 B
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Define Sparc target-specific constraint sets.
|
|
* Copyright (c) 2021 Linaro
|
|
*/
|
|
|
|
/*
|
|
* C_On_Im(...) defines a constraint set with <n> outputs and <m> inputs.
|
|
* Each operand should be a sequence of constraint letters as defined by
|
|
* tcg-target-con-str.h; the constraint combination is inclusive or.
|
|
*/
|
|
C_O0_I1(r)
|
|
C_O0_I2(rZ, r)
|
|
C_O0_I2(rZ, rJ)
|
|
C_O1_I1(r, r)
|
|
C_O1_I2(r, r, r)
|
|
C_O1_I2(r, rZ, rJ)
|
|
C_O1_I4(r, rZ, rJ, rI, 0)
|
|
C_O2_I2(r, r, rZ, rJ)
|
|
C_O2_I4(r, r, rZ, rZ, rJ, rJ)
|