%PDF- %PDF-
Direktori : /usr/local/lib/perl5/site_perl/mach/5.32/sys/ |
Current File : //usr/local/lib/perl5/site_perl/mach/5.32/sys/atomic_common.ph |
require '_h2ph_pre.ph'; no warnings qw(redefine misc); unless(defined(&_SYS_ATOMIC_COMMON_H_)) { eval 'sub _SYS_ATOMIC_COMMON_H_ () {1;}' unless defined(&_SYS_ATOMIC_COMMON_H_); unless(defined(&_MACHINE_ATOMIC_H_)) { die("do\ not\ include\ this\ header\,\ use\ machine\/atomic\.h"); } eval 'sub atomic_load_char { my($p) = @_; eval q((*( &volatile \'u_char\' *)($p))); }' unless defined(&atomic_load_char); eval 'sub atomic_load_short { my($p) = @_; eval q((*( &volatile \'u_short\' *)($p))); }' unless defined(&atomic_load_short); eval 'sub atomic_load_int { my($p) = @_; eval q((*( &volatile \'u_int\' *)($p))); }' unless defined(&atomic_load_int); eval 'sub atomic_load_long { my($p) = @_; eval q((*( &volatile \'u_long\' *)($p))); }' unless defined(&atomic_load_long); eval 'sub atomic_load_ptr { my($p) = @_; eval q((*( &volatile &__typeof(*$p) *)($p))); }' unless defined(&atomic_load_ptr); eval 'sub atomic_load_8 { my($p) = @_; eval q((*( &volatile &uint8_t *)($p))); }' unless defined(&atomic_load_8); eval 'sub atomic_load_16 { my($p) = @_; eval q((*( &volatile &uint16_t *)($p))); }' unless defined(&atomic_load_16); eval 'sub atomic_load_32 { my($p) = @_; eval q((*( &volatile &uint32_t *)($p))); }' unless defined(&atomic_load_32); if(defined(&_LP64)) { eval 'sub atomic_load_64 { my($p) = @_; eval q((*( &volatile &uint64_t *)($p))); }' unless defined(&atomic_load_64); } eval 'sub atomic_store_char { my($p, $v) = @_; eval q((*( &volatile \'u_char\' *) = ($v))); }' unless defined(&atomic_store_char); eval 'sub atomic_store_short { my($p, $v) = @_; eval q((*( &volatile \'u_short\' *) = ($v))); }' unless defined(&atomic_store_short); eval 'sub atomic_store_int { my($p, $v) = @_; eval q((*( &volatile \'u_int\' *) = ($v))); }' unless defined(&atomic_store_int); eval 'sub atomic_store_long { my($p, $v) = @_; eval q((*( &volatile \'u_long\' *) = ($v))); }' unless defined(&atomic_store_long); eval 'sub atomic_store_ptr { my($p, $v) = @_; eval q((*( &volatile &__typeof(*$p) *)($p) = ($v))); }' unless defined(&atomic_store_ptr); eval 'sub atomic_store_8 { my($p, $v) = @_; eval q((*( &volatile &uint8_t *)($p) = ( &uint8_t)($v))); }' unless defined(&atomic_store_8); eval 'sub atomic_store_16 { my($p, $v) = @_; eval q((*( &volatile &uint16_t *)($p) = ( &uint16_t)($v))); }' unless defined(&atomic_store_16); eval 'sub atomic_store_32 { my($p, $v) = @_; eval q((*( &volatile &uint32_t *)($p) = ( &uint32_t)($v))); }' unless defined(&atomic_store_32); if(defined(&_LP64)) { eval 'sub atomic_store_64 { my($p, $v) = @_; eval q((*( &volatile &uint64_t *)($p) = ( &uint64_t)($v))); }' unless defined(&atomic_store_64); } eval 'sub atomic_load_consume_ptr { my($p) = @_; eval q((( &__typeof(*$p)) &atomic_load_acq_ptr(( &uintptr_t *)$p))); }' unless defined(&atomic_load_consume_ptr); eval 'sub atomic_interrupt_fence () { eval q( &__compiler_membar()); }' unless defined(&atomic_interrupt_fence); } 1;