1 // Customer ID=12153; Build=0x878bf; Copyright (c) 2017 Cadence Design Systems, Inc.
2 //
3 // Permission is hereby granted, free of charge, to any person obtaining
4 // a copy of this software and associated documentation files (the
5 // "Software"), to deal in the Software without restriction, including
6 // without limitation the rights to use, copy, modify, merge, publish,
7 // distribute, sublicense, and/or sell copies of the Software, and to
8 // permit persons to whom the Software is furnished to do so, subject to
9 // the following conditions:
10 //
11 // The above copyright notice and this permission notice shall be included
12 // in all copies or substantial portions of the Software.
13 //
14 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17 // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
18 // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
19 // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
20 // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21 
22 /* Definitions for the xt_datacache TIE package */
23 
24 /* Do not modify. This is automatically generated.*/
25 
26 #ifndef _XTENSA_xt_datacache_HEADER
27 #define _XTENSA_xt_datacache_HEADER
28 
29 /* parasoft-begin-suppress ALL "This file not MISRA checked." */
30 
31 #ifdef __XTENSA__
32 #ifdef __XCC__
33 
34 #ifndef _ASMLANGUAGE
35 #ifndef _NOCLANGUAGE
36 #ifndef __ASSEMBLER__
37 
38 #include <xtensa/tie/xt_core.h>
39 
40 /*
41  * The following prototypes describe intrinsic functions
42  * corresponding to TIE instructions.  Some TIE instructions
43  * may produce multiple results (designated as "out" operands
44  * in the iclass section) or may have operands used as both
45  * inputs and outputs (designated as "inout").  However, the C
46  * and C++ languages do not provide syntax that can express
47  * the in/out/inout constraints of TIE intrinsics.
48  * Nevertheless, the compiler understands these constraints
49  * and will check that the intrinsic functions are used
50  * correctly.  To improve the readability of these prototypes,
51  * the "out" and "inout" parameters are marked accordingly
52  * with comments.
53  */
54 
55 extern void _TIE_xt_datacache_DHI(const int * s, immediate i);
56 extern void _TIE_xt_datacache_DHI_B(const int * s, int i);
57 extern void _TIE_xt_datacache_DHU(const int * s, immediate i);
58 extern void _TIE_xt_datacache_DHWB(const int * s, immediate i);
59 extern void _TIE_xt_datacache_DHWBI(const int * s, immediate i);
60 extern void _TIE_xt_datacache_DHWBI_B(const int * s, int i);
61 extern void _TIE_xt_datacache_DHWB_B(const int * s, int i);
62 extern void _TIE_xt_datacache_DII(const int * s, immediate i);
63 extern void _TIE_xt_datacache_DIU(const int * s, immediate i);
64 extern void _TIE_xt_datacache_DIWB(const int * s, immediate i);
65 extern void _TIE_xt_datacache_DIWBI(const int * s, immediate i);
66 extern void _TIE_xt_datacache_DIWBUI_P(const int * s /*inout*/);
67 extern void _TIE_xt_datacache_DPFL(const int * s, immediate i);
68 extern void _TIE_xt_datacache_DPFM_B(const int * s, int i);
69 extern void _TIE_xt_datacache_DPFM_BF(const int * s, int i);
70 extern void _TIE_xt_datacache_DPFR(const int * s, immediate i);
71 extern void _TIE_xt_datacache_DPFRO(const int * s, immediate i);
72 extern void _TIE_xt_datacache_DPFR_B(const int * s, int i);
73 extern void _TIE_xt_datacache_DPFR_BF(const int * s, int i);
74 extern void _TIE_xt_datacache_DPFW(const int * s, immediate i);
75 extern void _TIE_xt_datacache_DPFWO(const int * s, immediate i);
76 extern void _TIE_xt_datacache_DPFW_B(const int * s, int i);
77 extern void _TIE_xt_datacache_DPFW_BF(const int * s, int i);
78 extern int _TIE_xt_datacache_LDCT(const int * s);
79 extern int _TIE_xt_datacache_LDCW(const int * s);
80 extern void _TIE_xt_datacache_PFEND_A(void);
81 extern void _TIE_xt_datacache_PFEND_O(void);
82 extern void _TIE_xt_datacache_PFNXT_F(void);
83 extern void _TIE_xt_datacache_PFWAIT_A(void);
84 extern void _TIE_xt_datacache_PFWAIT_R(void);
85 extern void _TIE_xt_datacache_SDCT(int t, int * s);
86 extern void _TIE_xt_datacache_SDCW(int t, int * s);
87 
88 #endif /*__ASSEMBLER__*/
89 #endif /*_NOCLANGUAGE*/
90 #endif /*_ASMLANGUAGE*/
91 
92 #define XT_DHI _TIE_xt_datacache_DHI
93 #define XT_DHI_B _TIE_xt_datacache_DHI_B
94 #define XT_DHU _TIE_xt_datacache_DHU
95 #define XT_DHWB _TIE_xt_datacache_DHWB
96 #define XT_DHWBI _TIE_xt_datacache_DHWBI
97 #define XT_DHWBI_B _TIE_xt_datacache_DHWBI_B
98 #define XT_DHWB_B _TIE_xt_datacache_DHWB_B
99 #define XT_DII _TIE_xt_datacache_DII
100 #define XT_DIU _TIE_xt_datacache_DIU
101 #define XT_DIWB _TIE_xt_datacache_DIWB
102 #define XT_DIWBI _TIE_xt_datacache_DIWBI
103 #define XT_DIWBUI_P _TIE_xt_datacache_DIWBUI_P
104 #define XT_DPFL _TIE_xt_datacache_DPFL
105 #define XT_DPFM_B _TIE_xt_datacache_DPFM_B
106 #define XT_DPFM_BF _TIE_xt_datacache_DPFM_BF
107 #define XT_DPFR _TIE_xt_datacache_DPFR
108 #define XT_DPFRO _TIE_xt_datacache_DPFRO
109 #define XT_DPFR_B _TIE_xt_datacache_DPFR_B
110 #define XT_DPFR_BF _TIE_xt_datacache_DPFR_BF
111 #define XT_DPFW _TIE_xt_datacache_DPFW
112 #define XT_DPFWO _TIE_xt_datacache_DPFWO
113 #define XT_DPFW_B _TIE_xt_datacache_DPFW_B
114 #define XT_DPFW_BF _TIE_xt_datacache_DPFW_BF
115 #define XT_LDCT _TIE_xt_datacache_LDCT
116 #define XT_LDCW _TIE_xt_datacache_LDCW
117 #define XT_PFEND_A _TIE_xt_datacache_PFEND_A
118 #define XT_PFEND_O _TIE_xt_datacache_PFEND_O
119 #define XT_PFNXT_F _TIE_xt_datacache_PFNXT_F
120 #define XT_PFWAIT_A _TIE_xt_datacache_PFWAIT_A
121 #define XT_PFWAIT_R _TIE_xt_datacache_PFWAIT_R
122 #define XT_SDCT _TIE_xt_datacache_SDCT
123 #define XT_SDCW _TIE_xt_datacache_SDCW
124 
125 #endif /* __XCC__ */
126 
127 #endif /* __XTENSA__ */
128 
129 
130 /* parasoft-end-suppress ALL "This file not MISRA checked." */
131 
132 #endif /* !_XTENSA_xt_datacache_HEADER */
133