]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blob - arch/powerpc/include/asm/asm-compat.h
Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[mirror_ubuntu-jammy-kernel.git] / arch / powerpc / include / asm / asm-compat.h
1 #ifndef _ASM_POWERPC_ASM_COMPAT_H
2 #define _ASM_POWERPC_ASM_COMPAT_H
3
4 #include <asm/asm-const.h>
5 #include <asm/types.h>
6 #include <asm/ppc-opcode.h>
7
8 #ifdef __powerpc64__
9
10 /* operations for longs and pointers */
11 #define PPC_LL stringify_in_c(ld)
12 #define PPC_STL stringify_in_c(std)
13 #define PPC_STLU stringify_in_c(stdu)
14 #define PPC_LCMPI stringify_in_c(cmpdi)
15 #define PPC_LCMPLI stringify_in_c(cmpldi)
16 #define PPC_LCMP stringify_in_c(cmpd)
17 #define PPC_LONG stringify_in_c(.8byte)
18 #define PPC_LONG_ALIGN stringify_in_c(.balign 8)
19 #define PPC_TLNEI stringify_in_c(tdnei)
20 #define PPC_LLARX stringify_in_c(ldarx)
21 #define PPC_STLCX stringify_in_c(stdcx.)
22 #define PPC_CNTLZL stringify_in_c(cntlzd)
23 #define PPC_MTOCRF(FXM, RS) MTOCRF((FXM), RS)
24 #define PPC_LR_STKOFF 16
25 #define PPC_MIN_STKFRM 112
26
27 #ifdef __BIG_ENDIAN__
28 #define LHZX_BE stringify_in_c(lhzx)
29 #define LWZX_BE stringify_in_c(lwzx)
30 #define LDX_BE stringify_in_c(ldx)
31 #define STWX_BE stringify_in_c(stwx)
32 #define STDX_BE stringify_in_c(stdx)
33 #else
34 #define LHZX_BE stringify_in_c(lhbrx)
35 #define LWZX_BE stringify_in_c(lwbrx)
36 #define LDX_BE stringify_in_c(ldbrx)
37 #define STWX_BE stringify_in_c(stwbrx)
38 #define STDX_BE stringify_in_c(stdbrx)
39 #endif
40
41 #else /* 32-bit */
42
43 /* operations for longs and pointers */
44 #define PPC_LL stringify_in_c(lwz)
45 #define PPC_STL stringify_in_c(stw)
46 #define PPC_STLU stringify_in_c(stwu)
47 #define PPC_LCMPI stringify_in_c(cmpwi)
48 #define PPC_LCMPLI stringify_in_c(cmplwi)
49 #define PPC_LCMP stringify_in_c(cmpw)
50 #define PPC_LONG stringify_in_c(.long)
51 #define PPC_LONG_ALIGN stringify_in_c(.balign 4)
52 #define PPC_TLNEI stringify_in_c(twnei)
53 #define PPC_LLARX stringify_in_c(lwarx)
54 #define PPC_STLCX stringify_in_c(stwcx.)
55 #define PPC_CNTLZL stringify_in_c(cntlzw)
56 #define PPC_MTOCRF stringify_in_c(mtcrf)
57 #define PPC_LR_STKOFF 4
58 #define PPC_MIN_STKFRM 16
59
60 #endif
61
62 #endif /* _ASM_POWERPC_ASM_COMPAT_H */