Skip to content

Commit 20e6a00

Browse files
committed
Update julia_types for gcpreserve_stack in jl_task_t
1 parent 64e402e commit 20e6a00

File tree

1 file changed

+160
-26
lines changed

1 file changed

+160
-26
lines changed

mmtk/src/julia_types.rs

Lines changed: 160 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,9 @@ pub struct std_atomic<_Tp> {
174174
pub _M_i: _Tp,
175175
}
176176
pub type std_atomic_value_type<_Tp> = _Tp;
177+
pub type __uint16_t = ::std::os::raw::c_ushort;
178+
pub type __uint32_t = ::std::os::raw::c_uint;
179+
pub type __uint64_t = ::std::os::raw::c_ulong;
177180
pub type __sig_atomic_t = ::std::os::raw::c_int;
178181
pub type jl_gcframe_t = _jl_gcframe_t;
179182
#[repr(C)]
@@ -187,6 +190,7 @@ const _: () = {
187190
["Alignment of __sigset_t"][::std::mem::align_of::<__sigset_t>() - 8usize];
188191
["Offset of field: __sigset_t::__val"][::std::mem::offset_of!(__sigset_t, __val) - 0usize];
189192
};
193+
pub type sigset_t = __sigset_t;
190194
pub type pthread_t = ::std::os::raw::c_ulong;
191195
#[repr(C)]
192196
#[derive(Debug, Copy, Clone)]
@@ -254,6 +258,133 @@ pub struct _jl_value_t {
254258
_unused: [u8; 0],
255259
}
256260
pub type sig_atomic_t = __sig_atomic_t;
261+
#[repr(C)]
262+
#[derive(Debug, Copy, Clone)]
263+
pub struct stack_t {
264+
pub ss_sp: *mut ::std::os::raw::c_void,
265+
pub ss_flags: ::std::os::raw::c_int,
266+
pub ss_size: usize,
267+
}
268+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
269+
const _: () = {
270+
["Size of stack_t"][::std::mem::size_of::<stack_t>() - 24usize];
271+
["Alignment of stack_t"][::std::mem::align_of::<stack_t>() - 8usize];
272+
["Offset of field: stack_t::ss_sp"][::std::mem::offset_of!(stack_t, ss_sp) - 0usize];
273+
["Offset of field: stack_t::ss_flags"][::std::mem::offset_of!(stack_t, ss_flags) - 8usize];
274+
["Offset of field: stack_t::ss_size"][::std::mem::offset_of!(stack_t, ss_size) - 16usize];
275+
};
276+
pub type greg_t = ::std::os::raw::c_longlong;
277+
pub type gregset_t = [greg_t; 23usize];
278+
#[repr(C)]
279+
#[derive(Debug, Copy, Clone)]
280+
pub struct _libc_fpxreg {
281+
pub significand: [::std::os::raw::c_ushort; 4usize],
282+
pub exponent: ::std::os::raw::c_ushort,
283+
pub __glibc_reserved1: [::std::os::raw::c_ushort; 3usize],
284+
}
285+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
286+
const _: () = {
287+
["Size of _libc_fpxreg"][::std::mem::size_of::<_libc_fpxreg>() - 16usize];
288+
["Alignment of _libc_fpxreg"][::std::mem::align_of::<_libc_fpxreg>() - 2usize];
289+
["Offset of field: _libc_fpxreg::significand"]
290+
[::std::mem::offset_of!(_libc_fpxreg, significand) - 0usize];
291+
["Offset of field: _libc_fpxreg::exponent"]
292+
[::std::mem::offset_of!(_libc_fpxreg, exponent) - 8usize];
293+
["Offset of field: _libc_fpxreg::__glibc_reserved1"]
294+
[::std::mem::offset_of!(_libc_fpxreg, __glibc_reserved1) - 10usize];
295+
};
296+
#[repr(C)]
297+
#[derive(Debug, Copy, Clone)]
298+
pub struct _libc_xmmreg {
299+
pub element: [__uint32_t; 4usize],
300+
}
301+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
302+
const _: () = {
303+
["Size of _libc_xmmreg"][::std::mem::size_of::<_libc_xmmreg>() - 16usize];
304+
["Alignment of _libc_xmmreg"][::std::mem::align_of::<_libc_xmmreg>() - 4usize];
305+
["Offset of field: _libc_xmmreg::element"]
306+
[::std::mem::offset_of!(_libc_xmmreg, element) - 0usize];
307+
};
308+
#[repr(C)]
309+
#[derive(Debug, Copy, Clone)]
310+
pub struct _libc_fpstate {
311+
pub cwd: __uint16_t,
312+
pub swd: __uint16_t,
313+
pub ftw: __uint16_t,
314+
pub fop: __uint16_t,
315+
pub rip: __uint64_t,
316+
pub rdp: __uint64_t,
317+
pub mxcsr: __uint32_t,
318+
pub mxcr_mask: __uint32_t,
319+
pub _st: [_libc_fpxreg; 8usize],
320+
pub _xmm: [_libc_xmmreg; 16usize],
321+
pub __glibc_reserved1: [__uint32_t; 24usize],
322+
}
323+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
324+
const _: () = {
325+
["Size of _libc_fpstate"][::std::mem::size_of::<_libc_fpstate>() - 512usize];
326+
["Alignment of _libc_fpstate"][::std::mem::align_of::<_libc_fpstate>() - 8usize];
327+
["Offset of field: _libc_fpstate::cwd"][::std::mem::offset_of!(_libc_fpstate, cwd) - 0usize];
328+
["Offset of field: _libc_fpstate::swd"][::std::mem::offset_of!(_libc_fpstate, swd) - 2usize];
329+
["Offset of field: _libc_fpstate::ftw"][::std::mem::offset_of!(_libc_fpstate, ftw) - 4usize];
330+
["Offset of field: _libc_fpstate::fop"][::std::mem::offset_of!(_libc_fpstate, fop) - 6usize];
331+
["Offset of field: _libc_fpstate::rip"][::std::mem::offset_of!(_libc_fpstate, rip) - 8usize];
332+
["Offset of field: _libc_fpstate::rdp"][::std::mem::offset_of!(_libc_fpstate, rdp) - 16usize];
333+
["Offset of field: _libc_fpstate::mxcsr"]
334+
[::std::mem::offset_of!(_libc_fpstate, mxcsr) - 24usize];
335+
["Offset of field: _libc_fpstate::mxcr_mask"]
336+
[::std::mem::offset_of!(_libc_fpstate, mxcr_mask) - 28usize];
337+
["Offset of field: _libc_fpstate::_st"][::std::mem::offset_of!(_libc_fpstate, _st) - 32usize];
338+
["Offset of field: _libc_fpstate::_xmm"]
339+
[::std::mem::offset_of!(_libc_fpstate, _xmm) - 160usize];
340+
["Offset of field: _libc_fpstate::__glibc_reserved1"]
341+
[::std::mem::offset_of!(_libc_fpstate, __glibc_reserved1) - 416usize];
342+
};
343+
pub type fpregset_t = *mut _libc_fpstate;
344+
#[repr(C)]
345+
#[derive(Debug, Copy, Clone)]
346+
pub struct mcontext_t {
347+
pub gregs: gregset_t,
348+
pub fpregs: fpregset_t,
349+
pub __reserved1: [::std::os::raw::c_ulonglong; 8usize],
350+
}
351+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
352+
const _: () = {
353+
["Size of mcontext_t"][::std::mem::size_of::<mcontext_t>() - 256usize];
354+
["Alignment of mcontext_t"][::std::mem::align_of::<mcontext_t>() - 8usize];
355+
["Offset of field: mcontext_t::gregs"][::std::mem::offset_of!(mcontext_t, gregs) - 0usize];
356+
["Offset of field: mcontext_t::fpregs"][::std::mem::offset_of!(mcontext_t, fpregs) - 184usize];
357+
["Offset of field: mcontext_t::__reserved1"]
358+
[::std::mem::offset_of!(mcontext_t, __reserved1) - 192usize];
359+
};
360+
#[repr(C)]
361+
#[derive(Debug, Copy, Clone)]
362+
pub struct ucontext_t {
363+
pub uc_flags: ::std::os::raw::c_ulong,
364+
pub uc_link: *mut ucontext_t,
365+
pub uc_stack: stack_t,
366+
pub uc_mcontext: mcontext_t,
367+
pub uc_sigmask: sigset_t,
368+
pub __fpregs_mem: _libc_fpstate,
369+
pub __ssp: [::std::os::raw::c_ulonglong; 4usize],
370+
}
371+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
372+
const _: () = {
373+
["Size of ucontext_t"][::std::mem::size_of::<ucontext_t>() - 968usize];
374+
["Alignment of ucontext_t"][::std::mem::align_of::<ucontext_t>() - 8usize];
375+
["Offset of field: ucontext_t::uc_flags"]
376+
[::std::mem::offset_of!(ucontext_t, uc_flags) - 0usize];
377+
["Offset of field: ucontext_t::uc_link"][::std::mem::offset_of!(ucontext_t, uc_link) - 8usize];
378+
["Offset of field: ucontext_t::uc_stack"]
379+
[::std::mem::offset_of!(ucontext_t, uc_stack) - 16usize];
380+
["Offset of field: ucontext_t::uc_mcontext"]
381+
[::std::mem::offset_of!(ucontext_t, uc_mcontext) - 40usize];
382+
["Offset of field: ucontext_t::uc_sigmask"]
383+
[::std::mem::offset_of!(ucontext_t, uc_sigmask) - 296usize];
384+
["Offset of field: ucontext_t::__fpregs_mem"]
385+
[::std::mem::offset_of!(ucontext_t, __fpregs_mem) - 424usize];
386+
["Offset of field: ucontext_t::__ssp"][::std::mem::offset_of!(ucontext_t, __ssp) - 936usize];
387+
};
257388
pub type jl_value_t = _jl_value_t;
258389
#[repr(C)]
259390
#[repr(align(8))]
@@ -269,15 +400,18 @@ const _: () = {
269400
pub struct jl_gc_tls_states_t {
270401
pub mmtk_mutator: MMTkMutatorContext,
271402
pub malloc_sz_since_last_poll: std_atomic<usize>,
403+
pub ctx_at_the_time_gc_started: ucontext_t,
272404
}
273405
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
274406
const _: () = {
275-
["Size of jl_gc_tls_states_t"][::std::mem::size_of::<jl_gc_tls_states_t>() - 704usize];
407+
["Size of jl_gc_tls_states_t"][::std::mem::size_of::<jl_gc_tls_states_t>() - 1672usize];
276408
["Alignment of jl_gc_tls_states_t"][::std::mem::align_of::<jl_gc_tls_states_t>() - 8usize];
277409
["Offset of field: jl_gc_tls_states_t::mmtk_mutator"]
278410
[::std::mem::offset_of!(jl_gc_tls_states_t, mmtk_mutator) - 0usize];
279411
["Offset of field: jl_gc_tls_states_t::malloc_sz_since_last_poll"]
280412
[::std::mem::offset_of!(jl_gc_tls_states_t, malloc_sz_since_last_poll) - 696usize];
413+
["Offset of field: jl_gc_tls_states_t::ctx_at_the_time_gc_started"]
414+
[::std::mem::offset_of!(jl_gc_tls_states_t, ctx_at_the_time_gc_started) - 704usize];
281415
};
282416
#[repr(C)]
283417
#[derive(Debug, Copy, Clone)]
@@ -541,7 +675,7 @@ pub struct _jl_tls_states_t {
541675
}
542676
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
543677
const _: () = {
544-
["Size of _jl_tls_states_t"][::std::mem::size_of::<_jl_tls_states_t>() - 2560usize];
678+
["Size of _jl_tls_states_t"][::std::mem::size_of::<_jl_tls_states_t>() - 3528usize];
545679
["Alignment of _jl_tls_states_t"][::std::mem::align_of::<_jl_tls_states_t>() - 8usize];
546680
["Offset of field: _jl_tls_states_t::tid"]
547681
[::std::mem::offset_of!(_jl_tls_states_t, tid) - 0usize];
@@ -566,53 +700,53 @@ const _: () = {
566700
["Offset of field: _jl_tls_states_t::gc_tls"]
567701
[::std::mem::offset_of!(_jl_tls_states_t, gc_tls) - 40usize];
568702
["Offset of field: _jl_tls_states_t::gc_tls_common"]
569-
[::std::mem::offset_of!(_jl_tls_states_t, gc_tls_common) - 744usize];
703+
[::std::mem::offset_of!(_jl_tls_states_t, gc_tls_common) - 1712usize];
570704
["Offset of field: _jl_tls_states_t::lazily_freed_mtarraylist_buffers"]
571-
[::std::mem::offset_of!(_jl_tls_states_t, lazily_freed_mtarraylist_buffers) - 2024usize];
705+
[::std::mem::offset_of!(_jl_tls_states_t, lazily_freed_mtarraylist_buffers) - 2992usize];
572706
["Offset of field: _jl_tls_states_t::defer_signal"]
573-
[::std::mem::offset_of!(_jl_tls_states_t, defer_signal) - 2088usize];
707+
[::std::mem::offset_of!(_jl_tls_states_t, defer_signal) - 3056usize];
574708
["Offset of field: _jl_tls_states_t::current_task"]
575-
[::std::mem::offset_of!(_jl_tls_states_t, current_task) - 2096usize];
709+
[::std::mem::offset_of!(_jl_tls_states_t, current_task) - 3064usize];
576710
["Offset of field: _jl_tls_states_t::next_task"]
577-
[::std::mem::offset_of!(_jl_tls_states_t, next_task) - 2104usize];
711+
[::std::mem::offset_of!(_jl_tls_states_t, next_task) - 3072usize];
578712
["Offset of field: _jl_tls_states_t::previous_task"]
579-
[::std::mem::offset_of!(_jl_tls_states_t, previous_task) - 2112usize];
713+
[::std::mem::offset_of!(_jl_tls_states_t, previous_task) - 3080usize];
580714
["Offset of field: _jl_tls_states_t::root_task"]
581-
[::std::mem::offset_of!(_jl_tls_states_t, root_task) - 2120usize];
715+
[::std::mem::offset_of!(_jl_tls_states_t, root_task) - 3088usize];
582716
["Offset of field: _jl_tls_states_t::timing_stack"]
583-
[::std::mem::offset_of!(_jl_tls_states_t, timing_stack) - 2128usize];
717+
[::std::mem::offset_of!(_jl_tls_states_t, timing_stack) - 3096usize];
584718
["Offset of field: _jl_tls_states_t::stackbase"]
585-
[::std::mem::offset_of!(_jl_tls_states_t, stackbase) - 2136usize];
719+
[::std::mem::offset_of!(_jl_tls_states_t, stackbase) - 3104usize];
586720
["Offset of field: _jl_tls_states_t::stacksize"]
587-
[::std::mem::offset_of!(_jl_tls_states_t, stacksize) - 2144usize];
721+
[::std::mem::offset_of!(_jl_tls_states_t, stacksize) - 3112usize];
588722
["Offset of field: _jl_tls_states_t::sig_exception"]
589-
[::std::mem::offset_of!(_jl_tls_states_t, sig_exception) - 2152usize];
723+
[::std::mem::offset_of!(_jl_tls_states_t, sig_exception) - 3120usize];
590724
["Offset of field: _jl_tls_states_t::bt_data"]
591-
[::std::mem::offset_of!(_jl_tls_states_t, bt_data) - 2160usize];
725+
[::std::mem::offset_of!(_jl_tls_states_t, bt_data) - 3128usize];
592726
["Offset of field: _jl_tls_states_t::bt_size"]
593-
[::std::mem::offset_of!(_jl_tls_states_t, bt_size) - 2168usize];
727+
[::std::mem::offset_of!(_jl_tls_states_t, bt_size) - 3136usize];
594728
["Offset of field: _jl_tls_states_t::profiling_bt_buffer"]
595-
[::std::mem::offset_of!(_jl_tls_states_t, profiling_bt_buffer) - 2176usize];
729+
[::std::mem::offset_of!(_jl_tls_states_t, profiling_bt_buffer) - 3144usize];
596730
["Offset of field: _jl_tls_states_t::signal_request"]
597-
[::std::mem::offset_of!(_jl_tls_states_t, signal_request) - 2184usize];
731+
[::std::mem::offset_of!(_jl_tls_states_t, signal_request) - 3152usize];
598732
["Offset of field: _jl_tls_states_t::io_wait"]
599-
[::std::mem::offset_of!(_jl_tls_states_t, io_wait) - 2188usize];
733+
[::std::mem::offset_of!(_jl_tls_states_t, io_wait) - 3156usize];
600734
["Offset of field: _jl_tls_states_t::signal_stack"]
601-
[::std::mem::offset_of!(_jl_tls_states_t, signal_stack) - 2192usize];
735+
[::std::mem::offset_of!(_jl_tls_states_t, signal_stack) - 3160usize];
602736
["Offset of field: _jl_tls_states_t::signal_stack_size"]
603-
[::std::mem::offset_of!(_jl_tls_states_t, signal_stack_size) - 2200usize];
737+
[::std::mem::offset_of!(_jl_tls_states_t, signal_stack_size) - 3168usize];
604738
["Offset of field: _jl_tls_states_t::system_id"]
605-
[::std::mem::offset_of!(_jl_tls_states_t, system_id) - 2208usize];
739+
[::std::mem::offset_of!(_jl_tls_states_t, system_id) - 3176usize];
606740
["Offset of field: _jl_tls_states_t::suspend_count"]
607-
[::std::mem::offset_of!(_jl_tls_states_t, suspend_count) - 2216usize];
741+
[::std::mem::offset_of!(_jl_tls_states_t, suspend_count) - 3184usize];
608742
["Offset of field: _jl_tls_states_t::finalizers"]
609-
[::std::mem::offset_of!(_jl_tls_states_t, finalizers) - 2224usize];
743+
[::std::mem::offset_of!(_jl_tls_states_t, finalizers) - 3192usize];
610744
["Offset of field: _jl_tls_states_t::previous_exception"]
611-
[::std::mem::offset_of!(_jl_tls_states_t, previous_exception) - 2480usize];
745+
[::std::mem::offset_of!(_jl_tls_states_t, previous_exception) - 3448usize];
612746
["Offset of field: _jl_tls_states_t::locks"]
613-
[::std::mem::offset_of!(_jl_tls_states_t, locks) - 2488usize];
747+
[::std::mem::offset_of!(_jl_tls_states_t, locks) - 3456usize];
614748
["Offset of field: _jl_tls_states_t::engine_nqueued"]
615-
[::std::mem::offset_of!(_jl_tls_states_t, engine_nqueued) - 2552usize];
749+
[::std::mem::offset_of!(_jl_tls_states_t, engine_nqueued) - 3520usize];
616750
};
617751
pub type jl_function_t = jl_value_t;
618752
pub type jl_timing_block_t = _jl_timing_block_t;

0 commit comments

Comments
 (0)