|
| 1 | +/* Definitions for the xt_core TIE package */ |
| 2 | + |
| 3 | +/* |
| 4 | + * Customer ID=7011; Build=0x2b6f6; Copyright (c) 2004 by Tensilica Inc. ALL RIGHTS RESERVED. |
| 5 | + * These coded instructions, statements, and computer programs are the |
| 6 | + * copyrighted works and confidential proprietary information of Tensilica Inc. |
| 7 | + * They may not be modified, copied, reproduced, distributed, or disclosed to |
| 8 | + * third parties in any manner, medium, or form, in whole or in part, without |
| 9 | + * the prior written consent of Tensilica Inc. |
| 10 | + */ |
| 11 | + |
| 12 | +/* Do not modify. This is automatically generated.*/ |
| 13 | + |
| 14 | +#ifndef _XTENSA_xt_core_HEADER |
| 15 | +#define _XTENSA_xt_core_HEADER |
| 16 | + |
| 17 | +#ifdef __XTENSA__ |
| 18 | +#ifdef __XCC__ |
| 19 | + |
| 20 | + |
| 21 | +/* |
| 22 | + * The following prototypes describe intrinsic functions |
| 23 | + * corresponding to TIE instructions. Some TIE instructions |
| 24 | + * may produce multiple results (designated as "out" operands |
| 25 | + * in the iclass section) or may have operands used as both |
| 26 | + * inputs and outputs (designated as "inout"). However, the C |
| 27 | + * and C++ languages do not provide syntax that can express |
| 28 | + * the in/out/inout constraints of TIE intrinsics. |
| 29 | + * Nevertheless, the compiler understands these constraints |
| 30 | + * and will check that the intrinsic functions are used |
| 31 | + * correctly. To improve the readability of these prototypes, |
| 32 | + * the "out" and "inout" parameters are marked accordingly |
| 33 | + * with comments. |
| 34 | + */ |
| 35 | + |
| 36 | +extern void _TIE_xt_core_ILL(void); |
| 37 | +extern void _TIE_xt_core_NOP(void); |
| 38 | +extern void _TIE_xt_core_MEMW(void); |
| 39 | +extern void _TIE_xt_core_EXTW(void); |
| 40 | +extern void _TIE_xt_core_ISYNC(void); |
| 41 | +extern void _TIE_xt_core_DSYNC(void); |
| 42 | +extern void _TIE_xt_core_ESYNC(void); |
| 43 | +extern void _TIE_xt_core_RSYNC(void); |
| 44 | +extern unsigned _TIE_xt_core_RSR_176(void); |
| 45 | +extern void _TIE_xt_core_WSR_176(unsigned art); |
| 46 | +extern unsigned _TIE_xt_core_RSR_208(void); |
| 47 | +extern unsigned _TIE_xt_core_uint32_loadi(const unsigned * p, immediate o); |
| 48 | +extern void _TIE_xt_core_uint32_storei(unsigned c, unsigned * p, immediate o); |
| 49 | +extern unsigned _TIE_xt_core_uint32_move(unsigned b); |
| 50 | +extern int _TIE_xt_core_ADDI(int s, immediate i); |
| 51 | +extern int _TIE_xt_core_OR(int s, int t); |
| 52 | +extern int _TIE_xt_core_L32I(const int * p, immediate i); |
| 53 | +extern void _TIE_xt_core_S32I(int r, int * p, immediate i); |
| 54 | +extern unsigned char _TIE_xt_core_L8UI(const unsigned char * p, immediate i); |
| 55 | +extern void _TIE_xt_core_S8I(signed char r, signed char * p, immediate i); |
| 56 | +extern unsigned short _TIE_xt_core_L16UI(const unsigned short * p, immediate i); |
| 57 | +extern short _TIE_xt_core_L16SI(const short * p, immediate i); |
| 58 | +extern void _TIE_xt_core_S16I(short r, short * p, immediate i); |
| 59 | +extern int _TIE_xt_core_ADDMI(int s, immediate i); |
| 60 | +extern int _TIE_xt_core_ADD(int s, int t); |
| 61 | +extern int _TIE_xt_core_ADDX2(int s, int t); |
| 62 | +extern int _TIE_xt_core_ADDX4(int s, int t); |
| 63 | +extern int _TIE_xt_core_ADDX8(int s, int t); |
| 64 | +extern int _TIE_xt_core_SUB(int s, int t); |
| 65 | +extern int _TIE_xt_core_SUBX2(int s, int t); |
| 66 | +extern int _TIE_xt_core_SUBX4(int s, int t); |
| 67 | +extern int _TIE_xt_core_SUBX8(int s, int t); |
| 68 | +extern int _TIE_xt_core_AND(int s, int t); |
| 69 | +extern int _TIE_xt_core_XOR(int s, int t); |
| 70 | +extern unsigned _TIE_xt_core_EXTUI(unsigned t, immediate i, immediate o); |
| 71 | +extern int _TIE_xt_core_MOVI(immediate i); |
| 72 | +extern void _TIE_xt_core_MOVEQZ(int r /*inout*/, int s, int t); |
| 73 | +extern void _TIE_xt_core_MOVNEZ(int r /*inout*/, int s, int t); |
| 74 | +extern void _TIE_xt_core_MOVLTZ(int r /*inout*/, int s, int t); |
| 75 | +extern void _TIE_xt_core_MOVGEZ(int r /*inout*/, int s, int t); |
| 76 | +extern int _TIE_xt_core_NEG(int t); |
| 77 | +extern int _TIE_xt_core_ABS(int t); |
| 78 | +extern void _TIE_xt_core_SSR(int s); |
| 79 | +extern void _TIE_xt_core_SSL(int s); |
| 80 | +extern void _TIE_xt_core_SSA8L(int s); |
| 81 | +extern void _TIE_xt_core_SSA8B(int s); |
| 82 | +extern void _TIE_xt_core_SSAI(immediate i); |
| 83 | +extern int _TIE_xt_core_SLL(int s); |
| 84 | +extern int _TIE_xt_core_SRC(int s, int t); |
| 85 | +extern unsigned _TIE_xt_core_SRL(unsigned t); |
| 86 | +extern int _TIE_xt_core_SRA(int t); |
| 87 | +extern int _TIE_xt_core_SLLI(int s, immediate i); |
| 88 | +extern int _TIE_xt_core_SRAI(int t, immediate i); |
| 89 | +extern unsigned _TIE_xt_core_SRLI(unsigned t, immediate i); |
| 90 | +extern int _TIE_xt_core_SSAI_SRC(int src1, int src2, immediate amount); |
| 91 | +extern int _TIE_xt_core_SSR_SRC(int src1, int src2, int amount); |
| 92 | +extern int _TIE_xt_core_WSR_SAR_SRC(int src1, int src2, int amount); |
| 93 | +extern int _TIE_xt_core_SSR_SRA(int src, int amount); |
| 94 | +extern unsigned _TIE_xt_core_SSR_SRL(unsigned src, int amount); |
| 95 | +extern int _TIE_xt_core_SSL_SLL(int src, int amount); |
| 96 | +extern int _TIE_xt_core_RSIL(immediate t); |
| 97 | +extern unsigned _TIE_xt_core_RSR_SAR(void); |
| 98 | +extern void _TIE_xt_core_WSR_SAR(unsigned t); |
| 99 | +extern void _TIE_xt_core_XSR_SAR(unsigned t /*inout*/); |
| 100 | +extern unsigned _TIE_xt_core_RSR_LITBASE(void); |
| 101 | +extern void _TIE_xt_core_WSR_LITBASE(unsigned t); |
| 102 | +extern void _TIE_xt_core_XSR_LITBASE(unsigned t /*inout*/); |
| 103 | +extern unsigned _TIE_xt_core_RSR_PS(void); |
| 104 | +extern void _TIE_xt_core_WSR_PS(unsigned t); |
| 105 | +extern void _TIE_xt_core_XSR_PS(unsigned t /*inout*/); |
| 106 | +extern unsigned _TIE_xt_core_RSR_EPC1(void); |
| 107 | +extern void _TIE_xt_core_WSR_EPC1(unsigned t); |
| 108 | +extern void _TIE_xt_core_XSR_EPC1(unsigned t /*inout*/); |
| 109 | +extern unsigned _TIE_xt_core_RSR_EXCSAVE1(void); |
| 110 | +extern void _TIE_xt_core_WSR_EXCSAVE1(unsigned t); |
| 111 | +extern void _TIE_xt_core_XSR_EXCSAVE1(unsigned t /*inout*/); |
| 112 | +extern unsigned _TIE_xt_core_RSR_EPC2(void); |
| 113 | +extern void _TIE_xt_core_WSR_EPC2(unsigned t); |
| 114 | +extern void _TIE_xt_core_XSR_EPC2(unsigned t /*inout*/); |
| 115 | +extern unsigned _TIE_xt_core_RSR_EXCSAVE2(void); |
| 116 | +extern void _TIE_xt_core_WSR_EXCSAVE2(unsigned t); |
| 117 | +extern void _TIE_xt_core_XSR_EXCSAVE2(unsigned t /*inout*/); |
| 118 | +extern unsigned _TIE_xt_core_RSR_EPC3(void); |
| 119 | +extern void _TIE_xt_core_WSR_EPC3(unsigned t); |
| 120 | +extern void _TIE_xt_core_XSR_EPC3(unsigned t /*inout*/); |
| 121 | +extern unsigned _TIE_xt_core_RSR_EXCSAVE3(void); |
| 122 | +extern void _TIE_xt_core_WSR_EXCSAVE3(unsigned t); |
| 123 | +extern void _TIE_xt_core_XSR_EXCSAVE3(unsigned t /*inout*/); |
| 124 | +extern unsigned _TIE_xt_core_RSR_VECBASE(void); |
| 125 | +extern void _TIE_xt_core_WSR_VECBASE(unsigned t); |
| 126 | +extern void _TIE_xt_core_XSR_VECBASE(unsigned t /*inout*/); |
| 127 | +extern unsigned _TIE_xt_core_RSR_EPS2(void); |
| 128 | +extern void _TIE_xt_core_WSR_EPS2(unsigned t); |
| 129 | +extern void _TIE_xt_core_XSR_EPS2(unsigned t /*inout*/); |
| 130 | +extern unsigned _TIE_xt_core_RSR_EPS3(void); |
| 131 | +extern void _TIE_xt_core_WSR_EPS3(unsigned t); |
| 132 | +extern void _TIE_xt_core_XSR_EPS3(unsigned t /*inout*/); |
| 133 | +extern unsigned _TIE_xt_core_RSR_EXCCAUSE(void); |
| 134 | +extern void _TIE_xt_core_WSR_EXCCAUSE(unsigned t); |
| 135 | +extern void _TIE_xt_core_XSR_EXCCAUSE(unsigned t /*inout*/); |
| 136 | +extern unsigned _TIE_xt_core_RSR_EXCVADDR(void); |
| 137 | +extern void _TIE_xt_core_WSR_EXCVADDR(unsigned t); |
| 138 | +extern void _TIE_xt_core_XSR_EXCVADDR(unsigned t /*inout*/); |
| 139 | +extern unsigned _TIE_xt_core_RSR_DEPC(void); |
| 140 | +extern void _TIE_xt_core_WSR_DEPC(unsigned t); |
| 141 | +extern void _TIE_xt_core_XSR_DEPC(unsigned t /*inout*/); |
| 142 | +extern int _TIE_xt_core_RSR_PRID(void); |
| 143 | +#define XT_ILL _TIE_xt_core_ILL |
| 144 | +#define XT_NOP _TIE_xt_core_NOP |
| 145 | +#define XT_MEMW _TIE_xt_core_MEMW |
| 146 | +#define XT_EXTW _TIE_xt_core_EXTW |
| 147 | +#define XT_ISYNC _TIE_xt_core_ISYNC |
| 148 | +#define XT_DSYNC _TIE_xt_core_DSYNC |
| 149 | +#define XT_ESYNC _TIE_xt_core_ESYNC |
| 150 | +#define XT_RSYNC _TIE_xt_core_RSYNC |
| 151 | +#define XT_RSR_176 _TIE_xt_core_RSR_176 |
| 152 | +#define XT_WSR_176 _TIE_xt_core_WSR_176 |
| 153 | +#define XT_RSR_208 _TIE_xt_core_RSR_208 |
| 154 | +#define XT_uint32_loadi _TIE_xt_core_uint32_loadi |
| 155 | +#define XT_uint32_storei _TIE_xt_core_uint32_storei |
| 156 | +#define XT_uint32_move _TIE_xt_core_uint32_move |
| 157 | +#define XT_ADDI _TIE_xt_core_ADDI |
| 158 | +#define XT_OR _TIE_xt_core_OR |
| 159 | +#define XT_L32I _TIE_xt_core_L32I |
| 160 | +#define XT_S32I _TIE_xt_core_S32I |
| 161 | +#define XT_L8UI _TIE_xt_core_L8UI |
| 162 | +#define XT_S8I _TIE_xt_core_S8I |
| 163 | +#define XT_L16UI _TIE_xt_core_L16UI |
| 164 | +#define XT_L16SI _TIE_xt_core_L16SI |
| 165 | +#define XT_S16I _TIE_xt_core_S16I |
| 166 | +#define XT_ADDMI _TIE_xt_core_ADDMI |
| 167 | +#define XT_ADD _TIE_xt_core_ADD |
| 168 | +#define XT_ADDX2 _TIE_xt_core_ADDX2 |
| 169 | +#define XT_ADDX4 _TIE_xt_core_ADDX4 |
| 170 | +#define XT_ADDX8 _TIE_xt_core_ADDX8 |
| 171 | +#define XT_SUB _TIE_xt_core_SUB |
| 172 | +#define XT_SUBX2 _TIE_xt_core_SUBX2 |
| 173 | +#define XT_SUBX4 _TIE_xt_core_SUBX4 |
| 174 | +#define XT_SUBX8 _TIE_xt_core_SUBX8 |
| 175 | +#define XT_AND _TIE_xt_core_AND |
| 176 | +#define XT_XOR _TIE_xt_core_XOR |
| 177 | +#define XT_EXTUI _TIE_xt_core_EXTUI |
| 178 | +#define XT_MOVI _TIE_xt_core_MOVI |
| 179 | +#define XT_MOVEQZ _TIE_xt_core_MOVEQZ |
| 180 | +#define XT_MOVNEZ _TIE_xt_core_MOVNEZ |
| 181 | +#define XT_MOVLTZ _TIE_xt_core_MOVLTZ |
| 182 | +#define XT_MOVGEZ _TIE_xt_core_MOVGEZ |
| 183 | +#define XT_NEG _TIE_xt_core_NEG |
| 184 | +#define XT_ABS _TIE_xt_core_ABS |
| 185 | +#define XT_SSR _TIE_xt_core_SSR |
| 186 | +#define XT_SSL _TIE_xt_core_SSL |
| 187 | +#define XT_SSA8L _TIE_xt_core_SSA8L |
| 188 | +#define XT_SSA8B _TIE_xt_core_SSA8B |
| 189 | +#define XT_SSAI _TIE_xt_core_SSAI |
| 190 | +#define XT_SLL _TIE_xt_core_SLL |
| 191 | +#define XT_SRC _TIE_xt_core_SRC |
| 192 | +#define XT_SRL _TIE_xt_core_SRL |
| 193 | +#define XT_SRA _TIE_xt_core_SRA |
| 194 | +#define XT_SLLI _TIE_xt_core_SLLI |
| 195 | +#define XT_SRAI _TIE_xt_core_SRAI |
| 196 | +#define XT_SRLI _TIE_xt_core_SRLI |
| 197 | +#define XT_SSAI_SRC _TIE_xt_core_SSAI_SRC |
| 198 | +#define XT_SSR_SRC _TIE_xt_core_SSR_SRC |
| 199 | +#define XT_WSR_SAR_SRC _TIE_xt_core_WSR_SAR_SRC |
| 200 | +#define XT_SSR_SRA _TIE_xt_core_SSR_SRA |
| 201 | +#define XT_SSR_SRL _TIE_xt_core_SSR_SRL |
| 202 | +#define XT_SSL_SLL _TIE_xt_core_SSL_SLL |
| 203 | +#define XT_RSIL _TIE_xt_core_RSIL |
| 204 | +#define XT_RSR_SAR _TIE_xt_core_RSR_SAR |
| 205 | +#define XT_WSR_SAR _TIE_xt_core_WSR_SAR |
| 206 | +#define XT_XSR_SAR _TIE_xt_core_XSR_SAR |
| 207 | +#define XT_RSR_LITBASE _TIE_xt_core_RSR_LITBASE |
| 208 | +#define XT_WSR_LITBASE _TIE_xt_core_WSR_LITBASE |
| 209 | +#define XT_XSR_LITBASE _TIE_xt_core_XSR_LITBASE |
| 210 | +#define XT_RSR_PS _TIE_xt_core_RSR_PS |
| 211 | +#define XT_WSR_PS _TIE_xt_core_WSR_PS |
| 212 | +#define XT_XSR_PS _TIE_xt_core_XSR_PS |
| 213 | +#define XT_RSR_EPC1 _TIE_xt_core_RSR_EPC1 |
| 214 | +#define XT_WSR_EPC1 _TIE_xt_core_WSR_EPC1 |
| 215 | +#define XT_XSR_EPC1 _TIE_xt_core_XSR_EPC1 |
| 216 | +#define XT_RSR_EXCSAVE1 _TIE_xt_core_RSR_EXCSAVE1 |
| 217 | +#define XT_WSR_EXCSAVE1 _TIE_xt_core_WSR_EXCSAVE1 |
| 218 | +#define XT_XSR_EXCSAVE1 _TIE_xt_core_XSR_EXCSAVE1 |
| 219 | +#define XT_RSR_EPC2 _TIE_xt_core_RSR_EPC2 |
| 220 | +#define XT_WSR_EPC2 _TIE_xt_core_WSR_EPC2 |
| 221 | +#define XT_XSR_EPC2 _TIE_xt_core_XSR_EPC2 |
| 222 | +#define XT_RSR_EXCSAVE2 _TIE_xt_core_RSR_EXCSAVE2 |
| 223 | +#define XT_WSR_EXCSAVE2 _TIE_xt_core_WSR_EXCSAVE2 |
| 224 | +#define XT_XSR_EXCSAVE2 _TIE_xt_core_XSR_EXCSAVE2 |
| 225 | +#define XT_RSR_EPC3 _TIE_xt_core_RSR_EPC3 |
| 226 | +#define XT_WSR_EPC3 _TIE_xt_core_WSR_EPC3 |
| 227 | +#define XT_XSR_EPC3 _TIE_xt_core_XSR_EPC3 |
| 228 | +#define XT_RSR_EXCSAVE3 _TIE_xt_core_RSR_EXCSAVE3 |
| 229 | +#define XT_WSR_EXCSAVE3 _TIE_xt_core_WSR_EXCSAVE3 |
| 230 | +#define XT_XSR_EXCSAVE3 _TIE_xt_core_XSR_EXCSAVE3 |
| 231 | +#define XT_RSR_VECBASE _TIE_xt_core_RSR_VECBASE |
| 232 | +#define XT_WSR_VECBASE _TIE_xt_core_WSR_VECBASE |
| 233 | +#define XT_XSR_VECBASE _TIE_xt_core_XSR_VECBASE |
| 234 | +#define XT_RSR_EPS2 _TIE_xt_core_RSR_EPS2 |
| 235 | +#define XT_WSR_EPS2 _TIE_xt_core_WSR_EPS2 |
| 236 | +#define XT_XSR_EPS2 _TIE_xt_core_XSR_EPS2 |
| 237 | +#define XT_RSR_EPS3 _TIE_xt_core_RSR_EPS3 |
| 238 | +#define XT_WSR_EPS3 _TIE_xt_core_WSR_EPS3 |
| 239 | +#define XT_XSR_EPS3 _TIE_xt_core_XSR_EPS3 |
| 240 | +#define XT_RSR_EXCCAUSE _TIE_xt_core_RSR_EXCCAUSE |
| 241 | +#define XT_WSR_EXCCAUSE _TIE_xt_core_WSR_EXCCAUSE |
| 242 | +#define XT_XSR_EXCCAUSE _TIE_xt_core_XSR_EXCCAUSE |
| 243 | +#define XT_RSR_EXCVADDR _TIE_xt_core_RSR_EXCVADDR |
| 244 | +#define XT_WSR_EXCVADDR _TIE_xt_core_WSR_EXCVADDR |
| 245 | +#define XT_XSR_EXCVADDR _TIE_xt_core_XSR_EXCVADDR |
| 246 | +#define XT_RSR_DEPC _TIE_xt_core_RSR_DEPC |
| 247 | +#define XT_WSR_DEPC _TIE_xt_core_WSR_DEPC |
| 248 | +#define XT_XSR_DEPC _TIE_xt_core_XSR_DEPC |
| 249 | +#define XT_RSR_PRID _TIE_xt_core_RSR_PRID |
| 250 | + |
| 251 | +#endif /* __XCC__ */ |
| 252 | + |
| 253 | +#endif /* __XTENSA__ */ |
| 254 | +#endif /* !_XTENSA_xt_core_HEADER */ |
0 commit comments