1pub const _STDINT_H: u32 = 1;
4pub const _FEATURES_H: u32 = 1;
5pub const _DEFAULT_SOURCE: u32 = 1;
6pub const __GLIBC_USE_ISOC23: u32 = 0;
7pub const __USE_ISOC11: u32 = 1;
8pub const __USE_ISOC99: u32 = 1;
9pub const __USE_ISOC95: u32 = 1;
10pub const __USE_POSIX_IMPLICITLY: u32 = 1;
11pub const _POSIX_SOURCE: u32 = 1;
12pub const _POSIX_C_SOURCE: u32 = 200809;
13pub const __USE_POSIX: u32 = 1;
14pub const __USE_POSIX2: u32 = 1;
15pub const __USE_POSIX199309: u32 = 1;
16pub const __USE_POSIX199506: u32 = 1;
17pub const __USE_XOPEN2K: u32 = 1;
18pub const __USE_XOPEN2K8: u32 = 1;
19pub const _ATFILE_SOURCE: u32 = 1;
20pub const __WORDSIZE: u32 = 64;
21pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
22pub const __SYSCALL_WORDSIZE: u32 = 64;
23pub const __TIMESIZE: u32 = 64;
24pub const __USE_TIME_BITS64: u32 = 1;
25pub const __USE_MISC: u32 = 1;
26pub const __USE_ATFILE: u32 = 1;
27pub const __USE_FORTIFY_LEVEL: u32 = 0;
28pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
29pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
30pub const __GLIBC_USE_C23_STRTOL: u32 = 0;
31pub const _STDC_PREDEF_H: u32 = 1;
32pub const __STDC_IEC_559__: u32 = 1;
33pub const __STDC_IEC_60559_BFP__: u32 = 201404;
34pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
35pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404;
36pub const __STDC_ISO_10646__: u32 = 201706;
37pub const __GNU_LIBRARY__: u32 = 6;
38pub const __GLIBC__: u32 = 2;
39pub const __GLIBC_MINOR__: u32 = 40;
40pub const _SYS_CDEFS_H: u32 = 1;
41pub const __glibc_c99_flexarr_available: u32 = 1;
42pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0;
43pub const __HAVE_GENERIC_SELECTION: u32 = 1;
44pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
45pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
46pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23: u32 = 0;
47pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0;
48pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
49pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23: u32 = 0;
50pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
51pub const _BITS_TYPES_H: u32 = 1;
52pub const _BITS_TYPESIZES_H: u32 = 1;
53pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
54pub const __INO_T_MATCHES_INO64_T: u32 = 1;
55pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
56pub const __STATFS_MATCHES_STATFS64: u32 = 1;
57pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1;
58pub const __FD_SETSIZE: u32 = 1024;
59pub const _BITS_TIME64_H: u32 = 1;
60pub const _BITS_WCHAR_H: u32 = 1;
61pub const _BITS_STDINT_INTN_H: u32 = 1;
62pub const _BITS_STDINT_UINTN_H: u32 = 1;
63pub const _BITS_STDINT_LEAST_H: u32 = 1;
64pub const INT8_MIN: i32 = -128;
65pub const INT16_MIN: i32 = -32768;
66pub const INT32_MIN: i32 = -2147483648;
67pub const INT8_MAX: u32 = 127;
68pub const INT16_MAX: u32 = 32767;
69pub const INT32_MAX: u32 = 2147483647;
70pub const UINT8_MAX: u32 = 255;
71pub const UINT16_MAX: u32 = 65535;
72pub const UINT32_MAX: u32 = 4294967295;
73pub const INT_LEAST8_MIN: i32 = -128;
74pub const INT_LEAST16_MIN: i32 = -32768;
75pub const INT_LEAST32_MIN: i32 = -2147483648;
76pub const INT_LEAST8_MAX: u32 = 127;
77pub const INT_LEAST16_MAX: u32 = 32767;
78pub const INT_LEAST32_MAX: u32 = 2147483647;
79pub const UINT_LEAST8_MAX: u32 = 255;
80pub const UINT_LEAST16_MAX: u32 = 65535;
81pub const UINT_LEAST32_MAX: u32 = 4294967295;
82pub const INT_FAST8_MIN: i32 = -128;
83pub const INT_FAST16_MIN: i64 = -9223372036854775808;
84pub const INT_FAST32_MIN: i64 = -9223372036854775808;
85pub const INT_FAST8_MAX: u32 = 127;
86pub const INT_FAST16_MAX: u64 = 9223372036854775807;
87pub const INT_FAST32_MAX: u64 = 9223372036854775807;
88pub const UINT_FAST8_MAX: u32 = 255;
89pub const UINT_FAST16_MAX: i32 = -1;
90pub const UINT_FAST32_MAX: i32 = -1;
91pub const INTPTR_MIN: i64 = -9223372036854775808;
92pub const INTPTR_MAX: u64 = 9223372036854775807;
93pub const UINTPTR_MAX: i32 = -1;
94pub const PTRDIFF_MIN: i64 = -9223372036854775808;
95pub const PTRDIFF_MAX: u64 = 9223372036854775807;
96pub const SIG_ATOMIC_MIN: i32 = -2147483648;
97pub const SIG_ATOMIC_MAX: u32 = 2147483647;
98pub const SIZE_MAX: i32 = -1;
99pub const WINT_MIN: u32 = 0;
100pub const WINT_MAX: u32 = 4294967295;
101pub const __bool_true_false_are_defined: u32 = 1;
102pub const true_: u32 = 1;
103pub const false_: u32 = 0;
104pub const VIRGL_MAJOR_VERSION: u32 = 1;
105pub const VIRGL_MINOR_VERSION: u32 = 1;
106pub const VIRGL_MICRO_VERSION: u32 = 0;
107pub const VIRGL_RENDERER_CALLBACKS_VERSION: u32 = 4;
108pub const VIRGL_RENDERER_USE_EGL: u32 = 1;
109pub const VIRGL_RENDERER_THREAD_SYNC: u32 = 2;
110pub const VIRGL_RENDERER_USE_GLX: u32 = 4;
111pub const VIRGL_RENDERER_USE_SURFACELESS: u32 = 8;
112pub const VIRGL_RENDERER_USE_GLES: u32 = 16;
113pub const VIRGL_RENDERER_USE_EXTERNAL_BLOB: u32 = 32;
114pub const VIRGL_RENDERER_VENUS: u32 = 64;
115pub const VIRGL_RENDERER_NO_VIRGL: u32 = 128;
116pub const VIRGL_RENDERER_ASYNC_FENCE_CB: u32 = 256;
117pub const VIRGL_RENDERER_RENDER_SERVER: u32 = 512;
118pub const VIRGL_RENDERER_DRM: u32 = 1024;
119pub const VIRGL_RENDERER_USE_VIDEO: u32 = 2048;
120pub const VIRGL_RENDERER_D3D11_SHARE_TEXTURE: u32 = 4096;
121pub const VIRGL_RENDERER_COMPAT_PROFILE: u32 = 8192;
122pub const VIRGL_RENDERER_USE_GUEST_VRAM: u32 = 16384;
123pub const VIRGL_RES_BIND_DEPTH_STENCIL: u32 = 1;
124pub const VIRGL_RES_BIND_RENDER_TARGET: u32 = 2;
125pub const VIRGL_RES_BIND_SAMPLER_VIEW: u32 = 8;
126pub const VIRGL_RES_BIND_VERTEX_BUFFER: u32 = 16;
127pub const VIRGL_RES_BIND_INDEX_BUFFER: u32 = 32;
128pub const VIRGL_RES_BIND_CONSTANT_BUFFER: u32 = 64;
129pub const VIRGL_RES_BIND_STREAM_OUTPUT: u32 = 2048;
130pub const VIRGL_RES_BIND_CURSOR: u32 = 65536;
131pub const VIRGL_RES_BIND_CUSTOM: u32 = 131072;
132pub const VIRGL_RES_BIND_SCANOUT: u32 = 262144;
133pub const VIRGL_RES_BIND_SHARED: u32 = 1048576;
134pub const VIRGL_RENDERER_RESOURCE_INFO_EXT_VERSION: u32 = 0;
135pub const VIRGL_RENDERER_CONTEXT_FLAG_CAPSET_ID_MASK: u32 = 255;
136pub const VIRGL_RENDERER_BLOB_MEM_GUEST: u32 = 1;
137pub const VIRGL_RENDERER_BLOB_MEM_HOST3D: u32 = 2;
138pub const VIRGL_RENDERER_BLOB_MEM_HOST3D_GUEST: u32 = 3;
139pub const VIRGL_RENDERER_BLOB_MEM_GUEST_VRAM: u32 = 4;
140pub const VIRGL_RENDERER_BLOB_FLAG_USE_MAPPABLE: u32 = 1;
141pub const VIRGL_RENDERER_BLOB_FLAG_USE_SHAREABLE: u32 = 2;
142pub const VIRGL_RENDERER_BLOB_FLAG_USE_CROSS_DEVICE: u32 = 4;
143pub const VIRGL_RENDERER_MAP_CACHE_MASK: u32 = 15;
144pub const VIRGL_RENDERER_MAP_CACHE_NONE: u32 = 0;
145pub const VIRGL_RENDERER_MAP_CACHE_CACHED: u32 = 1;
146pub const VIRGL_RENDERER_MAP_CACHE_UNCACHED: u32 = 2;
147pub const VIRGL_RENDERER_MAP_CACHE_WC: u32 = 3;
148pub const VIRGL_RENDERER_BLOB_FD_TYPE_DMABUF: u32 = 1;
149pub const VIRGL_RENDERER_BLOB_FD_TYPE_OPAQUE: u32 = 2;
150pub const VIRGL_RENDERER_BLOB_FD_TYPE_SHM: u32 = 3;
151pub const VIRGL_RENDERER_FENCE_FLAG_MERGEABLE: u32 = 1;
152pub type __u_char = ::std::os::raw::c_uchar;
153pub type __u_short = ::std::os::raw::c_ushort;
154pub type __u_int = ::std::os::raw::c_uint;
155pub type __u_long = ::std::os::raw::c_ulong;
156pub type __int8_t = ::std::os::raw::c_schar;
157pub type __uint8_t = ::std::os::raw::c_uchar;
158pub type __int16_t = ::std::os::raw::c_short;
159pub type __uint16_t = ::std::os::raw::c_ushort;
160pub type __int32_t = ::std::os::raw::c_int;
161pub type __uint32_t = ::std::os::raw::c_uint;
162pub type __int64_t = ::std::os::raw::c_long;
163pub type __uint64_t = ::std::os::raw::c_ulong;
164pub type __int_least8_t = __int8_t;
165pub type __uint_least8_t = __uint8_t;
166pub type __int_least16_t = __int16_t;
167pub type __uint_least16_t = __uint16_t;
168pub type __int_least32_t = __int32_t;
169pub type __uint_least32_t = __uint32_t;
170pub type __int_least64_t = __int64_t;
171pub type __uint_least64_t = __uint64_t;
172pub type __quad_t = ::std::os::raw::c_long;
173pub type __u_quad_t = ::std::os::raw::c_ulong;
174pub type __intmax_t = ::std::os::raw::c_long;
175pub type __uintmax_t = ::std::os::raw::c_ulong;
176pub type __dev_t = ::std::os::raw::c_ulong;
177pub type __uid_t = ::std::os::raw::c_uint;
178pub type __gid_t = ::std::os::raw::c_uint;
179pub type __ino_t = ::std::os::raw::c_ulong;
180pub type __ino64_t = ::std::os::raw::c_ulong;
181pub type __mode_t = ::std::os::raw::c_uint;
182pub type __nlink_t = ::std::os::raw::c_ulong;
183pub type __off_t = ::std::os::raw::c_long;
184pub type __off64_t = ::std::os::raw::c_long;
185pub type __pid_t = ::std::os::raw::c_int;
186#[repr(C)]
187#[derive(Debug, Copy, Clone)]
188pub struct __fsid_t {
189 pub __val: [::std::os::raw::c_int; 2usize],
190}
191#[allow(clippy::unnecessary_operation, clippy::identity_op)]
192const _: () = {
193 ["Size of __fsid_t"][::std::mem::size_of::<__fsid_t>() - 8usize];
194 ["Alignment of __fsid_t"][::std::mem::align_of::<__fsid_t>() - 4usize];
195 ["Offset of field: __fsid_t::__val"][::std::mem::offset_of!(__fsid_t, __val) - 0usize];
196};
197pub type __clock_t = ::std::os::raw::c_long;
198pub type __rlim_t = ::std::os::raw::c_ulong;
199pub type __rlim64_t = ::std::os::raw::c_ulong;
200pub type __id_t = ::std::os::raw::c_uint;
201pub type __time_t = ::std::os::raw::c_long;
202pub type __useconds_t = ::std::os::raw::c_uint;
203pub type __suseconds_t = ::std::os::raw::c_long;
204pub type __suseconds64_t = ::std::os::raw::c_long;
205pub type __daddr_t = ::std::os::raw::c_int;
206pub type __key_t = ::std::os::raw::c_int;
207pub type __clockid_t = ::std::os::raw::c_int;
208pub type __timer_t = *mut ::std::os::raw::c_void;
209pub type __blksize_t = ::std::os::raw::c_long;
210pub type __blkcnt_t = ::std::os::raw::c_long;
211pub type __blkcnt64_t = ::std::os::raw::c_long;
212pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
213pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
214pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
215pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
216pub type __fsword_t = ::std::os::raw::c_long;
217pub type __ssize_t = ::std::os::raw::c_long;
218pub type __syscall_slong_t = ::std::os::raw::c_long;
219pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
220pub type __loff_t = __off64_t;
221pub type __caddr_t = *mut ::std::os::raw::c_char;
222pub type __intptr_t = ::std::os::raw::c_long;
223pub type __socklen_t = ::std::os::raw::c_uint;
224pub type __sig_atomic_t = ::std::os::raw::c_int;
225pub type int_least8_t = __int_least8_t;
226pub type int_least16_t = __int_least16_t;
227pub type int_least32_t = __int_least32_t;
228pub type int_least64_t = __int_least64_t;
229pub type uint_least8_t = __uint_least8_t;
230pub type uint_least16_t = __uint_least16_t;
231pub type uint_least32_t = __uint_least32_t;
232pub type uint_least64_t = __uint_least64_t;
233pub type int_fast8_t = ::std::os::raw::c_schar;
234pub type int_fast16_t = ::std::os::raw::c_long;
235pub type int_fast32_t = ::std::os::raw::c_long;
236pub type int_fast64_t = ::std::os::raw::c_long;
237pub type uint_fast8_t = ::std::os::raw::c_uchar;
238pub type uint_fast16_t = ::std::os::raw::c_ulong;
239pub type uint_fast32_t = ::std::os::raw::c_ulong;
240pub type uint_fast64_t = ::std::os::raw::c_ulong;
241pub type intmax_t = __intmax_t;
242pub type uintmax_t = __uintmax_t;
243pub type __gnuc_va_list = __builtin_va_list;
244pub type va_list = __builtin_va_list;
245#[repr(C)]
246#[derive(Debug, Copy, Clone)]
247pub struct virgl_box {
248 _unused: [u8; 0],
249}
250#[repr(C)]
251#[derive(Debug, Copy, Clone)]
252pub struct iovec {
253 _unused: [u8; 0],
254}
255pub type virgl_renderer_gl_context = *mut ::std::os::raw::c_void;
256#[repr(C)]
257#[derive(Debug, Copy, Clone)]
258pub struct virgl_renderer_gl_ctx_param {
259 pub version: ::std::os::raw::c_int,
260 pub shared: bool,
261 pub major_ver: ::std::os::raw::c_int,
262 pub minor_ver: ::std::os::raw::c_int,
263 pub compat_ctx: ::std::os::raw::c_int,
264}
265#[allow(clippy::unnecessary_operation, clippy::identity_op)]
266const _: () = {
267 ["Size of virgl_renderer_gl_ctx_param"]
268 [::std::mem::size_of::<virgl_renderer_gl_ctx_param>() - 20usize];
269 ["Alignment of virgl_renderer_gl_ctx_param"]
270 [::std::mem::align_of::<virgl_renderer_gl_ctx_param>() - 4usize];
271 ["Offset of field: virgl_renderer_gl_ctx_param::version"]
272 [::std::mem::offset_of!(virgl_renderer_gl_ctx_param, version) - 0usize];
273 ["Offset of field: virgl_renderer_gl_ctx_param::shared"]
274 [::std::mem::offset_of!(virgl_renderer_gl_ctx_param, shared) - 4usize];
275 ["Offset of field: virgl_renderer_gl_ctx_param::major_ver"]
276 [::std::mem::offset_of!(virgl_renderer_gl_ctx_param, major_ver) - 8usize];
277 ["Offset of field: virgl_renderer_gl_ctx_param::minor_ver"]
278 [::std::mem::offset_of!(virgl_renderer_gl_ctx_param, minor_ver) - 12usize];
279 ["Offset of field: virgl_renderer_gl_ctx_param::compat_ctx"]
280 [::std::mem::offset_of!(virgl_renderer_gl_ctx_param, compat_ctx) - 16usize];
281};
282#[repr(C)]
283#[derive(Debug, Copy, Clone)]
284pub struct virgl_renderer_callbacks {
285 pub version: ::std::os::raw::c_int,
286 pub write_fence: ::std::option::Option<
287 unsafe extern "C" fn(cookie: *mut ::std::os::raw::c_void, fence: u32),
288 >,
289 pub create_gl_context: ::std::option::Option<
290 unsafe extern "C" fn(
291 cookie: *mut ::std::os::raw::c_void,
292 scanout_idx: ::std::os::raw::c_int,
293 param: *mut virgl_renderer_gl_ctx_param,
294 ) -> virgl_renderer_gl_context,
295 >,
296 pub destroy_gl_context: ::std::option::Option<
297 unsafe extern "C" fn(cookie: *mut ::std::os::raw::c_void, ctx: virgl_renderer_gl_context),
298 >,
299 pub make_current: ::std::option::Option<
300 unsafe extern "C" fn(
301 cookie: *mut ::std::os::raw::c_void,
302 scanout_idx: ::std::os::raw::c_int,
303 ctx: virgl_renderer_gl_context,
304 ) -> ::std::os::raw::c_int,
305 >,
306 pub get_drm_fd: ::std::option::Option<
307 unsafe extern "C" fn(cookie: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
308 >,
309 pub write_context_fence: ::std::option::Option<
310 unsafe extern "C" fn(
311 cookie: *mut ::std::os::raw::c_void,
312 ctx_id: u32,
313 ring_idx: u32,
314 fence_id: u64,
315 ),
316 >,
317 pub get_server_fd: ::std::option::Option<
318 unsafe extern "C" fn(
319 cookie: *mut ::std::os::raw::c_void,
320 version: u32,
321 ) -> ::std::os::raw::c_int,
322 >,
323 pub get_egl_display: ::std::option::Option<
324 unsafe extern "C" fn(cookie: *mut ::std::os::raw::c_void) -> *mut ::std::os::raw::c_void,
325 >,
326}
327#[allow(clippy::unnecessary_operation, clippy::identity_op)]
328const _: () = {
329 ["Size of virgl_renderer_callbacks"]
330 [::std::mem::size_of::<virgl_renderer_callbacks>() - 72usize];
331 ["Alignment of virgl_renderer_callbacks"]
332 [::std::mem::align_of::<virgl_renderer_callbacks>() - 8usize];
333 ["Offset of field: virgl_renderer_callbacks::version"]
334 [::std::mem::offset_of!(virgl_renderer_callbacks, version) - 0usize];
335 ["Offset of field: virgl_renderer_callbacks::write_fence"]
336 [::std::mem::offset_of!(virgl_renderer_callbacks, write_fence) - 8usize];
337 ["Offset of field: virgl_renderer_callbacks::create_gl_context"]
338 [::std::mem::offset_of!(virgl_renderer_callbacks, create_gl_context) - 16usize];
339 ["Offset of field: virgl_renderer_callbacks::destroy_gl_context"]
340 [::std::mem::offset_of!(virgl_renderer_callbacks, destroy_gl_context) - 24usize];
341 ["Offset of field: virgl_renderer_callbacks::make_current"]
342 [::std::mem::offset_of!(virgl_renderer_callbacks, make_current) - 32usize];
343 ["Offset of field: virgl_renderer_callbacks::get_drm_fd"]
344 [::std::mem::offset_of!(virgl_renderer_callbacks, get_drm_fd) - 40usize];
345 ["Offset of field: virgl_renderer_callbacks::write_context_fence"]
346 [::std::mem::offset_of!(virgl_renderer_callbacks, write_context_fence) - 48usize];
347 ["Offset of field: virgl_renderer_callbacks::get_server_fd"]
348 [::std::mem::offset_of!(virgl_renderer_callbacks, get_server_fd) - 56usize];
349 ["Offset of field: virgl_renderer_callbacks::get_egl_display"]
350 [::std::mem::offset_of!(virgl_renderer_callbacks, get_egl_display) - 64usize];
351};
352extern "C" {
353 pub fn virgl_renderer_init(
354 cookie: *mut ::std::os::raw::c_void,
355 flags: ::std::os::raw::c_int,
356 cb: *mut virgl_renderer_callbacks,
357 ) -> ::std::os::raw::c_int;
358}
359extern "C" {
360 pub fn virgl_renderer_poll();
361}
362extern "C" {
363 pub fn virgl_renderer_get_cursor_data(
364 resource_id: u32,
365 width: *mut u32,
366 height: *mut u32,
367 ) -> *mut ::std::os::raw::c_void;
368}
369extern "C" {
370 pub fn virgl_renderer_get_rect(
371 resource_id: ::std::os::raw::c_int,
372 iov: *mut iovec,
373 num_iovs: ::std::os::raw::c_uint,
374 offset: u32,
375 x: ::std::os::raw::c_int,
376 y: ::std::os::raw::c_int,
377 width: ::std::os::raw::c_int,
378 height: ::std::os::raw::c_int,
379 );
380}
381extern "C" {
382 pub fn virgl_renderer_get_fd_for_texture(
383 tex_id: u32,
384 fd: *mut ::std::os::raw::c_int,
385 ) -> ::std::os::raw::c_int;
386}
387extern "C" {
388 pub fn virgl_renderer_get_fd_for_texture2(
389 tex_id: u32,
390 fd: *mut ::std::os::raw::c_int,
391 stride: *mut ::std::os::raw::c_int,
392 offset: *mut ::std::os::raw::c_int,
393 ) -> ::std::os::raw::c_int;
394}
395pub const virgl_renderer_structure_type_v0_VIRGL_RENDERER_STRUCTURE_TYPE_NONE:
396 virgl_renderer_structure_type_v0 = 0;
397pub const virgl_renderer_structure_type_v0_VIRGL_RENDERER_STRUCTURE_TYPE_EXPORT_QUERY:
398 virgl_renderer_structure_type_v0 = 1;
399pub const virgl_renderer_structure_type_v0_VIRGL_RENDERER_STRUCTURE_TYPE_SUPPORTED_STRUCTURES:
400 virgl_renderer_structure_type_v0 = 2;
401pub type virgl_renderer_structure_type_v0 = ::std::os::raw::c_uint;
402#[repr(C)]
403#[derive(Debug, Copy, Clone)]
404pub struct virgl_renderer_resource_create_args {
405 pub handle: u32,
406 pub target: u32,
407 pub format: u32,
408 pub bind: u32,
409 pub width: u32,
410 pub height: u32,
411 pub depth: u32,
412 pub array_size: u32,
413 pub last_level: u32,
414 pub nr_samples: u32,
415 pub flags: u32,
416}
417#[allow(clippy::unnecessary_operation, clippy::identity_op)]
418const _: () = {
419 ["Size of virgl_renderer_resource_create_args"]
420 [::std::mem::size_of::<virgl_renderer_resource_create_args>() - 44usize];
421 ["Alignment of virgl_renderer_resource_create_args"]
422 [::std::mem::align_of::<virgl_renderer_resource_create_args>() - 4usize];
423 ["Offset of field: virgl_renderer_resource_create_args::handle"]
424 [::std::mem::offset_of!(virgl_renderer_resource_create_args, handle) - 0usize];
425 ["Offset of field: virgl_renderer_resource_create_args::target"]
426 [::std::mem::offset_of!(virgl_renderer_resource_create_args, target) - 4usize];
427 ["Offset of field: virgl_renderer_resource_create_args::format"]
428 [::std::mem::offset_of!(virgl_renderer_resource_create_args, format) - 8usize];
429 ["Offset of field: virgl_renderer_resource_create_args::bind"]
430 [::std::mem::offset_of!(virgl_renderer_resource_create_args, bind) - 12usize];
431 ["Offset of field: virgl_renderer_resource_create_args::width"]
432 [::std::mem::offset_of!(virgl_renderer_resource_create_args, width) - 16usize];
433 ["Offset of field: virgl_renderer_resource_create_args::height"]
434 [::std::mem::offset_of!(virgl_renderer_resource_create_args, height) - 20usize];
435 ["Offset of field: virgl_renderer_resource_create_args::depth"]
436 [::std::mem::offset_of!(virgl_renderer_resource_create_args, depth) - 24usize];
437 ["Offset of field: virgl_renderer_resource_create_args::array_size"]
438 [::std::mem::offset_of!(virgl_renderer_resource_create_args, array_size) - 28usize];
439 ["Offset of field: virgl_renderer_resource_create_args::last_level"]
440 [::std::mem::offset_of!(virgl_renderer_resource_create_args, last_level) - 32usize];
441 ["Offset of field: virgl_renderer_resource_create_args::nr_samples"]
442 [::std::mem::offset_of!(virgl_renderer_resource_create_args, nr_samples) - 36usize];
443 ["Offset of field: virgl_renderer_resource_create_args::flags"]
444 [::std::mem::offset_of!(virgl_renderer_resource_create_args, flags) - 40usize];
445};
446#[repr(C)]
447#[derive(Debug, Copy, Clone)]
448pub struct virgl_renderer_hdr {
449 pub stype: u32,
450 pub stype_version: u32,
451 pub size: u32,
452}
453#[allow(clippy::unnecessary_operation, clippy::identity_op)]
454const _: () = {
455 ["Size of virgl_renderer_hdr"][::std::mem::size_of::<virgl_renderer_hdr>() - 12usize];
456 ["Alignment of virgl_renderer_hdr"][::std::mem::align_of::<virgl_renderer_hdr>() - 4usize];
457 ["Offset of field: virgl_renderer_hdr::stype"]
458 [::std::mem::offset_of!(virgl_renderer_hdr, stype) - 0usize];
459 ["Offset of field: virgl_renderer_hdr::stype_version"]
460 [::std::mem::offset_of!(virgl_renderer_hdr, stype_version) - 4usize];
461 ["Offset of field: virgl_renderer_hdr::size"]
462 [::std::mem::offset_of!(virgl_renderer_hdr, size) - 8usize];
463};
464#[repr(C)]
465#[derive(Debug, Copy, Clone)]
466pub struct virgl_renderer_export_query {
467 pub hdr: virgl_renderer_hdr,
468 pub in_resource_id: u32,
469 pub out_num_fds: u32,
470 pub in_export_fds: u32,
471 pub out_fourcc: u32,
472 pub pad: u32,
473 pub out_fds: [i32; 4usize],
474 pub out_strides: [u32; 4usize],
475 pub out_offsets: [u32; 4usize],
476 pub out_modifier: u64,
477}
478#[allow(clippy::unnecessary_operation, clippy::identity_op)]
479const _: () = {
480 ["Size of virgl_renderer_export_query"]
481 [::std::mem::size_of::<virgl_renderer_export_query>() - 88usize];
482 ["Alignment of virgl_renderer_export_query"]
483 [::std::mem::align_of::<virgl_renderer_export_query>() - 8usize];
484 ["Offset of field: virgl_renderer_export_query::hdr"]
485 [::std::mem::offset_of!(virgl_renderer_export_query, hdr) - 0usize];
486 ["Offset of field: virgl_renderer_export_query::in_resource_id"]
487 [::std::mem::offset_of!(virgl_renderer_export_query, in_resource_id) - 12usize];
488 ["Offset of field: virgl_renderer_export_query::out_num_fds"]
489 [::std::mem::offset_of!(virgl_renderer_export_query, out_num_fds) - 16usize];
490 ["Offset of field: virgl_renderer_export_query::in_export_fds"]
491 [::std::mem::offset_of!(virgl_renderer_export_query, in_export_fds) - 20usize];
492 ["Offset of field: virgl_renderer_export_query::out_fourcc"]
493 [::std::mem::offset_of!(virgl_renderer_export_query, out_fourcc) - 24usize];
494 ["Offset of field: virgl_renderer_export_query::pad"]
495 [::std::mem::offset_of!(virgl_renderer_export_query, pad) - 28usize];
496 ["Offset of field: virgl_renderer_export_query::out_fds"]
497 [::std::mem::offset_of!(virgl_renderer_export_query, out_fds) - 32usize];
498 ["Offset of field: virgl_renderer_export_query::out_strides"]
499 [::std::mem::offset_of!(virgl_renderer_export_query, out_strides) - 48usize];
500 ["Offset of field: virgl_renderer_export_query::out_offsets"]
501 [::std::mem::offset_of!(virgl_renderer_export_query, out_offsets) - 64usize];
502 ["Offset of field: virgl_renderer_export_query::out_modifier"]
503 [::std::mem::offset_of!(virgl_renderer_export_query, out_modifier) - 80usize];
504};
505#[repr(C)]
506#[derive(Debug, Copy, Clone)]
507pub struct virgl_renderer_supported_structures {
508 pub hdr: virgl_renderer_hdr,
509 pub in_stype_version: u32,
510 pub out_supported_structures_mask: u32,
511}
512#[allow(clippy::unnecessary_operation, clippy::identity_op)]
513const _: () = {
514 ["Size of virgl_renderer_supported_structures"]
515 [::std::mem::size_of::<virgl_renderer_supported_structures>() - 20usize];
516 ["Alignment of virgl_renderer_supported_structures"]
517 [::std::mem::align_of::<virgl_renderer_supported_structures>() - 4usize];
518 ["Offset of field: virgl_renderer_supported_structures::hdr"]
519 [::std::mem::offset_of!(virgl_renderer_supported_structures, hdr) - 0usize];
520 ["Offset of field: virgl_renderer_supported_structures::in_stype_version"]
521 [::std::mem::offset_of!(virgl_renderer_supported_structures, in_stype_version) - 12usize];
522 ["Offset of field: virgl_renderer_supported_structures::out_supported_structures_mask"][::std::mem::offset_of!(
523 virgl_renderer_supported_structures,
524 out_supported_structures_mask
525 )
526 - 16usize];
527};
528pub type virgl_debug_callback_type = ::std::option::Option<
529 unsafe extern "C" fn(fmt: *const ::std::os::raw::c_char, ap: *mut __va_list_tag),
530>;
531pub const virgl_log_level_flags_VIRGL_LOG_LEVEL_DEBUG: virgl_log_level_flags = 0;
532pub const virgl_log_level_flags_VIRGL_LOG_LEVEL_INFO: virgl_log_level_flags = 1;
533pub const virgl_log_level_flags_VIRGL_LOG_LEVEL_WARNING: virgl_log_level_flags = 2;
534pub const virgl_log_level_flags_VIRGL_LOG_LEVEL_ERROR: virgl_log_level_flags = 3;
535pub const virgl_log_level_flags_VIRGL_LOG_LEVEL_SILENT: virgl_log_level_flags = 4;
536pub type virgl_log_level_flags = ::std::os::raw::c_uint;
537pub type virgl_free_data_callback_type =
538 ::std::option::Option<unsafe extern "C" fn(user_data: *mut ::std::os::raw::c_void)>;
539pub type virgl_log_callback_type = ::std::option::Option<
540 unsafe extern "C" fn(
541 log_level: virgl_log_level_flags,
542 message: *const ::std::os::raw::c_char,
543 user_data: *mut ::std::os::raw::c_void,
544 ),
545>;
546extern "C" {
547 pub fn virgl_renderer_resource_create(
548 args: *mut virgl_renderer_resource_create_args,
549 iov: *mut iovec,
550 num_iovs: u32,
551 ) -> ::std::os::raw::c_int;
552}
553extern "C" {
554 pub fn virgl_renderer_resource_import_eglimage(
555 args: *mut virgl_renderer_resource_create_args,
556 image: *mut ::std::os::raw::c_void,
557 ) -> ::std::os::raw::c_int;
558}
559extern "C" {
560 pub fn virgl_renderer_resource_unref(res_handle: u32);
561}
562extern "C" {
563 pub fn virgl_renderer_resource_set_priv(res_handle: u32, priv_: *mut ::std::os::raw::c_void);
564}
565extern "C" {
566 pub fn virgl_renderer_resource_get_priv(res_handle: u32) -> *mut ::std::os::raw::c_void;
567}
568extern "C" {
569 pub fn virgl_renderer_context_create(
570 handle: u32,
571 nlen: u32,
572 name: *const ::std::os::raw::c_char,
573 ) -> ::std::os::raw::c_int;
574}
575extern "C" {
576 pub fn virgl_renderer_context_destroy(handle: u32);
577}
578extern "C" {
579 pub fn virgl_renderer_submit_cmd(
580 buffer: *mut ::std::os::raw::c_void,
581 ctx_id: ::std::os::raw::c_int,
582 ndw: ::std::os::raw::c_int,
583 ) -> ::std::os::raw::c_int;
584}
585extern "C" {
586 pub fn virgl_renderer_transfer_read_iov(
587 handle: u32,
588 ctx_id: u32,
589 level: u32,
590 stride: u32,
591 layer_stride: u32,
592 box_: *mut virgl_box,
593 offset: u64,
594 iov: *mut iovec,
595 iovec_cnt: ::std::os::raw::c_int,
596 ) -> ::std::os::raw::c_int;
597}
598extern "C" {
599 pub fn virgl_renderer_transfer_write_iov(
600 handle: u32,
601 ctx_id: u32,
602 level: ::std::os::raw::c_int,
603 stride: u32,
604 layer_stride: u32,
605 box_: *mut virgl_box,
606 offset: u64,
607 iovec: *mut iovec,
608 iovec_cnt: ::std::os::raw::c_uint,
609 ) -> ::std::os::raw::c_int;
610}
611extern "C" {
612 pub fn virgl_renderer_get_cap_set(set: u32, max_ver: *mut u32, max_size: *mut u32);
613}
614extern "C" {
615 pub fn virgl_renderer_fill_caps(set: u32, version: u32, caps: *mut ::std::os::raw::c_void);
616}
617extern "C" {
618 pub fn virgl_renderer_resource_attach_iov(
619 res_handle: ::std::os::raw::c_int,
620 iov: *mut iovec,
621 num_iovs: ::std::os::raw::c_int,
622 ) -> ::std::os::raw::c_int;
623}
624extern "C" {
625 pub fn virgl_renderer_resource_detach_iov(
626 res_handle: ::std::os::raw::c_int,
627 iov: *mut *mut iovec,
628 num_iovs: *mut ::std::os::raw::c_int,
629 );
630}
631extern "C" {
632 pub fn virgl_renderer_create_fence(
633 client_fence_id: ::std::os::raw::c_int,
634 ctx_id: u32,
635 ) -> ::std::os::raw::c_int;
636}
637extern "C" {
638 pub fn virgl_renderer_force_ctx_0();
639}
640extern "C" {
641 pub fn virgl_renderer_ctx_attach_resource(
642 ctx_id: ::std::os::raw::c_int,
643 res_handle: ::std::os::raw::c_int,
644 );
645}
646extern "C" {
647 pub fn virgl_renderer_ctx_detach_resource(
648 ctx_id: ::std::os::raw::c_int,
649 res_handle: ::std::os::raw::c_int,
650 );
651}
652extern "C" {
653 pub fn virgl_set_debug_callback(cb: virgl_debug_callback_type) -> virgl_debug_callback_type;
654}
655extern "C" {
656 pub fn virgl_set_log_callback(
657 cb: virgl_log_callback_type,
658 user_data: *mut ::std::os::raw::c_void,
659 free_user_data_cb: virgl_free_data_callback_type,
660 );
661}
662#[repr(C)]
663#[derive(Debug, Copy, Clone)]
664pub struct virgl_renderer_resource_info {
665 pub handle: u32,
666 pub virgl_format: u32,
667 pub width: u32,
668 pub height: u32,
669 pub depth: u32,
670 pub flags: u32,
671 pub tex_id: u32,
672 pub stride: u32,
673 pub drm_fourcc: ::std::os::raw::c_int,
674 pub fd: ::std::os::raw::c_int,
675}
676#[allow(clippy::unnecessary_operation, clippy::identity_op)]
677const _: () = {
678 ["Size of virgl_renderer_resource_info"]
679 [::std::mem::size_of::<virgl_renderer_resource_info>() - 40usize];
680 ["Alignment of virgl_renderer_resource_info"]
681 [::std::mem::align_of::<virgl_renderer_resource_info>() - 4usize];
682 ["Offset of field: virgl_renderer_resource_info::handle"]
683 [::std::mem::offset_of!(virgl_renderer_resource_info, handle) - 0usize];
684 ["Offset of field: virgl_renderer_resource_info::virgl_format"]
685 [::std::mem::offset_of!(virgl_renderer_resource_info, virgl_format) - 4usize];
686 ["Offset of field: virgl_renderer_resource_info::width"]
687 [::std::mem::offset_of!(virgl_renderer_resource_info, width) - 8usize];
688 ["Offset of field: virgl_renderer_resource_info::height"]
689 [::std::mem::offset_of!(virgl_renderer_resource_info, height) - 12usize];
690 ["Offset of field: virgl_renderer_resource_info::depth"]
691 [::std::mem::offset_of!(virgl_renderer_resource_info, depth) - 16usize];
692 ["Offset of field: virgl_renderer_resource_info::flags"]
693 [::std::mem::offset_of!(virgl_renderer_resource_info, flags) - 20usize];
694 ["Offset of field: virgl_renderer_resource_info::tex_id"]
695 [::std::mem::offset_of!(virgl_renderer_resource_info, tex_id) - 24usize];
696 ["Offset of field: virgl_renderer_resource_info::stride"]
697 [::std::mem::offset_of!(virgl_renderer_resource_info, stride) - 28usize];
698 ["Offset of field: virgl_renderer_resource_info::drm_fourcc"]
699 [::std::mem::offset_of!(virgl_renderer_resource_info, drm_fourcc) - 32usize];
700 ["Offset of field: virgl_renderer_resource_info::fd"]
701 [::std::mem::offset_of!(virgl_renderer_resource_info, fd) - 36usize];
702};
703#[repr(C)]
704#[derive(Debug, Copy, Clone)]
705pub struct virgl_renderer_resource_info_ext {
706 pub version: ::std::os::raw::c_int,
707 pub base: virgl_renderer_resource_info,
708 pub has_dmabuf_export: bool,
709 pub planes: ::std::os::raw::c_int,
710 pub modifiers: u64,
711 pub d3d_tex2d: *mut ::std::os::raw::c_void,
712}
713#[allow(clippy::unnecessary_operation, clippy::identity_op)]
714const _: () = {
715 ["Size of virgl_renderer_resource_info_ext"]
716 [::std::mem::size_of::<virgl_renderer_resource_info_ext>() - 72usize];
717 ["Alignment of virgl_renderer_resource_info_ext"]
718 [::std::mem::align_of::<virgl_renderer_resource_info_ext>() - 8usize];
719 ["Offset of field: virgl_renderer_resource_info_ext::version"]
720 [::std::mem::offset_of!(virgl_renderer_resource_info_ext, version) - 0usize];
721 ["Offset of field: virgl_renderer_resource_info_ext::base"]
722 [::std::mem::offset_of!(virgl_renderer_resource_info_ext, base) - 4usize];
723 ["Offset of field: virgl_renderer_resource_info_ext::has_dmabuf_export"]
724 [::std::mem::offset_of!(virgl_renderer_resource_info_ext, has_dmabuf_export) - 44usize];
725 ["Offset of field: virgl_renderer_resource_info_ext::planes"]
726 [::std::mem::offset_of!(virgl_renderer_resource_info_ext, planes) - 48usize];
727 ["Offset of field: virgl_renderer_resource_info_ext::modifiers"]
728 [::std::mem::offset_of!(virgl_renderer_resource_info_ext, modifiers) - 56usize];
729 ["Offset of field: virgl_renderer_resource_info_ext::d3d_tex2d"]
730 [::std::mem::offset_of!(virgl_renderer_resource_info_ext, d3d_tex2d) - 64usize];
731};
732extern "C" {
733 pub fn virgl_renderer_resource_get_info(
734 res_handle: ::std::os::raw::c_int,
735 info: *mut virgl_renderer_resource_info,
736 ) -> ::std::os::raw::c_int;
737}
738extern "C" {
739 pub fn virgl_renderer_resource_get_info_ext(
740 res_handle: ::std::os::raw::c_int,
741 info: *mut virgl_renderer_resource_info_ext,
742 ) -> ::std::os::raw::c_int;
743}
744extern "C" {
745 pub fn virgl_renderer_cleanup(cookie: *mut ::std::os::raw::c_void);
746}
747extern "C" {
748 pub fn virgl_renderer_reset();
749}
750extern "C" {
751 pub fn virgl_renderer_get_poll_fd() -> ::std::os::raw::c_int;
752}
753extern "C" {
754 pub fn virgl_renderer_execute(
755 execute_args: *mut ::std::os::raw::c_void,
756 execute_size: u32,
757 ) -> ::std::os::raw::c_int;
758}
759extern "C" {
760 pub fn virgl_renderer_context_create_with_flags(
761 ctx_id: u32,
762 ctx_flags: u32,
763 nlen: u32,
764 name: *const ::std::os::raw::c_char,
765 ) -> ::std::os::raw::c_int;
766}
767#[repr(C)]
768#[derive(Debug, Copy, Clone)]
769pub struct virgl_renderer_resource_create_blob_args {
770 pub res_handle: u32,
771 pub ctx_id: u32,
772 pub blob_mem: u32,
773 pub blob_flags: u32,
774 pub blob_id: u64,
775 pub size: u64,
776 pub iovecs: *const iovec,
777 pub num_iovs: u32,
778}
779#[allow(clippy::unnecessary_operation, clippy::identity_op)]
780const _: () = {
781 ["Size of virgl_renderer_resource_create_blob_args"]
782 [::std::mem::size_of::<virgl_renderer_resource_create_blob_args>() - 48usize];
783 ["Alignment of virgl_renderer_resource_create_blob_args"]
784 [::std::mem::align_of::<virgl_renderer_resource_create_blob_args>() - 8usize];
785 ["Offset of field: virgl_renderer_resource_create_blob_args::res_handle"]
786 [::std::mem::offset_of!(virgl_renderer_resource_create_blob_args, res_handle) - 0usize];
787 ["Offset of field: virgl_renderer_resource_create_blob_args::ctx_id"]
788 [::std::mem::offset_of!(virgl_renderer_resource_create_blob_args, ctx_id) - 4usize];
789 ["Offset of field: virgl_renderer_resource_create_blob_args::blob_mem"]
790 [::std::mem::offset_of!(virgl_renderer_resource_create_blob_args, blob_mem) - 8usize];
791 ["Offset of field: virgl_renderer_resource_create_blob_args::blob_flags"]
792 [::std::mem::offset_of!(virgl_renderer_resource_create_blob_args, blob_flags) - 12usize];
793 ["Offset of field: virgl_renderer_resource_create_blob_args::blob_id"]
794 [::std::mem::offset_of!(virgl_renderer_resource_create_blob_args, blob_id) - 16usize];
795 ["Offset of field: virgl_renderer_resource_create_blob_args::size"]
796 [::std::mem::offset_of!(virgl_renderer_resource_create_blob_args, size) - 24usize];
797 ["Offset of field: virgl_renderer_resource_create_blob_args::iovecs"]
798 [::std::mem::offset_of!(virgl_renderer_resource_create_blob_args, iovecs) - 32usize];
799 ["Offset of field: virgl_renderer_resource_create_blob_args::num_iovs"]
800 [::std::mem::offset_of!(virgl_renderer_resource_create_blob_args, num_iovs) - 40usize];
801};
802extern "C" {
803 pub fn virgl_renderer_resource_create_blob(
804 args: *const virgl_renderer_resource_create_blob_args,
805 ) -> ::std::os::raw::c_int;
806}
807extern "C" {
808 pub fn virgl_renderer_resource_map(
809 res_handle: u32,
810 map: *mut *mut ::std::os::raw::c_void,
811 out_size: *mut u64,
812 ) -> ::std::os::raw::c_int;
813}
814extern "C" {
815 pub fn virgl_renderer_resource_unmap(res_handle: u32) -> ::std::os::raw::c_int;
816}
817extern "C" {
818 pub fn virgl_renderer_resource_get_map_info(
819 res_handle: u32,
820 map_info: *mut u32,
821 ) -> ::std::os::raw::c_int;
822}
823extern "C" {
824 pub fn virgl_renderer_resource_export_blob(
825 res_id: u32,
826 fd_type: *mut u32,
827 fd: *mut ::std::os::raw::c_int,
828 ) -> ::std::os::raw::c_int;
829}
830#[repr(C)]
831#[derive(Debug, Copy, Clone)]
832pub struct virgl_renderer_resource_import_blob_args {
833 pub res_handle: u32,
834 pub blob_mem: u32,
835 pub fd_type: u32,
836 pub fd: ::std::os::raw::c_int,
837 pub size: u64,
838}
839#[allow(clippy::unnecessary_operation, clippy::identity_op)]
840const _: () = {
841 ["Size of virgl_renderer_resource_import_blob_args"]
842 [::std::mem::size_of::<virgl_renderer_resource_import_blob_args>() - 24usize];
843 ["Alignment of virgl_renderer_resource_import_blob_args"]
844 [::std::mem::align_of::<virgl_renderer_resource_import_blob_args>() - 8usize];
845 ["Offset of field: virgl_renderer_resource_import_blob_args::res_handle"]
846 [::std::mem::offset_of!(virgl_renderer_resource_import_blob_args, res_handle) - 0usize];
847 ["Offset of field: virgl_renderer_resource_import_blob_args::blob_mem"]
848 [::std::mem::offset_of!(virgl_renderer_resource_import_blob_args, blob_mem) - 4usize];
849 ["Offset of field: virgl_renderer_resource_import_blob_args::fd_type"]
850 [::std::mem::offset_of!(virgl_renderer_resource_import_blob_args, fd_type) - 8usize];
851 ["Offset of field: virgl_renderer_resource_import_blob_args::fd"]
852 [::std::mem::offset_of!(virgl_renderer_resource_import_blob_args, fd) - 12usize];
853 ["Offset of field: virgl_renderer_resource_import_blob_args::size"]
854 [::std::mem::offset_of!(virgl_renderer_resource_import_blob_args, size) - 16usize];
855};
856extern "C" {
857 pub fn virgl_renderer_resource_import_blob(
858 args: *const virgl_renderer_resource_import_blob_args,
859 ) -> ::std::os::raw::c_int;
860}
861extern "C" {
862 pub fn virgl_renderer_context_create_fence(
863 ctx_id: u32,
864 flags: u32,
865 ring_idx: u32,
866 fence_id: u64,
867 ) -> ::std::os::raw::c_int;
868}
869extern "C" {
870 pub fn virgl_renderer_context_poll(ctx_id: u32);
871}
872extern "C" {
873 pub fn virgl_renderer_context_get_poll_fd(ctx_id: u32) -> ::std::os::raw::c_int;
874}
875extern "C" {
876 pub fn virgl_renderer_export_fence(
877 client_fence_id: u64,
878 fd: *mut ::std::os::raw::c_int,
879 ) -> ::std::os::raw::c_int;
880}
881extern "C" {
882 pub fn virgl_renderer_export_signalled_fence() -> ::std::os::raw::c_int;
883}
884extern "C" {
885 pub fn virgl_renderer_submit_cmd2(
886 buffer: *mut ::std::os::raw::c_void,
887 ctx_id: ::std::os::raw::c_int,
888 ndw: ::std::os::raw::c_int,
889 in_fence_ids: *mut u64,
890 num_in_fences: u32,
891 ) -> ::std::os::raw::c_int;
892}
893pub type __builtin_va_list = [__va_list_tag; 1usize];
894#[repr(C)]
895#[derive(Debug, Copy, Clone)]
896pub struct __va_list_tag {
897 pub gp_offset: ::std::os::raw::c_uint,
898 pub fp_offset: ::std::os::raw::c_uint,
899 pub overflow_arg_area: *mut ::std::os::raw::c_void,
900 pub reg_save_area: *mut ::std::os::raw::c_void,
901}
902#[allow(clippy::unnecessary_operation, clippy::identity_op)]
903const _: () = {
904 ["Size of __va_list_tag"][::std::mem::size_of::<__va_list_tag>() - 24usize];
905 ["Alignment of __va_list_tag"][::std::mem::align_of::<__va_list_tag>() - 8usize];
906 ["Offset of field: __va_list_tag::gp_offset"]
907 [::std::mem::offset_of!(__va_list_tag, gp_offset) - 0usize];
908 ["Offset of field: __va_list_tag::fp_offset"]
909 [::std::mem::offset_of!(__va_list_tag, fp_offset) - 4usize];
910 ["Offset of field: __va_list_tag::overflow_arg_area"]
911 [::std::mem::offset_of!(__va_list_tag, overflow_arg_area) - 8usize];
912 ["Offset of field: __va_list_tag::reg_save_area"]
913 [::std::mem::offset_of!(__va_list_tag, reg_save_area) - 16usize];
914};