#ifndef _SPARC_ASM_H #define _SPARC_ASM_H /* Macros to assist the sharing of assembler code between 32-bit and * 64-bit sparc. */ #ifdef CONFIG_SPARC64 #define BRANCH32(TYPE, PREDICT, DEST) \ TYPE,PREDICT %icc, DEST #define BRANCH32_ANNUL(TYPE, PREDICT, DEST) \ TYPE,a,PREDICT %icc, DEST #define BRANCH_REG_ZERO(PREDICT, REG, DEST) \ brz,PREDICT REG, DEST #define BRANCH_REG_ZERO_ANNUL(PREDICT, REG, DEST) \ brz,a,PREDICT REG, DEST #define BRANCH_REG_NOT_ZERO(PREDICT, REG, DEST) \ brnz,PREDICT REG, DEST #define BRANCH_REG_NOT_ZERO_ANNUL(PREDICT, REG, DEST) \ brnz,a,PREDICT REG, DEST #else #define BRANCH32(TYPE, PREDICT, DEST) \ TYPE DEST #define BRANCH32_ANNUL(TYPE, PREDICT, DEST) \ TYPE,a DEST #define BRANCH_REG_ZERO(PREDICT, REG, DEST) \ cmp REG, 0; \ be DEST #define BRANCH_REG_ZERO_ANNUL(PREDICT, REG, DEST) \ cmp REG, 0; \ be,a DEST #define BRANCH_REG_NOT_ZERO(PREDICT, REG, DEST) \ cmp REG, 0; \ bne DEST #define BRANCH_REG_NOT_ZERO_ANNUL(PREDICT, REG, DEST) \ cmp REG, 0; \ bne,a DEST #endif #endif /* _SPARC_ASM_H */