MatchLib
All Classes Namespaces Files Functions Modules Pages
nvhls_types.h
1/*
2 * Copyright (c) 2016-2019, NVIDIA CORPORATION. All rights reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License")
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16#ifndef HLS_TYPEDEF_H
17#define HLS_TYPEDEF_H
18#include <nvhls_int.h>
19
20// Use the following when using NVUINT with template parameters
35#define NVUINTW(width) typename nvhls::nvhls_t<width>::nvuint_t
36
51#define NVINTW(width) typename nvhls::nvhls_t<width>::nvint_t
52
53// Use the following when using NVUINT with constant parameters
66#define NVUINTC(width) nvhls::nvhls_t<width>::nvuint_t
79#define NVINTC(width) nvhls::nvhls_t<width>::nvint_t
80
81// Fixed width Unsigned INT types
82typedef nvhls::nvhls_t<1>::nvuint_t NVUINT1;
83typedef nvhls::nvhls_t<2>::nvuint_t NVUINT2;
84typedef nvhls::nvhls_t<3>::nvuint_t NVUINT3;
85typedef nvhls::nvhls_t<4>::nvuint_t NVUINT4;
86typedef nvhls::nvhls_t<5>::nvuint_t NVUINT5;
87typedef nvhls::nvhls_t<6>::nvuint_t NVUINT6;
88typedef nvhls::nvhls_t<7>::nvuint_t NVUINT7;
89typedef nvhls::nvhls_t<8>::nvuint_t NVUINT8;
90typedef nvhls::nvhls_t<9>::nvuint_t NVUINT9;
91typedef nvhls::nvhls_t<10>::nvuint_t NVUINT10;
92typedef nvhls::nvhls_t<11>::nvuint_t NVUINT11;
93typedef nvhls::nvhls_t<12>::nvuint_t NVUINT12;
94typedef nvhls::nvhls_t<13>::nvuint_t NVUINT13;
95typedef nvhls::nvhls_t<14>::nvuint_t NVUINT14;
96typedef nvhls::nvhls_t<15>::nvuint_t NVUINT15;
97typedef nvhls::nvhls_t<16>::nvuint_t NVUINT16;
98typedef nvhls::nvhls_t<17>::nvuint_t NVUINT17;
99typedef nvhls::nvhls_t<18>::nvuint_t NVUINT18;
100typedef nvhls::nvhls_t<19>::nvuint_t NVUINT19;
101typedef nvhls::nvhls_t<20>::nvuint_t NVUINT20;
102typedef nvhls::nvhls_t<21>::nvuint_t NVUINT21;
103typedef nvhls::nvhls_t<22>::nvuint_t NVUINT22;
104typedef nvhls::nvhls_t<23>::nvuint_t NVUINT23;
105typedef nvhls::nvhls_t<24>::nvuint_t NVUINT24;
106typedef nvhls::nvhls_t<25>::nvuint_t NVUINT25;
107typedef nvhls::nvhls_t<26>::nvuint_t NVUINT26;
108typedef nvhls::nvhls_t<27>::nvuint_t NVUINT27;
109typedef nvhls::nvhls_t<28>::nvuint_t NVUINT28;
110typedef nvhls::nvhls_t<29>::nvuint_t NVUINT29;
111typedef nvhls::nvhls_t<30>::nvuint_t NVUINT30;
112typedef nvhls::nvhls_t<31>::nvuint_t NVUINT31;
113typedef nvhls::nvhls_t<32>::nvuint_t NVUINT32;
114typedef nvhls::nvhls_t<33>::nvuint_t NVUINT33;
115typedef nvhls::nvhls_t<34>::nvuint_t NVUINT34;
116typedef nvhls::nvhls_t<35>::nvuint_t NVUINT35;
117typedef nvhls::nvhls_t<36>::nvuint_t NVUINT36;
118typedef nvhls::nvhls_t<37>::nvuint_t NVUINT37;
119typedef nvhls::nvhls_t<38>::nvuint_t NVUINT38;
120typedef nvhls::nvhls_t<39>::nvuint_t NVUINT39;
121typedef nvhls::nvhls_t<40>::nvuint_t NVUINT40;
122typedef nvhls::nvhls_t<41>::nvuint_t NVUINT41;
123typedef nvhls::nvhls_t<42>::nvuint_t NVUINT42;
124typedef nvhls::nvhls_t<43>::nvuint_t NVUINT43;
125typedef nvhls::nvhls_t<44>::nvuint_t NVUINT44;
126typedef nvhls::nvhls_t<45>::nvuint_t NVUINT45;
127typedef nvhls::nvhls_t<46>::nvuint_t NVUINT46;
128typedef nvhls::nvhls_t<47>::nvuint_t NVUINT47;
129typedef nvhls::nvhls_t<48>::nvuint_t NVUINT48;
130typedef nvhls::nvhls_t<49>::nvuint_t NVUINT49;
131typedef nvhls::nvhls_t<50>::nvuint_t NVUINT50;
132typedef nvhls::nvhls_t<51>::nvuint_t NVUINT51;
133typedef nvhls::nvhls_t<52>::nvuint_t NVUINT52;
134typedef nvhls::nvhls_t<53>::nvuint_t NVUINT53;
135typedef nvhls::nvhls_t<54>::nvuint_t NVUINT54;
136typedef nvhls::nvhls_t<55>::nvuint_t NVUINT55;
137typedef nvhls::nvhls_t<56>::nvuint_t NVUINT56;
138typedef nvhls::nvhls_t<57>::nvuint_t NVUINT57;
139typedef nvhls::nvhls_t<58>::nvuint_t NVUINT58;
140typedef nvhls::nvhls_t<59>::nvuint_t NVUINT59;
141typedef nvhls::nvhls_t<60>::nvuint_t NVUINT60;
142typedef nvhls::nvhls_t<61>::nvuint_t NVUINT61;
143typedef nvhls::nvhls_t<62>::nvuint_t NVUINT62;
144typedef nvhls::nvhls_t<63>::nvuint_t NVUINT63;
145typedef nvhls::nvhls_t<64>::nvuint_t NVUINT64;
146typedef nvhls::nvhls_t<128>::nvuint_t NVUINT128;
147
148// Fixed width Signed INT types
149typedef nvhls::nvhls_t<1>::nvint_t NVINT1;
150typedef nvhls::nvhls_t<2>::nvint_t NVINT2;
151typedef nvhls::nvhls_t<3>::nvint_t NVINT3;
152typedef nvhls::nvhls_t<4>::nvint_t NVINT4;
153typedef nvhls::nvhls_t<5>::nvint_t NVINT5;
154typedef nvhls::nvhls_t<6>::nvint_t NVINT6;
155typedef nvhls::nvhls_t<7>::nvint_t NVINT7;
156typedef nvhls::nvhls_t<8>::nvint_t NVINT8;
157typedef nvhls::nvhls_t<9>::nvint_t NVINT9;
158typedef nvhls::nvhls_t<10>::nvint_t NVINT10;
159typedef nvhls::nvhls_t<11>::nvint_t NVINT11;
160typedef nvhls::nvhls_t<12>::nvint_t NVINT12;
161typedef nvhls::nvhls_t<13>::nvint_t NVINT13;
162typedef nvhls::nvhls_t<14>::nvint_t NVINT14;
163typedef nvhls::nvhls_t<15>::nvint_t NVINT15;
164typedef nvhls::nvhls_t<16>::nvint_t NVINT16;
165typedef nvhls::nvhls_t<17>::nvint_t NVINT17;
166typedef nvhls::nvhls_t<18>::nvint_t NVINT18;
167typedef nvhls::nvhls_t<19>::nvint_t NVINT19;
168typedef nvhls::nvhls_t<20>::nvint_t NVINT20;
169typedef nvhls::nvhls_t<21>::nvint_t NVINT21;
170typedef nvhls::nvhls_t<22>::nvint_t NVINT22;
171typedef nvhls::nvhls_t<23>::nvint_t NVINT23;
172typedef nvhls::nvhls_t<24>::nvint_t NVINT24;
173typedef nvhls::nvhls_t<25>::nvint_t NVINT25;
174typedef nvhls::nvhls_t<26>::nvint_t NVINT26;
175typedef nvhls::nvhls_t<27>::nvint_t NVINT27;
176typedef nvhls::nvhls_t<28>::nvint_t NVINT28;
177typedef nvhls::nvhls_t<29>::nvint_t NVINT29;
178typedef nvhls::nvhls_t<30>::nvint_t NVINT30;
179typedef nvhls::nvhls_t<31>::nvint_t NVINT31;
180typedef nvhls::nvhls_t<32>::nvint_t NVINT32;
181typedef nvhls::nvhls_t<33>::nvint_t NVINT33;
182typedef nvhls::nvhls_t<34>::nvint_t NVINT34;
183typedef nvhls::nvhls_t<35>::nvint_t NVINT35;
184typedef nvhls::nvhls_t<36>::nvint_t NVINT36;
185typedef nvhls::nvhls_t<37>::nvint_t NVINT37;
186typedef nvhls::nvhls_t<38>::nvint_t NVINT38;
187typedef nvhls::nvhls_t<39>::nvint_t NVINT39;
188typedef nvhls::nvhls_t<40>::nvint_t NVINT40;
189typedef nvhls::nvhls_t<41>::nvint_t NVINT41;
190typedef nvhls::nvhls_t<42>::nvint_t NVINT42;
191typedef nvhls::nvhls_t<43>::nvint_t NVINT43;
192typedef nvhls::nvhls_t<44>::nvint_t NVINT44;
193typedef nvhls::nvhls_t<45>::nvint_t NVINT45;
194typedef nvhls::nvhls_t<46>::nvint_t NVINT46;
195typedef nvhls::nvhls_t<47>::nvint_t NVINT47;
196typedef nvhls::nvhls_t<48>::nvint_t NVINT48;
197typedef nvhls::nvhls_t<49>::nvint_t NVINT49;
198typedef nvhls::nvhls_t<50>::nvint_t NVINT50;
199typedef nvhls::nvhls_t<51>::nvint_t NVINT51;
200typedef nvhls::nvhls_t<52>::nvint_t NVINT52;
201typedef nvhls::nvhls_t<53>::nvint_t NVINT53;
202typedef nvhls::nvhls_t<54>::nvint_t NVINT54;
203typedef nvhls::nvhls_t<55>::nvint_t NVINT55;
204typedef nvhls::nvhls_t<56>::nvint_t NVINT56;
205typedef nvhls::nvhls_t<57>::nvint_t NVINT57;
206typedef nvhls::nvhls_t<58>::nvint_t NVINT58;
207typedef nvhls::nvhls_t<59>::nvint_t NVINT59;
208typedef nvhls::nvhls_t<60>::nvint_t NVINT60;
209typedef nvhls::nvhls_t<61>::nvint_t NVINT61;
210typedef nvhls::nvhls_t<62>::nvint_t NVINT62;
211typedef nvhls::nvhls_t<63>::nvint_t NVINT63;
212typedef nvhls::nvhls_t<64>::nvint_t NVINT64;
213typedef nvhls::nvhls_t<128>::nvint_t NVINT128;
214
215#endif
Definition of vendor agnostic integer data types.
Definition nvhls_int.h:336