Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / arch / sparc / include / asm / asm.h
1 #ifndef _SPARC_ASM_H
2 #define _SPARC_ASM_H
3
4 /* Macros to assist the sharing of assembler code between 32-bit and
5  * 64-bit sparc.
6  */
7
8 #ifdef CONFIG_SPARC64
9 #define BRANCH32(TYPE, PREDICT, DEST) \
10         TYPE,PREDICT    %icc, DEST
11 #define BRANCH32_ANNUL(TYPE, PREDICT, DEST) \
12         TYPE,a,PREDICT  %icc, DEST
13 #define BRANCH_REG_ZERO(PREDICT, REG, DEST) \
14         brz,PREDICT     REG, DEST
15 #define BRANCH_REG_ZERO_ANNUL(PREDICT, REG, DEST) \
16         brz,a,PREDICT   REG, DEST
17 #define BRANCH_REG_NOT_ZERO(PREDICT, REG, DEST) \
18         brnz,PREDICT    REG, DEST
19 #define BRANCH_REG_NOT_ZERO_ANNUL(PREDICT, REG, DEST) \
20         brnz,a,PREDICT  REG, DEST
21 #else
22 #define BRANCH32(TYPE, PREDICT, DEST) \
23         TYPE            DEST
24 #define BRANCH32_ANNUL(TYPE, PREDICT, DEST) \
25         TYPE,a          DEST
26 #define BRANCH_REG_ZERO(PREDICT, REG, DEST) \
27         cmp             REG, 0; \
28         be              DEST
29 #define BRANCH_REG_ZERO_ANNUL(PREDICT, REG, DEST) \
30         cmp             REG, 0; \
31         be,a            DEST
32 #define BRANCH_REG_NOT_ZERO(PREDICT, REG, DEST) \
33         cmp             REG, 0; \
34         bne             DEST
35 #define BRANCH_REG_NOT_ZERO_ANNUL(PREDICT, REG, DEST) \
36         cmp             REG, 0; \
37         bne,a           DEST
38 #endif
39
40 #endif /* _SPARC_ASM_H */