diff options
Diffstat (limited to 'include/asm-xtensa/coprocessor.h')
-rw-r--r-- | include/asm-xtensa/coprocessor.h | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/include/asm-xtensa/coprocessor.h b/include/asm-xtensa/coprocessor.h index e5849bb9f6cf..1cbcf9001a41 100644 --- a/include/asm-xtensa/coprocessor.h +++ b/include/asm-xtensa/coprocessor.h | |||
@@ -31,7 +31,7 @@ | |||
31 | 31 | ||
32 | #define _SELECT ( XTHAL_SAS_TIE | XTHAL_SAS_OPT \ | 32 | #define _SELECT ( XTHAL_SAS_TIE | XTHAL_SAS_OPT \ |
33 | | XTHAL_SAS_CC \ | 33 | | XTHAL_SAS_CC \ |
34 | | XTHAL_SAS_CALR | XTHAL_SAS_CALE | XTHAL_SAS_GLOB ) | 34 | | XTHAL_SAS_CALR | XTHAL_SAS_CALE ) |
35 | 35 | ||
36 | .macro save_xtregs_opt ptr clb at1 at2 at3 at4 offset | 36 | .macro save_xtregs_opt ptr clb at1 at2 at3 at4 offset |
37 | .if XTREGS_OPT_SIZE > 0 | 37 | .if XTREGS_OPT_SIZE > 0 |
@@ -112,17 +112,22 @@ | |||
112 | * CPENABLE bit is set. | 112 | * CPENABLE bit is set. |
113 | */ | 113 | */ |
114 | 114 | ||
115 | #define XCHAL_SA_REG(list,compiler,x,type,y,name,z,align,size,...) \ | 115 | #define XCHAL_SA_REG(list,cc,abi,type,y,name,z,align,size,...) \ |
116 | __REG ## list (compiler, type, name, size, align) | 116 | __REG ## list (cc, abi, type, name, size, align) |
117 | |||
118 | #define __REG0(cc,abi,t,name,s,a) __REG0_ ## cc (abi,name) | ||
119 | #define __REG1(cc,abi,t,name,s,a) __REG1_ ## cc (name) | ||
120 | #define __REG2(cc,abi,type,...) __REG2_ ## type (__VA_ARGS__) | ||
117 | 121 | ||
118 | #define __REG0(compiler,t,name,s,a) __REG0_ ## compiler (name) | 122 | #define __REG0_0(abi,name) |
119 | #define __REG1(compiler,t,name,s,a) __REG1_ ## compiler (name) | 123 | #define __REG0_1(abi,name) __REG0_1 ## abi (name) |
120 | #define __REG2(c,type,...) __REG2_ ## type (__VA_ARGS__) | 124 | #define __REG0_10(name) __u32 name; |
125 | #define __REG0_11(name) __u32 name; | ||
126 | #define __REG0_12(name) | ||
121 | 127 | ||
122 | #define __REG0_0(name) | ||
123 | #define __REG0_1(name) __u32 name; | ||
124 | #define __REG1_0(name) __u32 name; | 128 | #define __REG1_0(name) __u32 name; |
125 | #define __REG1_1(name) | 129 | #define __REG1_1(name) |
130 | |||
126 | #define __REG2_0(n,s,a) __u32 name; | 131 | #define __REG2_0(n,s,a) __u32 name; |
127 | #define __REG2_1(n,s,a) unsigned char n[s] __attribute__ ((aligned(a))); | 132 | #define __REG2_1(n,s,a) unsigned char n[s] __attribute__ ((aligned(a))); |
128 | #define __REG2_2(n,s,a) unsigned char n[s] __attribute__ ((aligned(a))); | 133 | #define __REG2_2(n,s,a) unsigned char n[s] __attribute__ ((aligned(a))); |