drm/rockchip: vop2: Fix the windows switch between different layers
[drm/drm-misc.git] / arch / sparc / include / asm / asm.h
blobeaed0117a838a179ccbcd75e4afec97a75fcbb15
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _SPARC_ASM_H
3 #define _SPARC_ASM_H
5 /* Macros to assist the sharing of assembler code between 32-bit and
6 * 64-bit sparc.
7 */
9 #ifdef CONFIG_SPARC64
10 #define BRANCH32(TYPE, PREDICT, DEST) \
11 TYPE,PREDICT %icc, DEST
12 #define BRANCH32_ANNUL(TYPE, PREDICT, DEST) \
13 TYPE,a,PREDICT %icc, DEST
14 #define BRANCH_REG_ZERO(PREDICT, REG, DEST) \
15 brz,PREDICT REG, DEST
16 #define BRANCH_REG_ZERO_ANNUL(PREDICT, REG, DEST) \
17 brz,a,PREDICT REG, DEST
18 #define BRANCH_REG_NOT_ZERO(PREDICT, REG, DEST) \
19 brnz,PREDICT REG, DEST
20 #define BRANCH_REG_NOT_ZERO_ANNUL(PREDICT, REG, DEST) \
21 brnz,a,PREDICT REG, DEST
22 #else
23 #define BRANCH32(TYPE, PREDICT, DEST) \
24 TYPE DEST
25 #define BRANCH32_ANNUL(TYPE, PREDICT, DEST) \
26 TYPE,a DEST
27 #define BRANCH_REG_ZERO(PREDICT, REG, DEST) \
28 cmp REG, 0; \
29 be DEST
30 #define BRANCH_REG_ZERO_ANNUL(PREDICT, REG, DEST) \
31 cmp REG, 0; \
32 be,a DEST
33 #define BRANCH_REG_NOT_ZERO(PREDICT, REG, DEST) \
34 cmp REG, 0; \
35 bne DEST
36 #define BRANCH_REG_NOT_ZERO_ANNUL(PREDICT, REG, DEST) \
37 cmp REG, 0; \
38 bne,a DEST
39 #endif
41 #endif /* _SPARC_ASM_H */