am 829367fd: am 46452519: Merge "Refresh android-20 headers/libs"

* commit '829367fdb42839e1c1e7bd8ce25206048d8e0a2f':
  Refresh android-20 headers/libs
This commit is contained in:
Andrew Hsieh
2014-05-12 03:58:05 +00:00
committed by Android Git Automerger
86 changed files with 1209 additions and 1748 deletions

View File

@@ -1,191 +0,0 @@
/* $OpenBSD: ieee.h,v 1.1 2004/02/01 05:09:49 drahn Exp $ */
/* $NetBSD: ieee.h,v 1.2 2001/02/21 17:43:50 bjh21 Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Lawrence Berkeley Laboratory.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)ieee.h 8.1 (Berkeley) 6/11/93
*/
/*
* ieee.h defines the machine-dependent layout of the machine's IEEE
* floating point.
*/
/*
* Define the number of bits in each fraction and exponent.
*
* k k+1
* Note that 1.0 x 2 == 0.1 x 2 and that denorms are represented
*
* (-exp_bias+1)
* as fractions that look like 0.fffff x 2 . This means that
*
* -126
* the number 0.10000 x 2 , for instance, is the same as the normalized
*
* -127 -128
* float 1.0 x 2 . Thus, to represent 2 , we need one leading zero
*
* -129
* in the fraction; to represent 2 , we need two, and so on. This
*
* (-exp_bias-fracbits+1)
* implies that the smallest denormalized number is 2
*
* for whichever format we are talking about: for single precision, for
*
* -126 -149
* instance, we get .00000000000000000000001 x 2 , or 1.0 x 2 , and
*
* -149 == -127 - 23 + 1.
*/
/*
* The ARM has two sets of FP data formats. The FPA supports 32-bit, 64-bit
* and 96-bit IEEE formats, with the words in big-endian order. VFP supports
* 32-bin and 64-bit IEEE formats with the words in the CPU's native byte
* order.
*
* The FPA also has two packed decimal formats, but we ignore them here.
*/
#define SNG_EXPBITS 8
#define SNG_FRACBITS 23
#define DBL_EXPBITS 11
#define DBL_FRACBITS 52
#ifndef __VFP_FP__
#define E80_EXPBITS 15
#define E80_FRACBITS 64
#define EXT_EXPBITS 15
#define EXT_FRACBITS 112
#endif
struct ieee_single {
u_int sng_frac:23;
u_int sng_exponent:8;
u_int sng_sign:1;
};
#ifdef __VFP_FP__
struct ieee_double {
#ifdef __AARCH64EB__
u_int dbl_sign:1;
u_int dbl_exp:11;
u_int dbl_frach:20;
u_int dbl_fracl;
#else /* !__AARCH64EB__ */
u_int dbl_fracl;
u_int dbl_frach:20;
u_int dbl_exp:11;
u_int dbl_sign:1;
#endif /* !__AARCH64EB__ */
};
#else /* !__VFP_FP__ */
struct ieee_double {
u_int dbl_frach:20;
u_int dbl_exp:11;
u_int dbl_sign:1;
u_int dbl_fracl;
};
union ieee_double_u {
double dblu_d;
struct ieee_double dblu_dbl;
};
struct ieee_e80 {
u_int e80_exp:15;
u_int e80_zero:16;
u_int e80_sign:1;
u_int e80_frach:31;
u_int e80_j:1;
u_int e80_fracl;
};
struct ieee_ext {
u_int ext_frach:16;
u_int ext_exp:15;
u_int ext_sign:1;
u_int ext_frachm;
u_int ext_fraclm;
u_int ext_fracl;
};
#endif /* !__VFP_FP__ */
/*
* Floats whose exponent is in [1..INFNAN) (of whatever type) are
* `normal'. Floats whose exponent is INFNAN are either Inf or NaN.
* Floats whose exponent is zero are either zero (iff all fraction
* bits are zero) or subnormal values.
*
* A NaN is a `signalling NaN' if its QUIETNAN bit is clear in its
* high fraction; if the bit is set, it is a `quiet NaN'.
*/
#define SNG_EXP_INFNAN 255
#define DBL_EXP_INFNAN 2047
#ifndef __VFP_FP__
#define E80_EXP_INFNAN 32767
#define EXT_EXP_INFNAN 32767
#endif /* !__VFP_FP__ */
#if 0
#define SNG_QUIETNAN (1 << 22)
#define DBL_QUIETNAN (1 << 19)
#ifndef __VFP_FP__
#define E80_QUIETNAN (1 << 15)
#define EXT_QUIETNAN (1 << 15)
#endif /* !__VFP_FP__ */
#endif
/*
* Exponent biases.
*/
#define SNG_EXP_BIAS 127
#define DBL_EXP_BIAS 1023
#ifndef __VFP_FP__
#define E80_EXP_BIAS 16383
#define EXT_EXP_BIAS 16383
#endif /* !__VFP_FP__ */

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -7,43 +7,120 @@ SHA1Transform
SHA1Update
_Exit
_Unwind_Backtrace
_Unwind_Complete
_Unwind_DeleteException
_Unwind_FindEnclosingFunction
_Unwind_Find_FDE
_Unwind_ForcedUnwind
_Unwind_GetCFA
_Unwind_GetDataRelBase
_Unwind_GetGR
_Unwind_GetIP
_Unwind_GetIPInfo
_Unwind_GetLanguageSpecificData
_Unwind_GetRegionStart
_Unwind_GetTextRelBase
_Unwind_RaiseException
_Unwind_Resume
_Unwind_Resume_or_Rethrow
_Unwind_SetGR
_Unwind_SetIP
_Unwind_VRS_Get
_Unwind_VRS_Pop
_Unwind_VRS_Set
__FD_CLR_chk
__FD_ISSET_chk
__FD_SET_chk
___Unwind_Backtrace
___Unwind_ForcedUnwind
___Unwind_RaiseException
___Unwind_Resume
___Unwind_Resume_or_Rethrow
__adddf3
__addsf3
__aeabi_atexit
__aeabi_cdcmpeq
__aeabi_cdcmple
__aeabi_cdrcmple
__aeabi_d2f
__aeabi_d2iz
__aeabi_dadd
__aeabi_dcmpeq
__aeabi_dcmpge
__aeabi_dcmpgt
__aeabi_dcmple
__aeabi_dcmplt
__aeabi_dcmpun
__aeabi_ddiv
__aeabi_dmul
__aeabi_drsub
__aeabi_dsub
__aeabi_f2d
__aeabi_f2iz
__aeabi_f2uiz
__aeabi_fadd
__aeabi_fcmpun
__aeabi_fdiv
__aeabi_fmul
__aeabi_frsub
__aeabi_fsub
__aeabi_i2d
__aeabi_i2f
__aeabi_idiv
__aeabi_idiv0
__aeabi_idivmod
__aeabi_l2d
__aeabi_l2f
__aeabi_lasr
__aeabi_ldiv0
__aeabi_ldivmod
__aeabi_llsl
__aeabi_llsr
__aeabi_lmul
__aeabi_memclr
__aeabi_memclr4
__aeabi_memclr8
__aeabi_memcpy
__aeabi_memcpy4
__aeabi_memcpy8
__aeabi_memmove
__aeabi_memmove4
__aeabi_memmove8
__aeabi_memset
__aeabi_memset4
__aeabi_memset8
__aeabi_ui2d
__aeabi_ui2f
__aeabi_uidiv
__aeabi_uidivmod
__aeabi_ul2d
__aeabi_ul2f
__aeabi_uldivmod
__aeabi_unwind_cpp_pr0
__aeabi_unwind_cpp_pr1
__aeabi_unwind_cpp_pr2
__android_set_abort_message
__arc4_getbyte
__ashldi3
__ashrdi3
__assert
__assert2
__atomic_cmpxchg
__atomic_dec
__atomic_inc
__atomic_swap
__b64_ntop
__b64_pton
__bionic_clone
__bionic_clone_entry
__bionic_name_mem
__brk
__cmpdf2
__cxa_atexit
__cxa_finalize
__deregister_frame
__deregister_frame_info
__deregister_frame_info_bases
__divdf3
__divdi3
__divsf3
__divsi3
__dn_comp
__dn_count_labels
__dn_skipname
__dorand48
__epoll_pwait
__eqdf2
__errno
__evAddTime
__evCmpTime
@@ -54,29 +131,98 @@ __evSubTime
__evTimeSpec
__evTimeVal
__evUTCTime
__extenddftf2
__exit
__extendsfdf2
__fcntl64
__fgets_chk
__fgetwc_unlock
__findenv
__fixdfsi
__fixsfsi
__fixunssfsi
__floatdidf
__floatdisf
__floatsidf
__floatsisf
__floatundidf
__floatundisf
__floatunsidf
__floatunsisf
__fp_nquery
__fp_query
__frame_state_for
__fpclassify
__fpclassifyd
__fpclassifyf
__fpclassifyl
__fputwc_unlock
__fstatfs64
__futex_syscall3
__futex_syscall4
__futex_wait
__futex_wait_ex
__futex_wake
__futex_wake_ex
__gedf2
__get_h_errno
__get_sp
__get_tls
__getcpu
__getcwd
__getpriority
__gnu_Unwind_Backtrace
__gnu_Unwind_Find_exidx
__gnu_Unwind_ForcedUnwind
__gnu_Unwind_RaiseException
__gnu_Unwind_Restore_VFP
__gnu_Unwind_Restore_VFP_D
__gnu_Unwind_Restore_VFP_D_16_to_31
__gnu_Unwind_Restore_WMMXC
__gnu_Unwind_Restore_WMMXD
__gnu_Unwind_Resume
__gnu_Unwind_Resume_or_Rethrow
__gnu_Unwind_Save_VFP
__gnu_Unwind_Save_VFP_D
__gnu_Unwind_Save_VFP_D_16_to_31
__gnu_Unwind_Save_WMMXC
__gnu_Unwind_Save_WMMXD
__gnu_ldivmod_helper
__gnu_uldivmod_helper
__gnu_unwind_execute
__gnu_unwind_frame
__gtdf2
__hostalias
__ioctl
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnan
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__ledf2
__libc_current_sigrtmax
__libc_current_sigrtmin
__libc_fini
__libc_init
__llseek
__loc_aton
__loc_ntoa
__lshrdi3
__ltdf2
__memcmp16
__memcpy_chk
__memmove_chk
__memset_chk
__mmap2
__muldf3
__muldi3
__mulsf3
__nedf2
__ns_format_ttl
__ns_get16
__ns_get32
@@ -107,7 +253,9 @@ __ns_samename
__ns_skiprr
__ns_sprintrr
__ns_sprintrrf
__open
__open_2
__openat
__openat_2
__p_cdname
__p_cdnname
@@ -122,20 +270,18 @@ __p_section
__p_sockun
__p_time
__p_type
__popcountdi2
__popcountsi2
__ppoll
__pselect6
__pthread_cleanup_pop
__pthread_cleanup_push
__pthread_gettid
__ptrace
__putlong
__putshort
__read_chk
__reboot
__recvfrom_chk
__register_frame
__register_frame_info
__register_frame_info_bases
__register_frame_info_table
__register_frame_info_table_bases
__register_frame_table
__res_close
__res_dnok
__res_get_nibblesuffix
@@ -171,18 +317,27 @@ __res_send_setqhook
__res_send_setrhook
__res_setservers
__res_vinit
__restore_core_regs
__rt_sigaction
__rt_sigpending
__rt_sigprocmask
__rt_sigsuspend
__rt_sigtimedwait
__sched_cpualloc
__sched_cpucount
__sched_cpufree
__sched_getaffinity
__sclose
__set_errno
__set_tid_address
__set_tls
__sflags
__sflush
__sflush_locked
__sfp
__sfp_handle_exceptions
__sfvwrite
__sigaction
__sinit
__slbexpand
__smakebuf
__snprintf_chk
__sprintf_chk
@@ -191,6 +346,7 @@ __srefill
__srget
__sseek
__stack_chk_fail
__statfs64
__stpcpy_chk
__stpncpy_chk
__stpncpy_chk2
@@ -204,6 +360,8 @@ __strncat_chk
__strncpy_chk
__strncpy_chk2
__strrchr_chk
__subdf3
__subsf3
__svfscanf
__swbuf
__swhatbuf
@@ -212,6 +370,7 @@ __swsetup
__sym_ntop
__sym_ntos
__sym_ston
__syslog
__system_properties_init
__system_property_add
__system_property_area_init
@@ -228,11 +387,25 @@ __system_property_set
__system_property_set_filename
__system_property_update
__system_property_wait_any
__trunctfdf2
__timer_create
__timer_delete
__timer_getoverrun
__timer_gettime
__timer_settime
__truncdfsf2
__udivdi3
__udivsi3
__umask_chk
__ungetwc
__unorddf2
__unordsf2
__vfprintf
__vfwprintf
__vfwscanf
__vsnprintf_chk
__vsprintf_chk
__wait4
__waitid
_cleanup
_exit
_exit_with_stack_teardown
@@ -244,6 +417,8 @@ _resolv_flush_cache_for_net
_resolv_set_nameservers_for_net
_setjmp
_thread_created_hook
_tolower
_toupper
abort
abs
accept
@@ -269,6 +444,8 @@ asctime64
asctime64_r
asctime_r
asprintf
at_quick_exit
atexit
atof
atoi
atol
@@ -283,6 +460,7 @@ bsd_signal
bsearch
btowc
bzero
cacheflush
calloc
capget
capset
@@ -421,7 +599,6 @@ fputws
fread
free
freeaddrinfo
freedtoa
freelocale
fremovexattr
freopen
@@ -567,8 +744,20 @@ isatty
isblank
iscntrl
isdigit
isfinite
isfinitef
isfinitel
isgraph
isinf
isinff
isinfl
islower
isnan
isnanf
isnanl
isnormal
isnormalf
isnormall
isprint
ispunct
issetugid
@@ -576,6 +765,7 @@ isspace
isupper
iswalnum
iswalpha
iswblank
iswcntrl
iswctype
iswdigit
@@ -627,8 +817,10 @@ malloc_usable_size
mbrlen
mbrtowc
mbsinit
mbsnrtowcs
mbsrtowcs
mbstowcs
mbtowc
memalign
memccpy
memchr
@@ -638,6 +830,7 @@ memmem
memmove
memrchr
memset
memswap
mincore
mkdir
mkdirat
@@ -697,7 +890,6 @@ prctl
pread
pread64
printf
prlimit
prlimit64
pselect
psiginfo
@@ -710,6 +902,7 @@ pthread_attr_getschedparam
pthread_attr_getschedpolicy
pthread_attr_getscope
pthread_attr_getstack
pthread_attr_getstackaddr
pthread_attr_getstacksize
pthread_attr_init
pthread_attr_setdetachstate
@@ -718,12 +911,17 @@ pthread_attr_setschedparam
pthread_attr_setschedpolicy
pthread_attr_setscope
pthread_attr_setstack
pthread_attr_setstackaddr
pthread_attr_setstacksize
pthread_cond_broadcast
pthread_cond_destroy
pthread_cond_init
pthread_cond_signal
pthread_cond_timedwait
pthread_cond_timedwait_monotonic
pthread_cond_timedwait_monotonic_np
pthread_cond_timedwait_relative_np
pthread_cond_timeout_np
pthread_cond_wait
pthread_condattr_destroy
pthread_condattr_getclock
@@ -746,6 +944,7 @@ pthread_kill
pthread_mutex_destroy
pthread_mutex_init
pthread_mutex_lock
pthread_mutex_lock_timeout_np
pthread_mutex_timedlock
pthread_mutex_trylock
pthread_mutex_unlock
@@ -791,6 +990,7 @@ pvalloc
pwrite
pwrite64
qsort
quick_exit
raise
read
readahead
@@ -822,6 +1022,7 @@ res_query
res_search
res_setmark
res_setnetid
restore_core_regs
rewind
rewinddir
rmdir
@@ -967,6 +1168,7 @@ strtol
strtold
strtoll
strtoq
strtotimeval
strtoul
strtoull
strtoumax
@@ -1056,17 +1258,20 @@ vfork
vfprintf
vfscanf
vfwprintf
vfwscanf
vprintf
vscanf
vsnprintf
vsprintf
vsscanf
vswprintf
vswscanf
vsyslog
vsyslog_r
vwarn
vwarnx
vwprintf
vwscanf
wait
wait3
wait4
@@ -1094,16 +1299,23 @@ wcsncat
wcsncmp
wcsncpy
wcsnlen
wcsnrtombs
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstof
wcstoimax
wcstok
wcstol
wcstold
wcstoll
wcstombs
wcstoul
wcstoull
wcstoumax
wcswcs
wcswidth
wcsxfrm

View File

@@ -4,6 +4,8 @@ _C_toupper_
__atexit
__atexit_invalid
__bionic_brk
__bionic_libgcc_compat_symbols
__dso_handle
__isthreaded
__libc_malloc_default_dispatch
__libc_malloc_dispatch
@@ -12,6 +14,8 @@ __p_class_syms
__p_key_syms
__p_rcode_syms
__p_type_syms
__page_shift
__page_size
__popcount_tab
__progname
__rand48_add

View File

@@ -1,6 +1,8 @@
android_dlopen_ext
android_get_LD_LIBRARY_PATH
android_update_LD_LIBRARY_PATH
dl_iterate_phdr
dl_unwind_find_exidx
dladdr
dlclose
dlerror

View File

@@ -1,53 +1,46 @@
__addtf3
__divtf3
__eqtf2
__aeabi_cfcmpeq
__aeabi_cfcmple
__aeabi_cfrcmple
__aeabi_d2lz
__aeabi_d2uiz
__aeabi_d2ulz
__aeabi_f2lz
__aeabi_f2ulz
__aeabi_fcmpeq
__aeabi_fcmpge
__aeabi_fcmpgt
__aeabi_fcmple
__aeabi_fcmplt
__cmpsf2
__eqsf2
__exp__D
__extendsftf2
__fixtfdi
__fixtfsi
__floatsitf
__fpclassifyd
__fpclassifyf
__fpclassifyl
__getf2
__gttf2
__fixdfdi
__fixsfdi
__fixunsdfdi
__fixunsdfsi
__fixunssfdi
__gesf2
__gtsf2
__ieee754_rem_pio2
__ieee754_rem_pio2f
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__kernel_cos
__kernel_cosdf
__kernel_cosl
__kernel_rem_pio2
__kernel_sin
__kernel_sindf
__kernel_sinl
__kernel_tan
__kernel_tandf
__kernel_tanl
__ldexp_cexp
__ldexp_cexpf
__ldexp_exp
__ldexp_expf
__letf2
__lesf2
__log__D
__lttf2
__multf3
__netf2
__ltsf2
__nesf2
__signbit
__signbitf
__signbitl
__subtf3
__trunctfsf2
_scan_nan
acos
acosf
@@ -72,6 +65,7 @@ atanhl
atanl
cabs
cabsf
cabsl
carg
cargf
cbrt
@@ -101,6 +95,7 @@ coshl
cosl
cproj
cprojf
cprojl
creal
crealf
csin
@@ -109,6 +104,7 @@ csinh
csinhf
csqrt
csqrtf
csqrtl
ctan
ctanf
ctanh
@@ -180,9 +176,14 @@ hypotl
ilogb
ilogbf
ilogbl
isinf
isnan
isnanf
imprecise_coshl
imprecise_erfcl
imprecise_erfl
imprecise_lgammal
imprecise_powl
imprecise_sinhl
imprecise_tanhl
imprecise_tgammal
j0
j0f
j1

View File

@@ -1,25 +1,2 @@
_ItL_aT
_ItL_atanhi
_ItL_atanlo
_ItL_pS0
_ItL_pS1
_ItL_pS2
_ItL_pS3
_ItL_pS4
_ItL_pS5
_ItL_pS6
_ItL_pS7
_ItL_pS8
_ItL_pS9
_ItL_pi_lo
_ItL_qS1
_ItL_qS2
_ItL_qS3
_ItL_qS4
_ItL_qS5
_ItL_qS6
_ItL_qS7
_ItL_qS8
_ItL_qS9
__fe_dfl_env
signgam

View File

@@ -1,191 +0,0 @@
/* $OpenBSD: ieee.h,v 1.1 2004/02/01 05:09:49 drahn Exp $ */
/* $NetBSD: ieee.h,v 1.2 2001/02/21 17:43:50 bjh21 Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Lawrence Berkeley Laboratory.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)ieee.h 8.1 (Berkeley) 6/11/93
*/
/*
* ieee.h defines the machine-dependent layout of the machine's IEEE
* floating point.
*/
/*
* Define the number of bits in each fraction and exponent.
*
* k k+1
* Note that 1.0 x 2 == 0.1 x 2 and that denorms are represented
*
* (-exp_bias+1)
* as fractions that look like 0.fffff x 2 . This means that
*
* -126
* the number 0.10000 x 2 , for instance, is the same as the normalized
*
* -127 -128
* float 1.0 x 2 . Thus, to represent 2 , we need one leading zero
*
* -129
* in the fraction; to represent 2 , we need two, and so on. This
*
* (-exp_bias-fracbits+1)
* implies that the smallest denormalized number is 2
*
* for whichever format we are talking about: for single precision, for
*
* -126 -149
* instance, we get .00000000000000000000001 x 2 , or 1.0 x 2 , and
*
* -149 == -127 - 23 + 1.
*/
/*
* The ARM has two sets of FP data formats. The FPA supports 32-bit, 64-bit
* and 96-bit IEEE formats, with the words in big-endian order. VFP supports
* 32-bin and 64-bit IEEE formats with the words in the CPU's native byte
* order.
*
* The FPA also has two packed decimal formats, but we ignore them here.
*/
#define SNG_EXPBITS 8
#define SNG_FRACBITS 23
#define DBL_EXPBITS 11
#define DBL_FRACBITS 52
#ifndef __VFP_FP__
#define E80_EXPBITS 15
#define E80_FRACBITS 64
#define EXT_EXPBITS 15
#define EXT_FRACBITS 112
#endif
struct ieee_single {
u_int sng_frac:23;
u_int sng_exponent:8;
u_int sng_sign:1;
};
#ifdef __VFP_FP__
struct ieee_double {
#ifdef __AARCH64EB__
u_int dbl_sign:1;
u_int dbl_exp:11;
u_int dbl_frach:20;
u_int dbl_fracl;
#else /* !__AARCH64EB__ */
u_int dbl_fracl;
u_int dbl_frach:20;
u_int dbl_exp:11;
u_int dbl_sign:1;
#endif /* !__AARCH64EB__ */
};
#else /* !__VFP_FP__ */
struct ieee_double {
u_int dbl_frach:20;
u_int dbl_exp:11;
u_int dbl_sign:1;
u_int dbl_fracl;
};
union ieee_double_u {
double dblu_d;
struct ieee_double dblu_dbl;
};
struct ieee_e80 {
u_int e80_exp:15;
u_int e80_zero:16;
u_int e80_sign:1;
u_int e80_frach:31;
u_int e80_j:1;
u_int e80_fracl;
};
struct ieee_ext {
u_int ext_frach:16;
u_int ext_exp:15;
u_int ext_sign:1;
u_int ext_frachm;
u_int ext_fraclm;
u_int ext_fracl;
};
#endif /* !__VFP_FP__ */
/*
* Floats whose exponent is in [1..INFNAN) (of whatever type) are
* `normal'. Floats whose exponent is INFNAN are either Inf or NaN.
* Floats whose exponent is zero are either zero (iff all fraction
* bits are zero) or subnormal values.
*
* A NaN is a `signalling NaN' if its QUIETNAN bit is clear in its
* high fraction; if the bit is set, it is a `quiet NaN'.
*/
#define SNG_EXP_INFNAN 255
#define DBL_EXP_INFNAN 2047
#ifndef __VFP_FP__
#define E80_EXP_INFNAN 32767
#define EXT_EXP_INFNAN 32767
#endif /* !__VFP_FP__ */
#if 0
#define SNG_QUIETNAN (1 << 22)
#define DBL_QUIETNAN (1 << 19)
#ifndef __VFP_FP__
#define E80_QUIETNAN (1 << 15)
#define EXT_QUIETNAN (1 << 15)
#endif /* !__VFP_FP__ */
#endif
/*
* Exponent biases.
*/
#define SNG_EXP_BIAS 127
#define DBL_EXP_BIAS 1023
#ifndef __VFP_FP__
#define E80_EXP_BIAS 16383
#define EXT_EXP_BIAS 16383
#endif /* !__VFP_FP__ */

View File

@@ -27,6 +27,7 @@ _Unwind_SetIP
__FD_CLR_chk
__FD_ISSET_chk
__FD_SET_chk
__android_fatal
__arc4_getbyte
__assert
__assert2
@@ -54,11 +55,16 @@ __evSubTime
__evTimeSpec
__evTimeVal
__evUTCTime
__extenddftf2
__fgets_chk
__fgetwc_unlock
__findenv
__fp_nquery
__fp_query
__fpclassify
__fpclassifyd
__fpclassifyf
__fpclassifyl
__fputwc_unlock
__frame_state_for
__futex_syscall3
__futex_syscall4
@@ -69,6 +75,20 @@ __futex_wake_ex
__get_h_errno
__get_sp
__hostalias
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnan
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__libc_current_sigrtmax
__libc_current_sigrtmin
__libc_fini
__libc_init
__loc_aton
@@ -77,6 +97,7 @@ __memcmp16
__memcpy_chk
__memmove_chk
__memset_chk
__multf3
__ns_format_ttl
__ns_get16
__ns_get32
@@ -181,8 +202,8 @@ __sflush
__sflush_locked
__sfp
__sfp_handle_exceptions
__sfvwrite
__sinit
__slbexpand
__smakebuf
__snprintf_chk
__sprintf_chk
@@ -228,9 +249,11 @@ __system_property_set
__system_property_set_filename
__system_property_update
__system_property_wait_any
__trunctfdf2
__umask_chk
__ungetwc
__vfprintf
__vfwprintf
__vfwscanf
__vsnprintf_chk
__vsprintf_chk
_cleanup
@@ -244,6 +267,8 @@ _resolv_flush_cache_for_net
_resolv_set_nameservers_for_net
_setjmp
_thread_created_hook
_tolower
_toupper
abort
abs
accept
@@ -265,10 +290,9 @@ arc4random_buf
arc4random_stir
arc4random_uniform
asctime
asctime64
asctime64_r
asctime_r
asprintf
at_quick_exit
atof
atoi
atol
@@ -313,8 +337,6 @@ connect
creat
creat64
ctime
ctime64
ctime64_r
ctime_r
daemon
delete_module
@@ -421,7 +443,6 @@ fputws
fread
free
freeaddrinfo
freedtoa
freelocale
fremovexattr
freopen
@@ -534,8 +555,6 @@ getwc
getwchar
getxattr
gmtime
gmtime64
gmtime64_r
gmtime_r
herror
hstrerror
@@ -567,8 +586,20 @@ isatty
isblank
iscntrl
isdigit
isfinite
isfinitef
isfinitel
isgraph
isinf
isinff
isinfl
islower
isnan
isnanf
isnanl
isnormal
isnormalf
isnormall
isprint
ispunct
issetugid
@@ -576,6 +607,7 @@ isspace
isupper
iswalnum
iswalpha
iswblank
iswcntrl
iswctype
iswdigit
@@ -606,8 +638,6 @@ lldiv
llistxattr
localeconv
localtime
localtime64
localtime64_r
localtime_r
localtime_tz
longjmp
@@ -627,8 +657,10 @@ malloc_usable_size
mbrlen
mbrtowc
mbsinit
mbsnrtowcs
mbsrtowcs
mbstowcs
mbtowc
memalign
memccpy
memchr
@@ -650,7 +682,6 @@ mkstemp64
mkstemps
mktemp
mktime
mktime64
mktime_tz
mlock
mlockall
@@ -791,6 +822,7 @@ pvalloc
pwrite
pwrite64
qsort
quick_exit
raise
read
readahead
@@ -949,8 +981,6 @@ strncmp
strncpy
strndup
strnlen
strntoimax
strntoumax
strpbrk
strptime
strrchr
@@ -1003,9 +1033,7 @@ tgkill
time
time2posix
timegm
timegm64
timelocal
timelocal64
timer_create
timer_delete
timer_getoverrun
@@ -1056,17 +1084,20 @@ vfork
vfprintf
vfscanf
vfwprintf
vfwscanf
vprintf
vscanf
vsnprintf
vsprintf
vsscanf
vswprintf
vswscanf
vsyslog
vsyslog_r
vwarn
vwarnx
vwprintf
vwscanf
wait
wait3
wait4
@@ -1094,16 +1125,23 @@ wcsncat
wcsncmp
wcsncpy
wcsnlen
wcsnrtombs
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstof
wcstoimax
wcstok
wcstol
wcstold
wcstoll
wcstombs
wcstoul
wcstoull
wcstoumax
wcswcs
wcswidth
wcsxfrm

View File

@@ -3,7 +3,6 @@ _C_tolower_
_C_toupper_
__atexit
__atexit_invalid
__bionic_brk
__isthreaded
__libc_malloc_default_dispatch
__libc_malloc_dispatch

View File

@@ -1,3 +1,4 @@
android_dlopen_ext
android_get_LD_LIBRARY_PATH
android_update_LD_LIBRARY_PATH
dl_iterate_phdr

View File

@@ -2,28 +2,15 @@ __addtf3
__divtf3
__eqtf2
__exp__D
__extenddftf2
__extendsftf2
__fixtfdi
__fixtfsi
__floatsitf
__fpclassifyd
__fpclassifyf
__fpclassifyl
__getf2
__gttf2
__ieee754_rem_pio2
__ieee754_rem_pio2f
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__kernel_cos
__kernel_cosdf
__kernel_cosl
@@ -41,12 +28,12 @@ __ldexp_expf
__letf2
__log__D
__lttf2
__multf3
__netf2
__signbit
__signbitf
__signbitl
__subtf3
__trunctfdf2
__trunctfsf2
_scan_nan
acos
@@ -180,9 +167,14 @@ hypotl
ilogb
ilogbf
ilogbl
isinf
isnan
isnanf
imprecise_coshl
imprecise_erfcl
imprecise_erfl
imprecise_lgammal
imprecise_powl
imprecise_sinhl
imprecise_tanhl
imprecise_tgammal
j0
j0f
j1

View File

@@ -27,6 +27,7 @@ struct siginfo;
#define __ARCH_SI_PREAMBLE_SIZE (3 * sizeof(int))
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#ifdef __LP64__
#undef __ARCH_SI_PREAMBLE_SIZE
#define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
#endif
#include <asm-generic/siginfo.h>

View File

@@ -1,169 +0,0 @@
/* $OpenBSD: ieee.h,v 1.4 2010/01/23 19:11:21 miod Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Lawrence Berkeley Laboratory.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)ieee.h 8.1 (Berkeley) 6/11/93
*/
/*
* ieee.h defines the machine-dependent layout of the machine's IEEE
* floating point. It does *not* define (yet?) any of the rounding
* mode bits, exceptions, and so forth.
*/
/*
* Define the number of bits in each fraction and exponent.
*
* k k+1
* Note that 1.0 x 2 == 0.1 x 2 and that denorms are represented
*
* (-exp_bias+1)
* as fractions that look like 0.fffff x 2 . This means that
*
* -126
* the number 0.10000 x 2 , for instance, is the same as the normalized
*
* -127 -128
* float 1.0 x 2 . Thus, to represent 2 , we need one leading zero
*
* -129
* in the fraction; to represent 2 , we need two, and so on. This
*
* (-exp_bias-fracbits+1)
* implies that the smallest denormalized number is 2
*
* for whichever format we are talking about: for single precision, for
*
* -126 -149
* instance, we get .00000000000000000000001 x 2 , or 1.0 x 2 , and
*
* -149 == -127 - 23 + 1.
*/
#define SNG_EXPBITS 8
#define SNG_FRACBITS 23
#define DBL_EXPBITS 11
#define DBL_FRACHBITS 20
#define DBL_FRACLBITS 32
#define DBL_FRACBITS 52
#define EXT_EXPBITS 15
#define EXT_FRACHBITS 16
#define EXT_FRACHMBITS 32
#define EXT_FRACLMBITS 32
#define EXT_FRACLBITS 32
#define EXT_FRACBITS 112
#define EXT_IMPLICIT_NBIT
#define EXT_TO_ARRAY32(p, a) do { \
(a)[0] = (uint32_t)(p)->ext_fracl; \
(a)[1] = (uint32_t)(p)->ext_fraclm; \
(a)[2] = (uint32_t)(p)->ext_frachm; \
(a)[3] = (uint32_t)(p)->ext_frach; \
} while(0)
struct ieee_single {
#ifdef __MIPSEB__
u_int sng_sign:1;
u_int sng_exp:8;
u_int sng_frac:23;
#else
u_int sng_frac:23;
u_int sng_exp:8;
u_int sng_sign:1;
#endif
};
struct ieee_double {
#ifdef __MIPSEB__
u_int dbl_sign:1;
u_int dbl_exp:11;
u_int dbl_frach:20;
u_int dbl_fracl;
#else
u_int dbl_fracl;
u_int dbl_frach:20;
u_int dbl_exp:11;
u_int dbl_sign:1;
#endif
};
struct ieee_ext {
#ifdef __MIPSEB__
u_int ext_sign:1;
u_int ext_exp:15;
u_int ext_frach:16;
u_int ext_frachm;
u_int ext_fraclm;
u_int ext_fracl;
#else
u_int ext_fracl;
u_int ext_fraclm;
u_int ext_frachm;
u_int ext_frach:16;
u_int ext_exp:15;
u_int ext_sign:1;
#endif
};
/*
* Floats whose exponent is in [1..INFNAN) (of whatever type) are
* `normal'. Floats whose exponent is INFNAN are either Inf or NaN.
* Floats whose exponent is zero are either zero (iff all fraction
* bits are zero) or subnormal values.
*
* A NaN is a `signalling NaN' if its QUIETNAN bit is clear in its
* high fraction; if the bit is set, it is a `quiet NaN'.
*/
#define SNG_EXP_INFNAN 255
#define DBL_EXP_INFNAN 2047
#define EXT_EXP_INFNAN 32767
#if 0
#define SNG_QUIETNAN (1 << 22)
#define DBL_QUIETNAN (1 << 19)
#define EXT_QUIETNAN (1 << 15)
#endif
/*
* Exponent biases.
*/
#define SNG_EXP_BIAS 127
#define DBL_EXP_BIAS 1023
#define EXT_EXP_BIAS 16383

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -27,8 +27,8 @@ _Unwind_SetIP
__FD_CLR_chk
__FD_ISSET_chk
__FD_SET_chk
__android_fatal
__arc4_getbyte
__ashlti3
__assert
__assert2
__b64_ntop
@@ -36,15 +36,18 @@ __b64_pton
__bionic_clone
__bionic_clone_entry
__bionic_name_mem
__brk
__cxa_atexit
__cxa_finalize
__deregister_frame
__deregister_frame_info
__deregister_frame_info_bases
__divdi3
__dn_comp
__dn_count_labels
__dn_skipname
__dorand48
__epoll_pwait
__errno
__evAddTime
__evCmpTime
@@ -55,12 +58,20 @@ __evSubTime
__evTimeSpec
__evTimeVal
__evUTCTime
__extenddftf2
__exit
__fcntl64
__fgets_chk
__fgetwc_unlock
__findenv
__fp_nquery
__fp_query
__fpclassify
__fpclassifyd
__fpclassifyf
__fpclassifyl
__fputwc_unlock
__frame_state_for
__fstatfs64
__futex_syscall3
__futex_syscall4
__futex_wait
@@ -69,18 +80,37 @@ __futex_wake
__futex_wake_ex
__get_h_errno
__get_sp
__get_tls
__getcpu
__getcwd
__getpriority
__hostalias
__ioctl
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnan
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__libc_current_sigrtmax
__libc_current_sigrtmin
__libc_fini
__libc_init
__llseek
__loc_aton
__loc_ntoa
__lshrti3
__make_dp
__make_tp
__memcmp16
__memcpy_chk
__memmove_chk
__memset_chk
__mmap2
__moddi3
__ns_format_ttl
__ns_get16
__ns_get32
@@ -111,7 +141,9 @@ __ns_samename
__ns_skiprr
__ns_sprintrr
__ns_sprintrrf
__open
__open_2
__openat
__openat_2
__p_cdname
__p_cdnname
@@ -126,15 +158,17 @@ __p_section
__p_sockun
__p_time
__p_type
__pack_d
__pack_t
__popcountdi2
__popcountsi2
__ppoll
__pselect6
__pthread_cleanup_pop
__pthread_cleanup_push
__pthread_gettid
__ptrace
__putlong
__putshort
__read_chk
__reboot
__recvfrom_chk
__register_frame
__register_frame_info
@@ -177,17 +211,27 @@ __res_send_setqhook
__res_send_setrhook
__res_setservers
__res_vinit
__rt_sigaction
__rt_sigpending
__rt_sigprocmask
__rt_sigsuspend
__rt_sigtimedwait
__sched_cpualloc
__sched_cpucount
__sched_cpufree
__sched_getaffinity
__sclose
__set_errno
__set_thread_area
__set_tid_address
__set_tls
__sflags
__sflush
__sflush_locked
__sfp
__sfvwrite
__sigaction
__sinit
__slbexpand
__smakebuf
__snprintf_chk
__sprintf_chk
@@ -196,6 +240,7 @@ __srefill
__srget
__sseek
__stack_chk_fail
__statfs64
__stpcpy_chk
__stpncpy_chk
__stpncpy_chk2
@@ -217,6 +262,7 @@ __swsetup
__sym_ntop
__sym_ntos
__sym_ston
__syslog
__system_properties_init
__system_property_add
__system_property_area_init
@@ -233,13 +279,22 @@ __system_property_set
__system_property_set_filename
__system_property_update
__system_property_wait_any
__trunctfdf2
__timer_create
__timer_delete
__timer_getoverrun
__timer_gettime
__timer_settime
__udivdi3
__umask_chk
__unpack_d
__unpack_t
__umoddi3
__ungetwc
__vfprintf
__vfwprintf
__vfwscanf
__vsnprintf_chk
__vsprintf_chk
__wait4
__waitid
_cleanup
_exit
_exit_with_stack_teardown
@@ -248,10 +303,14 @@ _fwalk
_getlong
_getshort
_longjmp
_memset16
_memset32
_resolv_flush_cache_for_net
_resolv_set_nameservers_for_net
_setjmp
_thread_created_hook
_tolower
_toupper
abort
abs
accept
@@ -277,6 +336,7 @@ asctime64
asctime64_r
asctime_r
asprintf
at_quick_exit
atof
atoi
atol
@@ -291,6 +351,7 @@ bsd_signal
bsearch
btowc
bzero
cacheflush
calloc
capget
capset
@@ -429,7 +490,6 @@ fputws
fread
free
freeaddrinfo
freedtoa
freelocale
fremovexattr
freopen
@@ -575,8 +635,20 @@ isatty
isblank
iscntrl
isdigit
isfinite
isfinitef
isfinitel
isgraph
isinf
isinff
isinfl
islower
isnan
isnanf
isnanl
isnormal
isnormalf
isnormall
isprint
ispunct
issetugid
@@ -584,6 +656,7 @@ isspace
isupper
iswalnum
iswalpha
iswblank
iswcntrl
iswctype
iswdigit
@@ -635,8 +708,10 @@ malloc_usable_size
mbrlen
mbrtowc
mbsinit
mbsnrtowcs
mbsrtowcs
mbstowcs
mbtowc
memalign
memccpy
memchr
@@ -646,6 +721,7 @@ memmem
memmove
memrchr
memset
memswap
mincore
mkdir
mkdirat
@@ -705,7 +781,6 @@ prctl
pread
pread64
printf
prlimit
prlimit64
pselect
psiginfo
@@ -718,6 +793,7 @@ pthread_attr_getschedparam
pthread_attr_getschedpolicy
pthread_attr_getscope
pthread_attr_getstack
pthread_attr_getstackaddr
pthread_attr_getstacksize
pthread_attr_init
pthread_attr_setdetachstate
@@ -726,12 +802,17 @@ pthread_attr_setschedparam
pthread_attr_setschedpolicy
pthread_attr_setscope
pthread_attr_setstack
pthread_attr_setstackaddr
pthread_attr_setstacksize
pthread_cond_broadcast
pthread_cond_destroy
pthread_cond_init
pthread_cond_signal
pthread_cond_timedwait
pthread_cond_timedwait_monotonic
pthread_cond_timedwait_monotonic_np
pthread_cond_timedwait_relative_np
pthread_cond_timeout_np
pthread_cond_wait
pthread_condattr_destroy
pthread_condattr_getclock
@@ -754,6 +835,7 @@ pthread_kill
pthread_mutex_destroy
pthread_mutex_init
pthread_mutex_lock
pthread_mutex_lock_timeout_np
pthread_mutex_timedlock
pthread_mutex_trylock
pthread_mutex_unlock
@@ -799,6 +881,7 @@ pvalloc
pwrite
pwrite64
qsort
quick_exit
raise
read
readahead
@@ -975,6 +1058,7 @@ strtol
strtold
strtoll
strtoq
strtotimeval
strtoul
strtoull
strtoumax
@@ -1064,17 +1148,20 @@ vfork
vfprintf
vfscanf
vfwprintf
vfwscanf
vprintf
vscanf
vsnprintf
vsprintf
vsscanf
vswprintf
vswscanf
vsyslog
vsyslog_r
vwarn
vwarnx
vwprintf
vwscanf
wait
wait3
wait4
@@ -1102,16 +1189,23 @@ wcsncat
wcsncmp
wcsncpy
wcsnlen
wcsnrtombs
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstof
wcstoimax
wcstok
wcstol
wcstold
wcstoll
wcstombs
wcstoul
wcstoull
wcstoumax
wcswcs
wcswidth
wcsxfrm

View File

@@ -12,6 +12,8 @@ __p_class_syms
__p_key_syms
__p_rcode_syms
__p_type_syms
__page_shift
__page_size
__popcount_tab
__progname
__rand48_add

View File

@@ -1,3 +1,4 @@
android_dlopen_ext
android_get_LD_LIBRARY_PATH
android_update_LD_LIBRARY_PATH
dl_iterate_phdr

View File

@@ -1,71 +1,25 @@
__addtf3
__ashlti3
__divtf3
__eqtf2
__exp__D
__extenddftf2
__extendsftf2
__fixtfdi
__fixtfsi
__fixunstfdi
__fixunstfsi
__floatsitf
__floatunditf
__floatunsitf
__fpclassifyd
__fpclassifyf
__fpclassifyl
__fpcmp_parts_t
__getf2
__gttf2
__fixdfdi
__fixsfdi
__fixunsdfdi
__fixunssfdi
__ieee754_rem_pio2
__ieee754_rem_pio2f
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__kernel_cos
__kernel_cosdf
__kernel_cosl
__kernel_rem_pio2
__kernel_sin
__kernel_sindf
__kernel_sinl
__kernel_tan
__kernel_tandf
__kernel_tanl
__ldexp_cexp
__ldexp_cexpf
__ldexp_exp
__ldexp_expf
__letf2
__log__D
__lshrti3
__lttf2
__make_dp
__make_fp
__make_tp
__multf3
__netf2
__pack_d
__pack_f
__pack_t
__signbit
__signbitf
__signbitl
__subtf3
__trunctfdf2
__trunctfsf2
__unpack_d
__unpack_f
__unpack_t
_scan_nan
acos
acosf
@@ -90,6 +44,7 @@ atanhl
atanl
cabs
cabsf
cabsl
carg
cargf
cbrt
@@ -119,6 +74,7 @@ coshl
cosl
cproj
cprojf
cprojl
creal
crealf
csin
@@ -127,6 +83,7 @@ csinh
csinhf
csqrt
csqrtf
csqrtl
ctan
ctanf
ctanh
@@ -198,9 +155,14 @@ hypotl
ilogb
ilogbf
ilogbl
isinf
isnan
isnanf
imprecise_coshl
imprecise_erfcl
imprecise_erfl
imprecise_lgammal
imprecise_powl
imprecise_sinhl
imprecise_tanhl
imprecise_tgammal
j0
j0f
j1

View File

@@ -1,26 +1,2 @@
_ItL_aT
_ItL_atanhi
_ItL_atanlo
_ItL_pS0
_ItL_pS1
_ItL_pS2
_ItL_pS3
_ItL_pS4
_ItL_pS5
_ItL_pS6
_ItL_pS7
_ItL_pS8
_ItL_pS9
_ItL_pi_lo
_ItL_qS1
_ItL_qS2
_ItL_qS3
_ItL_qS4
_ItL_qS5
_ItL_qS6
_ItL_qS7
_ItL_qS8
_ItL_qS9
__fe_dfl_env
__thenan_tf
signgam

View File

@@ -27,6 +27,7 @@ struct siginfo;
#define __ARCH_SI_PREAMBLE_SIZE (3 * sizeof(int))
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#ifdef __LP64__
#undef __ARCH_SI_PREAMBLE_SIZE
#define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
#endif
#include <asm-generic/siginfo.h>

View File

@@ -71,8 +71,8 @@ typedef unsigned long old_sigset_t;
#define SIGXCPU 30
#define SIGXFSZ 31
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIGRTMIN 32
#define SIGRTMAX _KERNEL__NSIG
#define __SIGRTMIN 32
#define __SIGRTMAX _KERNEL__NSIG
#define SA_ONSTACK 0x08000000
#define SA_RESETHAND 0x80000000
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */

View File

@@ -1,169 +0,0 @@
/* $OpenBSD: ieee.h,v 1.4 2010/01/23 19:11:21 miod Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Lawrence Berkeley Laboratory.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)ieee.h 8.1 (Berkeley) 6/11/93
*/
/*
* ieee.h defines the machine-dependent layout of the machine's IEEE
* floating point. It does *not* define (yet?) any of the rounding
* mode bits, exceptions, and so forth.
*/
/*
* Define the number of bits in each fraction and exponent.
*
* k k+1
* Note that 1.0 x 2 == 0.1 x 2 and that denorms are represented
*
* (-exp_bias+1)
* as fractions that look like 0.fffff x 2 . This means that
*
* -126
* the number 0.10000 x 2 , for instance, is the same as the normalized
*
* -127 -128
* float 1.0 x 2 . Thus, to represent 2 , we need one leading zero
*
* -129
* in the fraction; to represent 2 , we need two, and so on. This
*
* (-exp_bias-fracbits+1)
* implies that the smallest denormalized number is 2
*
* for whichever format we are talking about: for single precision, for
*
* -126 -149
* instance, we get .00000000000000000000001 x 2 , or 1.0 x 2 , and
*
* -149 == -127 - 23 + 1.
*/
#define SNG_EXPBITS 8
#define SNG_FRACBITS 23
#define DBL_EXPBITS 11
#define DBL_FRACHBITS 20
#define DBL_FRACLBITS 32
#define DBL_FRACBITS 52
#define EXT_EXPBITS 15
#define EXT_FRACHBITS 16
#define EXT_FRACHMBITS 32
#define EXT_FRACLMBITS 32
#define EXT_FRACLBITS 32
#define EXT_FRACBITS 112
#define EXT_IMPLICIT_NBIT
#define EXT_TO_ARRAY32(p, a) do { \
(a)[0] = (uint32_t)(p)->ext_fracl; \
(a)[1] = (uint32_t)(p)->ext_fraclm; \
(a)[2] = (uint32_t)(p)->ext_frachm; \
(a)[3] = (uint32_t)(p)->ext_frach; \
} while(0)
struct ieee_single {
#ifdef __MIPSEB__
u_int sng_sign:1;
u_int sng_exp:8;
u_int sng_frac:23;
#else
u_int sng_frac:23;
u_int sng_exp:8;
u_int sng_sign:1;
#endif
};
struct ieee_double {
#ifdef __MIPSEB__
u_int dbl_sign:1;
u_int dbl_exp:11;
u_int dbl_frach:20;
u_int dbl_fracl;
#else
u_int dbl_fracl;
u_int dbl_frach:20;
u_int dbl_exp:11;
u_int dbl_sign:1;
#endif
};
struct ieee_ext {
#ifdef __MIPSEB__
u_int ext_sign:1;
u_int ext_exp:15;
u_int ext_frach:16;
u_int ext_frachm;
u_int ext_fraclm;
u_int ext_fracl;
#else
u_int ext_fracl;
u_int ext_fraclm;
u_int ext_frachm;
u_int ext_frach:16;
u_int ext_exp:15;
u_int ext_sign:1;
#endif
};
/*
* Floats whose exponent is in [1..INFNAN) (of whatever type) are
* `normal'. Floats whose exponent is INFNAN are either Inf or NaN.
* Floats whose exponent is zero are either zero (iff all fraction
* bits are zero) or subnormal values.
*
* A NaN is a `signalling NaN' if its QUIETNAN bit is clear in its
* high fraction; if the bit is set, it is a `quiet NaN'.
*/
#define SNG_EXP_INFNAN 255
#define DBL_EXP_INFNAN 2047
#define EXT_EXP_INFNAN 32767
#if 0
#define SNG_QUIETNAN (1 << 22)
#define DBL_QUIETNAN (1 << 19)
#define EXT_QUIETNAN (1 << 15)
#endif
/*
* Exponent biases.
*/
#define SNG_EXP_BIAS 127
#define DBL_EXP_BIAS 1023
#define EXT_EXP_BIAS 16383

View File

@@ -27,6 +27,7 @@ _Unwind_SetIP
__FD_CLR_chk
__FD_ISSET_chk
__FD_SET_chk
__android_set_abort_message
__arc4_getbyte
__ashlti3
__assert
@@ -55,11 +56,16 @@ __evSubTime
__evTimeSpec
__evTimeVal
__evUTCTime
__extenddftf2
__fgets_chk
__fgetwc_unlock
__findenv
__fp_nquery
__fp_query
__fpclassify
__fpclassifyd
__fpclassifyf
__fpclassifyl
__fputwc_unlock
__frame_state_for
__futex_syscall3
__futex_syscall4
@@ -70,17 +76,30 @@ __futex_wake_ex
__get_h_errno
__get_sp
__hostalias
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnan
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__libc_current_sigrtmax
__libc_current_sigrtmin
__libc_fini
__libc_init
__loc_aton
__loc_ntoa
__lshrti3
__make_dp
__make_tp
__memcmp16
__memcpy_chk
__memmove_chk
__memset_chk
__multf3
__ns_format_ttl
__ns_get16
__ns_get32
@@ -126,7 +145,6 @@ __p_section
__p_sockun
__p_time
__p_type
__pack_d
__pack_t
__popcountdi2
__pthread_cleanup_pop
@@ -186,8 +204,8 @@ __sflags
__sflush
__sflush_locked
__sfp
__sfvwrite
__sinit
__slbexpand
__smakebuf
__snprintf_chk
__sprintf_chk
@@ -233,11 +251,12 @@ __system_property_set
__system_property_set_filename
__system_property_update
__system_property_wait_any
__trunctfdf2
__umask_chk
__unpack_d
__ungetwc
__unpack_t
__vfprintf
__vfwprintf
__vfwscanf
__vsnprintf_chk
__vsprintf_chk
_cleanup
@@ -252,6 +271,8 @@ _resolv_flush_cache_for_net
_resolv_set_nameservers_for_net
_setjmp
_thread_created_hook
_tolower
_toupper
abort
abs
accept
@@ -273,10 +294,9 @@ arc4random_buf
arc4random_stir
arc4random_uniform
asctime
asctime64
asctime64_r
asctime_r
asprintf
at_quick_exit
atof
atoi
atol
@@ -321,8 +341,6 @@ connect
creat
creat64
ctime
ctime64
ctime64_r
ctime_r
daemon
delete_module
@@ -429,7 +447,6 @@ fputws
fread
free
freeaddrinfo
freedtoa
freelocale
fremovexattr
freopen
@@ -542,8 +559,6 @@ getwc
getwchar
getxattr
gmtime
gmtime64
gmtime64_r
gmtime_r
herror
hstrerror
@@ -575,8 +590,20 @@ isatty
isblank
iscntrl
isdigit
isfinite
isfinitef
isfinitel
isgraph
isinf
isinff
isinfl
islower
isnan
isnanf
isnanl
isnormal
isnormalf
isnormall
isprint
ispunct
issetugid
@@ -584,6 +611,7 @@ isspace
isupper
iswalnum
iswalpha
iswblank
iswcntrl
iswctype
iswdigit
@@ -614,8 +642,6 @@ lldiv
llistxattr
localeconv
localtime
localtime64
localtime64_r
localtime_r
localtime_tz
longjmp
@@ -635,8 +661,10 @@ malloc_usable_size
mbrlen
mbrtowc
mbsinit
mbsnrtowcs
mbsrtowcs
mbstowcs
mbtowc
memalign
memccpy
memchr
@@ -658,7 +686,6 @@ mkstemp64
mkstemps
mktemp
mktime
mktime64
mktime_tz
mlock
mlockall
@@ -799,6 +826,7 @@ pvalloc
pwrite
pwrite64
qsort
quick_exit
raise
read
readahead
@@ -957,8 +985,6 @@ strncmp
strncpy
strndup
strnlen
strntoimax
strntoumax
strpbrk
strptime
strrchr
@@ -1011,9 +1037,7 @@ tgkill
time
time2posix
timegm
timegm64
timelocal
timelocal64
timer_create
timer_delete
timer_getoverrun
@@ -1064,17 +1088,20 @@ vfork
vfprintf
vfscanf
vfwprintf
vfwscanf
vprintf
vscanf
vsnprintf
vsprintf
vsscanf
vswprintf
vswscanf
vsyslog
vsyslog_r
vwarn
vwarnx
vwprintf
vwscanf
wait
wait3
wait4
@@ -1102,16 +1129,23 @@ wcsncat
wcsncmp
wcsncpy
wcsnlen
wcsnrtombs
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstof
wcstoimax
wcstok
wcstol
wcstold
wcstoll
wcstombs
wcstoul
wcstoull
wcstoumax
wcswcs
wcswidth
wcsxfrm

View File

@@ -3,7 +3,6 @@ _C_tolower_
_C_toupper_
__atexit
__atexit_invalid
__bionic_brk
__isthreaded
__libc_malloc_default_dispatch
__libc_malloc_dispatch
@@ -22,6 +21,7 @@ __sdidinit
__sglue
__stack_chk_guard
__system_property_area__
__thenan_tf
_ctype_
_ns_flagdata
_tolower_tab_

View File

@@ -1,3 +1,4 @@
android_dlopen_ext
android_get_LD_LIBRARY_PATH
android_update_LD_LIBRARY_PATH
dl_iterate_phdr

View File

@@ -12,25 +12,11 @@ __fixunstfsi
__floatsitf
__floatunditf
__floatunsitf
__fpclassifyd
__fpclassifyf
__fpclassifyl
__fpcmp_parts_t
__getf2
__gttf2
__ieee754_rem_pio2
__ieee754_rem_pio2f
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__kernel_cos
__kernel_cosdf
__kernel_cosl
@@ -198,9 +184,14 @@ hypotl
ilogb
ilogbf
ilogbl
isinf
isnan
isnanf
imprecise_coshl
imprecise_erfcl
imprecise_erfl
imprecise_lgammal
imprecise_powl
imprecise_sinhl
imprecise_tanhl
imprecise_tgammal
j0
j0f
j1

View File

@@ -1,142 +0,0 @@
/* $OpenBSD: ieee.h,v 1.2 2008/09/07 20:36:06 martynas Exp $ */
/* $NetBSD: ieee.h,v 1.1 1996/09/30 16:34:25 ws Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Lawrence Berkeley Laboratory.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)ieee.h 8.1 (Berkeley) 6/11/93
*/
/*
* ieee.h defines the machine-dependent layout of the machine's IEEE
* floating point. It does *not* define (yet?) any of the rounding
* mode bits, exceptions, and so forth.
*/
/*
* Define the number of bits in each fraction and exponent.
*
* k k+1
* Note that 1.0 x 2 == 0.1 x 2 and that denorms are represented
*
* (-exp_bias+1)
* as fractions that look like 0.fffff x 2 . This means that
*
* -126
* the number 0.10000 x 2 , for instance, is the same as the normalized
*
* -127 -128
* float 1.0 x 2 . Thus, to represent 2 , we need one leading zero
*
* -129
* in the fraction; to represent 2 , we need two, and so on. This
*
* (-exp_bias-fracbits+1)
* implies that the smallest denormalized number is 2
*
* for whichever format we are talking about: for single precision, for
*
* -126 -149
* instance, we get .00000000000000000000001 x 2 , or 1.0 x 2 , and
*
* -149 == -127 - 23 + 1.
*/
#define SNG_EXPBITS 8
#define SNG_FRACBITS 23
#define DBL_EXPBITS 11
#define DBL_FRACHBITS 20
#define DBL_FRACLBITS 32
#define DBL_FRACBITS 52
#define EXT_EXPBITS 15
#define EXT_FRACHBITS 32
#define EXT_FRACLBITS 32
#define EXT_FRACBITS 64
#define EXT_TO_ARRAY32(p, a) do { \
(a)[0] = (uint32_t)(p)->ext_fracl; \
(a)[1] = (uint32_t)(p)->ext_frach; \
} while(0)
struct ieee_single {
u_int sng_frac:23;
u_int sng_exp:8;
u_int sng_sign:1;
};
struct ieee_double {
u_int dbl_fracl;
u_int dbl_frach:20;
u_int dbl_exp:11;
u_int dbl_sign:1;
};
struct ieee_ext {
u_int ext_fracl;
u_int ext_frach;
u_int ext_exp:15;
u_int ext_sign:1;
u_int ext_padl:16;
u_int ext_padh;
};
/*
* Floats whose exponent is in [1..INFNAN) (of whatever type) are
* `normal'. Floats whose exponent is INFNAN are either Inf or NaN.
* Floats whose exponent is zero are either zero (iff all fraction
* bits are zero) or subnormal values.
*
* A NaN is a `signalling NaN' if its QUIETNAN bit is clear in its
* high fraction; if the bit is set, it is a `quiet NaN'.
*/
#define SNG_EXP_INFNAN 255
#define DBL_EXP_INFNAN 2047
#define EXT_EXP_INFNAN 32767
#if 0
#define SNG_QUIETNAN (1 << 22)
#define DBL_QUIETNAN (1 << 19)
#define EXT_QUIETNAN (1 << 15)
#endif
/*
* Exponent biases.
*/
#define SNG_EXP_BIAS 127
#define DBL_EXP_BIAS 1023
#define EXT_EXP_BIAS 16383

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -27,6 +27,7 @@ _Unwind_SetIP
__FD_CLR_chk
__FD_ISSET_chk
__FD_SET_chk
__android_set_abort_message
__arc4_getbyte
__assert
__assert2
@@ -35,15 +36,18 @@ __b64_pton
__bionic_clone
__bionic_clone_entry
__bionic_name_mem
__brk
__cxa_atexit
__cxa_finalize
__deregister_frame
__deregister_frame_info
__deregister_frame_info_bases
__divdi3
__dn_comp
__dn_count_labels
__dn_skipname
__dorand48
__epoll_pwait
__errno
__evAddTime
__evCmpTime
@@ -54,12 +58,20 @@ __evSubTime
__evTimeSpec
__evTimeVal
__evUTCTime
__extenddftf2
__exit
__fcntl64
__fgets_chk
__fgetwc_unlock
__findenv
__fp_nquery
__fp_query
__fpclassify
__fpclassifyd
__fpclassifyf
__fpclassifyl
__fputwc_unlock
__frame_state_for
__fstatfs64
__futex_syscall3
__futex_syscall4
__futex_wait
@@ -68,15 +80,37 @@ __futex_wake
__futex_wake_ex
__get_h_errno
__get_sp
__get_tls
__getcpu
__getcwd
__getpriority
__hostalias
__ioctl
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnan
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__libc_current_sigrtmax
__libc_current_sigrtmin
__libc_fini
__libc_init
__llseek
__loc_aton
__loc_ntoa
__memcmp16
__memcpy_chk
__memmove_chk
__memset_chk
__mmap2
__moddi3
__ns_format_ttl
__ns_get16
__ns_get32
@@ -107,7 +141,9 @@ __ns_samename
__ns_skiprr
__ns_sprintrr
__ns_sprintrrf
__open
__open_2
__openat
__openat_2
__p_cdname
__p_cdnname
@@ -122,13 +158,17 @@ __p_section
__p_sockun
__p_time
__p_type
__popcountdi2
__popcountsi2
__ppoll
__pselect6
__pthread_cleanup_pop
__pthread_cleanup_push
__pthread_gettid
__ptrace
__putlong
__putshort
__read_chk
__reboot
__recvfrom_chk
__register_frame
__register_frame_info
@@ -171,18 +211,27 @@ __res_send_setqhook
__res_send_setrhook
__res_setservers
__res_vinit
__rt_sigaction
__rt_sigpending
__rt_sigprocmask
__rt_sigsuspend
__rt_sigtimedwait
__sched_cpualloc
__sched_cpucount
__sched_cpufree
__sched_getaffinity
__sclose
__set_errno
__set_thread_area
__set_tid_address
__set_tls
__sflags
__sflush
__sflush_locked
__sfp
__sfp_handle_exceptions
__sfvwrite
__sigaction
__sinit
__slbexpand
__smakebuf
__snprintf_chk
__sprintf_chk
@@ -191,6 +240,7 @@ __srefill
__srget
__sseek
__stack_chk_fail
__statfs64
__stpcpy_chk
__stpncpy_chk
__stpncpy_chk2
@@ -212,6 +262,7 @@ __swsetup
__sym_ntop
__sym_ntos
__sym_ston
__syslog
__system_properties_init
__system_property_add
__system_property_area_init
@@ -228,11 +279,22 @@ __system_property_set
__system_property_set_filename
__system_property_update
__system_property_wait_any
__trunctfdf2
__timer_create
__timer_delete
__timer_getoverrun
__timer_gettime
__timer_settime
__udivdi3
__umask_chk
__umoddi3
__ungetwc
__vfprintf
__vfwprintf
__vfwscanf
__vsnprintf_chk
__vsprintf_chk
__wait4
__waitid
_cleanup
_exit
_exit_with_stack_teardown
@@ -244,6 +306,8 @@ _resolv_flush_cache_for_net
_resolv_set_nameservers_for_net
_setjmp
_thread_created_hook
_tolower
_toupper
abort
abs
accept
@@ -269,6 +333,7 @@ asctime64
asctime64_r
asctime_r
asprintf
at_quick_exit
atof
atoi
atol
@@ -282,6 +347,7 @@ brk
bsd_signal
bsearch
btowc
bzero
calloc
capget
capset
@@ -420,7 +486,6 @@ fputws
fread
free
freeaddrinfo
freedtoa
freelocale
fremovexattr
freopen
@@ -566,8 +631,20 @@ isatty
isblank
iscntrl
isdigit
isfinite
isfinitef
isfinitel
isgraph
isinf
isinff
isinfl
islower
isnan
isnanf
isnanl
isnormal
isnormalf
isnormall
isprint
ispunct
issetugid
@@ -575,6 +652,7 @@ isspace
isupper
iswalnum
iswalpha
iswblank
iswcntrl
iswctype
iswdigit
@@ -626,8 +704,10 @@ malloc_usable_size
mbrlen
mbrtowc
mbsinit
mbsnrtowcs
mbsrtowcs
mbstowcs
mbtowc
memalign
memccpy
memchr
@@ -637,6 +717,7 @@ memmem
memmove
memrchr
memset
memswap
mincore
mkdir
mkdirat
@@ -696,7 +777,6 @@ prctl
pread
pread64
printf
prlimit
prlimit64
pselect
psiginfo
@@ -709,6 +789,7 @@ pthread_attr_getschedparam
pthread_attr_getschedpolicy
pthread_attr_getscope
pthread_attr_getstack
pthread_attr_getstackaddr
pthread_attr_getstacksize
pthread_attr_init
pthread_attr_setdetachstate
@@ -717,12 +798,17 @@ pthread_attr_setschedparam
pthread_attr_setschedpolicy
pthread_attr_setscope
pthread_attr_setstack
pthread_attr_setstackaddr
pthread_attr_setstacksize
pthread_cond_broadcast
pthread_cond_destroy
pthread_cond_init
pthread_cond_signal
pthread_cond_timedwait
pthread_cond_timedwait_monotonic
pthread_cond_timedwait_monotonic_np
pthread_cond_timedwait_relative_np
pthread_cond_timeout_np
pthread_cond_wait
pthread_condattr_destroy
pthread_condattr_getclock
@@ -745,6 +831,7 @@ pthread_kill
pthread_mutex_destroy
pthread_mutex_init
pthread_mutex_lock
pthread_mutex_lock_timeout_np
pthread_mutex_timedlock
pthread_mutex_trylock
pthread_mutex_unlock
@@ -790,6 +877,7 @@ pvalloc
pwrite
pwrite64
qsort
quick_exit
raise
read
readahead
@@ -966,6 +1054,7 @@ strtol
strtold
strtoll
strtoq
strtotimeval
strtoul
strtoull
strtoumax
@@ -1055,17 +1144,20 @@ vfork
vfprintf
vfscanf
vfwprintf
vfwscanf
vprintf
vscanf
vsnprintf
vsprintf
vsscanf
vswprintf
vswscanf
vsyslog
vsyslog_r
vwarn
vwarnx
vwprintf
vwscanf
wait
wait3
wait4
@@ -1093,16 +1185,23 @@ wcsncat
wcsncmp
wcsncpy
wcsnlen
wcsnrtombs
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstof
wcstoimax
wcstok
wcstol
wcstold
wcstoll
wcstombs
wcstoul
wcstoull
wcstoumax
wcswcs
wcswidth
wcsxfrm

View File

@@ -12,6 +12,8 @@ __p_class_syms
__p_key_syms
__p_rcode_syms
__p_type_syms
__page_shift
__page_size
__popcount_tab
__progname
__rand48_add

View File

@@ -1,3 +1,4 @@
android_dlopen_ext
android_get_LD_LIBRARY_PATH
android_update_LD_LIBRARY_PATH
dl_iterate_phdr

View File

@@ -1,56 +1,21 @@
__addtf3
__divtf3
__eqtf2
__exp__D
__extenddftf2
__extendsftf2
__fixtfdi
__fixtfsi
__floatsitf
__fpclassifyd
__fpclassifyf
__fpclassifyl
__getf2
__gttf2
__ieee754_rem_pio2
__ieee754_rem_pio2f
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__kernel_cos
__kernel_cosdf
__kernel_cosl
__kernel_rem_pio2
__kernel_sin
__kernel_sindf
__kernel_sinl
__kernel_tan
__kernel_tandf
__kernel_tanl
__ldexp_cexp
__ldexp_cexpf
__ldexp_exp
__ldexp_expf
__letf2
__log__D
__lttf2
__multf3
__netf2
__sfp_handle_exceptions
__signbit
__signbitf
__signbitl
__subtf3
__trunctfdf2
__trunctfsf2
_scan_nan
acos
acosf
@@ -75,6 +40,7 @@ atanhl
atanl
cabs
cabsf
cabsl
carg
cargf
cbrt
@@ -104,6 +70,7 @@ coshl
cosl
cproj
cprojf
cprojl
creal
crealf
csin
@@ -112,6 +79,7 @@ csinh
csinhf
csqrt
csqrtf
csqrtl
ctan
ctanf
ctanh
@@ -183,9 +151,14 @@ hypotl
ilogb
ilogbf
ilogbl
isinf
isnan
isnanf
imprecise_coshl
imprecise_erfcl
imprecise_erfl
imprecise_lgammal
imprecise_powl
imprecise_sinhl
imprecise_tanhl
imprecise_tgammal
j0
j0f
j1

View File

@@ -1,25 +1,3 @@
_ItL_aT
_ItL_atanhi
_ItL_atanlo
_ItL_pS0
_ItL_pS1
_ItL_pS2
_ItL_pS3
_ItL_pS4
_ItL_pS5
_ItL_pS6
_ItL_pS7
_ItL_pS8
_ItL_pS9
_ItL_pi_lo
_ItL_qS1
_ItL_qS2
_ItL_qS3
_ItL_qS4
_ItL_qS5
_ItL_qS6
_ItL_qS7
_ItL_qS8
_ItL_qS9
__fe_dfl_env
__has_sse
signgam

View File

@@ -71,8 +71,8 @@ typedef unsigned long sigset_t;
#define SIGSYS 31
#define SIGUNUSED 31
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SIGRTMIN 32
#define SIGRTMAX _KERNEL__NSIG
#define __SIGRTMIN 32
#define __SIGRTMAX _KERNEL__NSIG
#define SA_NOCLDSTOP 0x00000001u
#define SA_NOCLDWAIT 0x00000002u
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */

View File

@@ -1,142 +0,0 @@
/* $OpenBSD: ieee.h,v 1.2 2008/09/07 20:36:06 martynas Exp $ */
/* $NetBSD: ieee.h,v 1.1 1996/09/30 16:34:25 ws Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Lawrence Berkeley Laboratory.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)ieee.h 8.1 (Berkeley) 6/11/93
*/
/*
* ieee.h defines the machine-dependent layout of the machine's IEEE
* floating point. It does *not* define (yet?) any of the rounding
* mode bits, exceptions, and so forth.
*/
/*
* Define the number of bits in each fraction and exponent.
*
* k k+1
* Note that 1.0 x 2 == 0.1 x 2 and that denorms are represented
*
* (-exp_bias+1)
* as fractions that look like 0.fffff x 2 . This means that
*
* -126
* the number 0.10000 x 2 , for instance, is the same as the normalized
*
* -127 -128
* float 1.0 x 2 . Thus, to represent 2 , we need one leading zero
*
* -129
* in the fraction; to represent 2 , we need two, and so on. This
*
* (-exp_bias-fracbits+1)
* implies that the smallest denormalized number is 2
*
* for whichever format we are talking about: for single precision, for
*
* -126 -149
* instance, we get .00000000000000000000001 x 2 , or 1.0 x 2 , and
*
* -149 == -127 - 23 + 1.
*/
#define SNG_EXPBITS 8
#define SNG_FRACBITS 23
#define DBL_EXPBITS 11
#define DBL_FRACHBITS 20
#define DBL_FRACLBITS 32
#define DBL_FRACBITS 52
#define EXT_EXPBITS 15
#define EXT_FRACHBITS 32
#define EXT_FRACLBITS 32
#define EXT_FRACBITS 64
#define EXT_TO_ARRAY32(p, a) do { \
(a)[0] = (uint32_t)(p)->ext_fracl; \
(a)[1] = (uint32_t)(p)->ext_frach; \
} while(0)
struct ieee_single {
u_int sng_frac:23;
u_int sng_exp:8;
u_int sng_sign:1;
};
struct ieee_double {
u_int dbl_fracl;
u_int dbl_frach:20;
u_int dbl_exp:11;
u_int dbl_sign:1;
};
struct ieee_ext {
u_int ext_fracl;
u_int ext_frach;
u_int ext_exp:15;
u_int ext_sign:1;
u_int ext_padl:16;
u_int ext_padh;
};
/*
* Floats whose exponent is in [1..INFNAN) (of whatever type) are
* `normal'. Floats whose exponent is INFNAN are either Inf or NaN.
* Floats whose exponent is zero are either zero (iff all fraction
* bits are zero) or subnormal values.
*
* A NaN is a `signalling NaN' if its QUIETNAN bit is clear in its
* high fraction; if the bit is set, it is a `quiet NaN'.
*/
#define SNG_EXP_INFNAN 255
#define DBL_EXP_INFNAN 2047
#define EXT_EXP_INFNAN 32767
#if 0
#define SNG_QUIETNAN (1 << 22)
#define DBL_QUIETNAN (1 << 19)
#define EXT_QUIETNAN (1 << 15)
#endif
/*
* Exponent biases.
*/
#define SNG_EXP_BIAS 127
#define DBL_EXP_BIAS 1023
#define EXT_EXP_BIAS 16383

View File

@@ -27,6 +27,7 @@ _Unwind_SetIP
__FD_CLR_chk
__FD_ISSET_chk
__FD_SET_chk
__android_fatal
__arc4_getbyte
__assert
__assert2
@@ -54,11 +55,16 @@ __evSubTime
__evTimeSpec
__evTimeVal
__evUTCTime
__extenddftf2
__fgets_chk
__fgetwc_unlock
__findenv
__fp_nquery
__fp_query
__fpclassify
__fpclassifyd
__fpclassifyf
__fpclassifyl
__fputwc_unlock
__frame_state_for
__futex_syscall3
__futex_syscall4
@@ -69,6 +75,20 @@ __futex_wake_ex
__get_h_errno
__get_sp
__hostalias
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnan
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__libc_current_sigrtmax
__libc_current_sigrtmin
__libc_fini
__libc_init
__loc_aton
@@ -77,6 +97,7 @@ __memcmp16
__memcpy_chk
__memmove_chk
__memset_chk
__multf3
__ns_format_ttl
__ns_get16
__ns_get32
@@ -181,8 +202,8 @@ __sflush
__sflush_locked
__sfp
__sfp_handle_exceptions
__sfvwrite
__sinit
__slbexpand
__smakebuf
__snprintf_chk
__sprintf_chk
@@ -228,9 +249,11 @@ __system_property_set
__system_property_set_filename
__system_property_update
__system_property_wait_any
__trunctfdf2
__umask_chk
__ungetwc
__vfprintf
__vfwprintf
__vfwscanf
__vsnprintf_chk
__vsprintf_chk
_cleanup
@@ -244,6 +267,8 @@ _resolv_flush_cache_for_net
_resolv_set_nameservers_for_net
_setjmp
_thread_created_hook
_tolower
_toupper
abort
abs
accept
@@ -265,10 +290,9 @@ arc4random_buf
arc4random_stir
arc4random_uniform
asctime
asctime64
asctime64_r
asctime_r
asprintf
at_quick_exit
atof
atoi
atol
@@ -312,8 +336,6 @@ connect
creat
creat64
ctime
ctime64
ctime64_r
ctime_r
daemon
delete_module
@@ -420,7 +442,6 @@ fputws
fread
free
freeaddrinfo
freedtoa
freelocale
fremovexattr
freopen
@@ -533,8 +554,6 @@ getwc
getwchar
getxattr
gmtime
gmtime64
gmtime64_r
gmtime_r
herror
hstrerror
@@ -566,8 +585,20 @@ isatty
isblank
iscntrl
isdigit
isfinite
isfinitef
isfinitel
isgraph
isinf
isinff
isinfl
islower
isnan
isnanf
isnanl
isnormal
isnormalf
isnormall
isprint
ispunct
issetugid
@@ -575,6 +606,7 @@ isspace
isupper
iswalnum
iswalpha
iswblank
iswcntrl
iswctype
iswdigit
@@ -605,8 +637,6 @@ lldiv
llistxattr
localeconv
localtime
localtime64
localtime64_r
localtime_r
localtime_tz
longjmp
@@ -626,8 +656,10 @@ malloc_usable_size
mbrlen
mbrtowc
mbsinit
mbsnrtowcs
mbsrtowcs
mbstowcs
mbtowc
memalign
memccpy
memchr
@@ -649,7 +681,6 @@ mkstemp64
mkstemps
mktemp
mktime
mktime64
mktime_tz
mlock
mlockall
@@ -790,6 +821,7 @@ pvalloc
pwrite
pwrite64
qsort
quick_exit
raise
read
readahead
@@ -948,8 +980,6 @@ strncmp
strncpy
strndup
strnlen
strntoimax
strntoumax
strpbrk
strptime
strrchr
@@ -1002,9 +1032,7 @@ tgkill
time
time2posix
timegm
timegm64
timelocal
timelocal64
timer_create
timer_delete
timer_getoverrun
@@ -1055,17 +1083,20 @@ vfork
vfprintf
vfscanf
vfwprintf
vfwscanf
vprintf
vscanf
vsnprintf
vsprintf
vsscanf
vswprintf
vswscanf
vsyslog
vsyslog_r
vwarn
vwarnx
vwprintf
vwscanf
wait
wait3
wait4
@@ -1093,16 +1124,23 @@ wcsncat
wcsncmp
wcsncpy
wcsnlen
wcsnrtombs
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstof
wcstoimax
wcstok
wcstol
wcstold
wcstoll
wcstombs
wcstoul
wcstoull
wcstoumax
wcswcs
wcswidth
wcsxfrm

View File

@@ -3,7 +3,6 @@ _C_tolower_
_C_toupper_
__atexit
__atexit_invalid
__bionic_brk
__isthreaded
__libc_malloc_default_dispatch
__libc_malloc_dispatch

View File

@@ -1,3 +1,4 @@
android_dlopen_ext
android_get_LD_LIBRARY_PATH
android_update_LD_LIBRARY_PATH
dl_iterate_phdr

View File

@@ -7,24 +7,10 @@ __extendsftf2
__fixtfdi
__fixtfsi
__floatsitf
__fpclassifyd
__fpclassifyf
__fpclassifyl
__getf2
__gttf2
__ieee754_rem_pio2
__ieee754_rem_pio2f
__isfinite
__isfinitef
__isfinitel
__isinf
__isinff
__isinfl
__isnanf
__isnanl
__isnormal
__isnormalf
__isnormall
__kernel_cos
__kernel_cosdf
__kernel_cosl
@@ -183,9 +169,14 @@ hypotl
ilogb
ilogbf
ilogbl
isinf
isnan
isnanf
imprecise_coshl
imprecise_erfcl
imprecise_erfl
imprecise_lgammal
imprecise_powl
imprecise_sinhl
imprecise_tanhl
imprecise_tgammal
j0
j0f
j1

View File

@@ -25,9 +25,14 @@
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#ifndef ANDROID_API_LEVEL_H
#define ANDROID_API_LEVEL_H
#define __ANDROID_API__ 10
/*
* Magic version number for a current development build, which has
* not yet turned into an official release.
*/
#define __ANDROID_API__ 10000
#endif /* ANDROID_API_LEVEL_H */

View File

@@ -0,0 +1,70 @@
/*
* Copyright (C) 2014 The Android Open Source Project
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef __ANDROID_DLEXT_H__
#define __ANDROID_DLEXT_H__
#include <stddef.h>
#include <sys/cdefs.h>
__BEGIN_DECLS
/* bitfield definitions for android_dlextinfo.flags */
enum {
/* When set, the reserved_addr and reserved_size fields must point to an
* already-reserved region of address space which will be used to load the
* library if it fits. If the reserved region is not large enough, the load
* will fail.
*/
ANDROID_DLEXT_RESERVED_ADDRESS = 0x1,
/* As DLEXT_RESERVED_ADDRESS, but if the reserved region is not large enough,
* the linker will choose an available address instead.
*/
ANDROID_DLEXT_RESERVED_ADDRESS_HINT = 0x2,
/* When set, write the GNU RELRO section of the mapped library to relro_fd
* after relocation has been performed, to allow it to be reused by another
* process loading the same library at the same address. This implies
* ANDROID_DLEXT_USE_RELRO.
*/
ANDROID_DLEXT_WRITE_RELRO = 0x4,
/* When set, compare the GNU RELRO section of the mapped library to relro_fd
* after relocation has been performed, and replace any relocated pages that
* are identical with a version mapped from the file.
*/
ANDROID_DLEXT_USE_RELRO = 0x8,
/* Mask of valid bits */
ANDROID_DLEXT_VALID_FLAG_BITS = ANDROID_DLEXT_RESERVED_ADDRESS |
ANDROID_DLEXT_RESERVED_ADDRESS_HINT |
ANDROID_DLEXT_WRITE_RELRO |
ANDROID_DLEXT_USE_RELRO,
};
typedef struct {
int flags;
void* reserved_addr;
size_t reserved_size;
int relro_fd;
} android_dlextinfo;
extern void* android_dlopen_ext(const char* filename, int flag, const android_dlextinfo* extinfo);
__END_DECLS
#endif /* __ANDROID_DLEXT_H__ */

View File

@@ -44,12 +44,16 @@
#define _CTYPE_U 0x01
#define _CTYPE_L 0x02
#define _CTYPE_N 0x04
#define _CTYPE_D 0x04
#define _CTYPE_S 0x08
#define _CTYPE_P 0x10
#define _CTYPE_C 0x20
#define _CTYPE_X 0x40
#define _CTYPE_B 0x80
#define _CTYPE_R (_CTYPE_P|_CTYPE_U|_CTYPE_L|_CTYPE_D|_CTYPE_B)
#define _CTYPE_A (_CTYPE_L|_CTYPE_U)
#define _CTYPE_N _CTYPE_D
__BEGIN_DECLS
@@ -57,17 +61,6 @@ extern const char *_ctype_;
extern const short *_tolower_tab_;
extern const short *_toupper_tab_;
/* extern __inline is a GNU C extension */
#ifdef __GNUC__
# if defined(__GNUC_STDC_INLINE__)
#define __CTYPE_INLINE extern __inline __attribute__((__gnu_inline__))
# else
#define __CTYPE_INLINE extern __inline
# endif
#else
#define __CTYPE_INLINE static __inline
#endif
#if defined(__GNUC__) || defined(_ANSI_LIBRARY) || defined(lint)
int isalnum(int);
int isalpha(int);
@@ -97,111 +90,6 @@ int _toupper(int);
#endif /* __GNUC__ || _ANSI_LIBRARY || lint */
#if defined(NDEBUG)
__CTYPE_INLINE int isalnum(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & (_CTYPE_U|_CTYPE_L|_CTYPE_N)));
}
__CTYPE_INLINE int isalpha(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & (_CTYPE_U|_CTYPE_L)));
}
__CTYPE_INLINE int iscntrl(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & _CTYPE_C));
}
__CTYPE_INLINE int isdigit(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & _CTYPE_N));
}
__CTYPE_INLINE int isgraph(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & (_CTYPE_P|_CTYPE_U|_CTYPE_L|_CTYPE_N)));
}
__CTYPE_INLINE int islower(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & _CTYPE_L));
}
__CTYPE_INLINE int isprint(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & (_CTYPE_P|_CTYPE_U|_CTYPE_L|_CTYPE_N|_CTYPE_B)));
}
__CTYPE_INLINE int ispunct(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & _CTYPE_P));
}
__CTYPE_INLINE int isspace(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & _CTYPE_S));
}
__CTYPE_INLINE int isupper(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & _CTYPE_U));
}
__CTYPE_INLINE int isxdigit(int c)
{
return (c == -1 ? 0 : ((_ctype_ + 1)[(unsigned char)c] & (_CTYPE_N|_CTYPE_X)));
}
__CTYPE_INLINE int tolower(int c)
{
if ((unsigned int)c > 255)
return (c);
return ((_tolower_tab_ + 1)[c]);
}
__CTYPE_INLINE int toupper(int c)
{
if ((unsigned int)c > 255)
return (c);
return ((_toupper_tab_ + 1)[c]);
}
#if __BSD_VISIBLE || __ISO_C_VISIBLE >= 1999 || __POSIX_VISIBLE > 200112 \
|| __XPG_VISIBLE > 600
__CTYPE_INLINE int isblank(int c)
{
return (c == ' ' || c == '\t');
}
#endif
#if __BSD_VISIBLE || __XPG_VISIBLE
__CTYPE_INLINE int isascii(int c)
{
return ((unsigned int)c <= 0177);
}
__CTYPE_INLINE int toascii(int c)
{
return (c & 0177);
}
__CTYPE_INLINE int _tolower(int c)
{
return (c - 'A' + 'a');
}
__CTYPE_INLINE int _toupper(int c)
{
return (c - 'a' + 'A');
}
#endif /* __BSD_VISIBLE || __XPG_VISIBLE */
#endif /* NDEBUG */
__END_DECLS
#undef __CTYPE_INLINE
#endif /* !_CTYPE_H_ */

View File

@@ -254,16 +254,14 @@ typedef struct {
} imaxdiv_t;
__BEGIN_DECLS
intmax_t imaxabs(intmax_t) __pure2;
imaxdiv_t imaxdiv(intmax_t, intmax_t) __pure2;
intmax_t strtoimax(const char *, char **, int);
uintmax_t strtoumax(const char *, char **, int);
intmax_t strntoimax(const char *nptr, char **endptr, int base, size_t n);
uintmax_t strntoumax(const char *nptr, char **endptr, int base, size_t n);
intmax_t wcstoimax(const wchar_t * __restrict,
wchar_t ** __restrict, int);
uintmax_t wcstoumax(const wchar_t * __restrict,
wchar_t ** __restrict, int);
__END_DECLS
#endif /* _INTTYPES_H_ */

View File

@@ -112,7 +112,7 @@
#define SSIZE_MAX LONG_MAX
#define MB_LEN_MAX 1 /* No multibyte characters. */
#define MB_LEN_MAX 6
/* New code should use sysconf(_SC_PAGE_SIZE) instead. */
#ifndef PAGE_SIZE

View File

@@ -117,7 +117,8 @@
#define PR_GET_NO_NEW_PRIVS 39
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define PR_GET_TID_ADDRESS 40
#define PR_SET_TIMERSLACK_PID 41
#define PR_SET_VMA 0x53564d41
#define PR_SET_VMA_ANON_NAME 0
#endif
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#endif

View File

@@ -33,21 +33,19 @@
__BEGIN_DECLS
enum {
LC_CTYPE = 0,
LC_NUMERIC = 1,
LC_TIME = 2,
LC_COLLATE = 3,
LC_MONETARY = 4,
LC_MESSAGES = 5,
LC_ALL = 6,
LC_PAPER = 7,
LC_NAME = 8,
LC_ADDRESS = 9,
LC_TELEPHONE = 10,
LC_MEASUREMENT = 11,
LC_IDENTIFICATION = 12
};
#define LC_CTYPE 0
#define LC_NUMERIC 1
#define LC_TIME 2
#define LC_COLLATE 3
#define LC_MONETARY 4
#define LC_MESSAGES 5
#define LC_ALL 6
#define LC_PAPER 7
#define LC_NAME 8
#define LC_ADDRESS 9
#define LC_TELEPHONE 10
#define LC_MEASUREMENT 11
#define LC_IDENTIFICATION 12
#define LC_CTYPE_MASK (1 << LC_CTYPE)
#define LC_NUMERIC_MASK (1 << LC_NUMERIC)

View File

@@ -0,0 +1,118 @@
/* $OpenBSD: ieee.h,v 1.4 2011/11/08 17:06:51 deraadt Exp $ */
/* $NetBSD: ieee.h,v 1.2 2001/02/21 17:43:50 bjh21 Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Lawrence Berkeley Laboratory.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)ieee.h 8.1 (Berkeley) 6/11/93
*/
#ifndef _MACHINE_IEEE_H_
#define _MACHINE_IEEE_H_
#include <sys/types.h>
__BEGIN_DECLS
#define SNG_EXPBITS 8
#define SNG_FRACBITS 23
#define SNG_EXP_INFNAN 255
#define SNG_EXP_BIAS 127
struct ieee_single {
unsigned sng_frac:23;
unsigned sng_exp:8;
unsigned sng_sign:1;
};
#define DBL_EXPBITS 11
#define DBL_FRACHBITS 20
#define DBL_FRACLBITS 32
#define DBL_FRACBITS 52
#define DBL_EXP_INFNAN 2047
#define DBL_EXP_BIAS 1023
struct ieee_double {
unsigned dbl_fracl;
unsigned dbl_frach:20;
unsigned dbl_exp:11;
unsigned dbl_sign:1;
};
#if __LP64__
/* 64-bit Android uses ld128 long doubles. */
#define EXT_EXPBITS 15
#define EXT_FRACHBITS 16
#define EXT_FRACHMBITS 32
#define EXT_FRACLMBITS 32
#define EXT_FRACLBITS 32
#define EXT_FRACBITS 112
#define EXT_EXP_INFNAN 32767
#define EXT_EXP_BIAS 16383
#define EXT_IMPLICIT_NBIT
#define EXT_TO_ARRAY32(p, a) do { \
(a)[0] = (uint32_t)(p)->ext_fracl; \
(a)[1] = (uint32_t)(p)->ext_fraclm; \
(a)[2] = (uint32_t)(p)->ext_frachm; \
(a)[3] = (uint32_t)(p)->ext_frach; \
} while(0)
struct ieee_ext {
unsigned ext_fracl;
unsigned ext_fraclm;
unsigned ext_frachm;
unsigned ext_frach:16;
unsigned ext_exp:15;
unsigned ext_sign:1;
};
#endif
__END_DECLS
#endif /* _MACHINE_IEEE_H_ */

View File

@@ -0,0 +1,42 @@
/*
* Copyright (C) 2014 The Android Open Source Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#ifndef _MACHINE_WCHAR_LIMITS_H_
#define _MACHINE_WCHAR_LIMITS_H_
/* Both GCC and clang define __WCHAR_MAX__. */
#define WCHAR_MAX __WCHAR_MAX__
/* As of 3.4, clang still doesn't define __WCHAR_MIN__. */
#if defined(__WCHAR_UNSIGNED__)
# define WCHAR_MIN L'\0'
#else
# define WCHAR_MIN (-(WCHAR_MAX) - 1)
#endif
#endif /* _MACHINE_WCHAR_LIMITS_H_ */

View File

@@ -396,16 +396,23 @@ float significandf(float);
* long double versions of ISO/POSIX math functions
*/
#if __ISO_C_VISIBLE >= 1999
long double acoshl(long double);
long double acosl(long double);
long double asinhl(long double);
long double asinl(long double);
long double atan2l(long double, long double);
long double atanhl(long double);
long double atanl(long double);
long double cbrtl(long double);
long double ceill(long double);
long double copysignl(long double, long double) __pure2;
long double coshl(long double);
long double cosl(long double);
long double erfcl(long double);
long double erfl(long double);
long double exp2l(long double);
long double expl(long double);
long double expm1l(long double);
long double fabsl(long double) __pure2;
long double fdiml(long double, long double);
long double floorl(long double);
@@ -417,9 +424,14 @@ long double frexpl(long double value, int *); /* fundamentally !__pure2 */
long double hypotl(long double, long double);
int ilogbl(long double) __pure2;
long double ldexpl(long double, int);
long double lgammal(long double);
long long llrintl(long double);
long long llroundl(long double);
long double log10l(long double);
long double log1pl(long double);
long double log2l(long double);
long double logbl(long double);
long double logl(long double);
long lrintl(long double);
long lroundl(long double);
long double modfl(long double, long double *); /* fundamentally !__pure2 */
@@ -429,53 +441,29 @@ long double nextafterl(long double, long double);
double nexttoward(double, long double);
float nexttowardf(float, long double);
long double nexttowardl(long double, long double);
long double powl(long double, long double);
long double remainderl(long double, long double);
long double remquol(long double, long double, int *);
long double rintl(long double);
long double roundl(long double);
long double scalblnl(long double, long);
long double scalbnl(long double, int);
long double sinhl(long double);
long double sinl(long double);
long double sqrtl(long double);
long double tanhl(long double);
long double tanl(long double);
long double tgammal(long double);
long double truncl(long double);
#endif /* __ISO_C_VISIBLE >= 1999 */
#if defined(_GNU_SOURCE)
void sincos(double, double*, double*);
void sincosf(float, float*, float*);
void sincosl(long double, long double*, long double*);
#endif /* _GNU_SOURCE */
__END_DECLS
#endif /* !_MATH_H_ */
/* separate header for cmath */
#ifndef _MATH_EXTRA_H_
#if __ISO_C_VISIBLE >= 1999
#if _DECLARE_C99_LDBL_MATH
#define _MATH_EXTRA_H_
/*
* extra long double versions of math functions for C99 and cmath
*/
__BEGIN_DECLS
long double acoshl(long double);
long double asinhl(long double);
long double atanhl(long double);
long double coshl(long double);
long double erfcl(long double);
long double erfl(long double);
long double expm1l(long double);
long double lgammal(long double);
long double log10l(long double);
long double log1pl(long double);
long double log2l(long double);
long double logl(long double);
long double powl(long double, long double);
long double sinhl(long double);
long double tanhl(long double);
long double tgammal(long double);
__END_DECLS
#endif /* !_DECLARE_C99_LDBL_MATH */
#endif /* __ISO_C_VISIBLE >= 1999 */
#endif /* !_MATH_EXTRA_H_ */

View File

@@ -35,17 +35,26 @@
#include <limits.h>
#include <sys/types.h>
#ifdef __LP64__
#define __RESERVED_INITIALIZER , {0}
#else
#define __RESERVED_INITIALIZER
#endif
typedef struct {
int volatile value;
#ifdef __LP64__
char __reserved[36];
#endif
} pthread_mutex_t;
#define __PTHREAD_MUTEX_INIT_VALUE 0
#define __PTHREAD_RECURSIVE_MUTEX_INIT_VALUE 0x4000
#define __PTHREAD_ERRORCHECK_MUTEX_INIT_VALUE 0x8000
#define PTHREAD_MUTEX_INITIALIZER {__PTHREAD_MUTEX_INIT_VALUE}
#define PTHREAD_RECURSIVE_MUTEX_INITIALIZER {__PTHREAD_RECURSIVE_MUTEX_INIT_VALUE}
#define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER {__PTHREAD_ERRORCHECK_MUTEX_INIT_VALUE}
#define PTHREAD_MUTEX_INITIALIZER {__PTHREAD_MUTEX_INIT_VALUE __RESERVED_INITIALIZER}
#define PTHREAD_RECURSIVE_MUTEX_INITIALIZER {__PTHREAD_RECURSIVE_MUTEX_INIT_VALUE __RESERVED_INITIALIZER}
#define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER {__PTHREAD_ERRORCHECK_MUTEX_INIT_VALUE __RESERVED_INITIALIZER}
enum {
PTHREAD_MUTEX_NORMAL = 0,
@@ -60,9 +69,12 @@ enum {
typedef struct {
int volatile value;
#ifdef __LP64__
char __reserved[44];
#endif
} pthread_cond_t;
#define PTHREAD_COND_INITIALIZER {0}
#define PTHREAD_COND_INITIALIZER {0 __RESERVED_INITIALIZER}
typedef struct {
uint32_t flags;
@@ -71,21 +83,24 @@ typedef struct {
size_t guard_size;
int32_t sched_policy;
int32_t sched_priority;
#ifdef __LP64__
char __reserved[16];
#endif
} pthread_attr_t;
typedef long pthread_mutexattr_t;
typedef long pthread_condattr_t;
typedef int pthread_rwlockattr_t;
typedef long pthread_rwlockattr_t;
typedef struct {
pthread_mutex_t lock;
pthread_cond_t cond;
int numLocks;
int writerThreadId;
int pendingReaders;
int pendingWriters;
void* reserved[4]; /* for future extensibility */
pthread_mutex_t lock;
pthread_cond_t cond;
int numLocks;
int writerThreadId;
int pendingReaders;
int pendingWriters;
void* __reserved[4];
} pthread_rwlock_t;
#define PTHREAD_RWLOCK_INITIALIZER { PTHREAD_MUTEX_INITIALIZER, PTHREAD_COND_INITIALIZER, 0, 0, 0, 0, { NULL, NULL, NULL, NULL } }
@@ -95,7 +110,7 @@ typedef long pthread_t;
typedef volatile int pthread_once_t;
#define PTHREAD_ONCE_INIT 0
#define PTHREAD_ONCE_INIT 0
#define PTHREAD_STACK_MIN (2 * PAGE_SIZE)

View File

@@ -59,151 +59,90 @@ extern int unshare(int);
extern int sched_getcpu(void);
extern int setns(int, int);
/* Our implementation supports up to 32 independent CPUs, which is also
* the maximum supported by the kernel at the moment. GLibc uses 1024 by
* default.
*
* If you want to use more than that, you should use CPU_ALLOC() / CPU_FREE()
* and the CPU_XXX_S() macro variants.
*/
#define CPU_SETSIZE 32
#ifdef __LP32__
#define CPU_SETSIZE 32
#else
#define CPU_SETSIZE 1024
#endif
#define __CPU_BITTYPE unsigned long int /* mandated by the kernel */
#define __CPU_BITSHIFT 5 /* should be log2(BITTYPE) */
#define __CPU_BITS (1 << __CPU_BITSHIFT)
#define __CPU_ELT(x) ((x) >> __CPU_BITSHIFT)
#define __CPU_MASK(x) ((__CPU_BITTYPE)1 << ((x) & (__CPU_BITS-1)))
#define __CPU_BITTYPE unsigned long int /* mandated by the kernel */
#define __CPU_BITS (8 * sizeof(__CPU_BITTYPE))
#define __CPU_ELT(x) ((x) / __CPU_BITS)
#define __CPU_MASK(x) ((__CPU_BITTYPE)1 << ((x) & (__CPU_BITS - 1)))
typedef struct {
__CPU_BITTYPE __bits[ CPU_SETSIZE / __CPU_BITS ];
__CPU_BITTYPE __bits[ CPU_SETSIZE / __CPU_BITS ];
} cpu_set_t;
extern int sched_setaffinity(pid_t pid, size_t setsize, const cpu_set_t* set);
extern int sched_getaffinity(pid_t pid, size_t setsize, cpu_set_t* set);
/* Provide optimized implementation for 32-bit cpu_set_t */
#if CPU_SETSIZE == __CPU_BITS
#define CPU_ZERO(set) CPU_ZERO_S(sizeof(cpu_set_t), set)
#define CPU_SET(cpu, set) CPU_SET_S(cpu, sizeof(cpu_set_t), set)
#define CPU_CLR(cpu, set) CPU_CLR_S(cpu, sizeof(cpu_set_t), set)
#define CPU_ISSET(cpu, set) CPU_ISSET_S(cpu, sizeof(cpu_set_t), set)
#define CPU_COUNT(set) CPU_COUNT_S(sizeof(cpu_set_t), set)
#define CPU_EQUAL(set1, set2) CPU_EQUAL_S(sizeof(cpu_set_t), set1, set2)
# define CPU_ZERO(set_) \
do{ \
(set_)->__bits[0] = 0; \
}while(0)
#define CPU_AND(dst, set1, set2) __CPU_OP(dst, set1, set2, &)
#define CPU_OR(dst, set1, set2) __CPU_OP(dst, set1, set2, |)
#define CPU_XOR(dst, set1, set2) __CPU_OP(dst, set1, set2, ^)
# define CPU_SET(cpu_,set_) \
do {\
size_t __cpu = (cpu_); \
if (__cpu < CPU_SETSIZE) \
(set_)->__bits[0] |= __CPU_MASK(__cpu); \
}while (0)
# define CPU_CLR(cpu_,set_) \
do {\
size_t __cpu = (cpu_); \
if (__cpu < CPU_SETSIZE) \
(set_)->__bits[0] &= ~__CPU_MASK(__cpu); \
}while (0)
# define CPU_ISSET(cpu_, set_) \
(__extension__({\
size_t __cpu = (cpu_); \
(cpu_ < CPU_SETSIZE) \
? ((set_)->__bits[0] & __CPU_MASK(__cpu)) != 0 \
: 0; \
}))
# define CPU_EQUAL(set1_, set2_) \
((set1_)->__bits[0] == (set2_)->__bits[0])
# define __CPU_OP(dst_, set1_, set2_, op_) \
do { \
(dst_)->__bits[0] = (set1_)->__bits[0] op_ (set2_)->__bits[0]; \
} while (0)
# define CPU_COUNT(set_) __builtin_popcountl((set_)->__bits[0])
#else /* CPU_SETSIZE != __CPU_BITS */
# define CPU_ZERO(set_) CPU_ZERO_S(sizeof(cpu_set_t), set_)
# define CPU_SET(cpu_,set_) CPU_SET_S(cpu_,sizeof(cpu_set_t),set_)
# define CPU_CLR(cpu_,set_) CPU_CLR_S(cpu_,sizeof(cpu_set_t),set_)
# define CPU_ISSET(cpu_,set_) CPU_ISSET_S(cpu_,sizeof(cpu_set_t),set_)
# define CPU_COUNT(set_) CPU_COUNT_S(sizeof(cpu_set_t),set_)
# define CPU_EQUAL(set1_,set2_) CPU_EQUAL_S(sizeof(cpu_set_t),set1_,set2_)
# define __CPU_OP(dst_,set1_,set2_,op_) __CPU_OP_S(sizeof(cpu_set_t),dst_,set1_,set2_,op_)
#endif /* CPU_SETSIZE != __CPU_BITS */
#define CPU_AND(set1_,set2_) __CPU_OP(set1_,set2_,&)
#define CPU_OR(set1_,set2_) __CPU_OP(set1_,set2_,|)
#define CPU_XOR(set1_,set2_) __CPU_OP(set1_,set2_,^)
#define __CPU_OP(dst, set1, set2, op) __CPU_OP_S(sizeof(cpu_set_t), dst, set1, set2, op)
/* Support for dynamically-allocated cpu_set_t */
#define CPU_ALLOC_SIZE(count) \
__CPU_ELT((count) + (__CPU_BITS-1))*sizeof(__CPU_BITTYPE)
__CPU_ELT((count) + (__CPU_BITS - 1)) * sizeof(__CPU_BITTYPE)
#define CPU_ALLOC(count) __sched_cpualloc((count));
#define CPU_FREE(set) __sched_cpufree((set))
#define CPU_ALLOC(count) __sched_cpualloc((count))
#define CPU_FREE(set) __sched_cpufree((set))
extern cpu_set_t* __sched_cpualloc(size_t count);
extern void __sched_cpufree(cpu_set_t* set);
#define CPU_ZERO_S(setsize_,set_) \
do { \
size_t __nn = 0; \
size_t __nn_max = (setsize_)/sizeof(__CPU_BITTYPE); \
for (; __nn < __nn_max; __nn++) \
(set_)->__bits[__nn] = 0; \
} while (0)
#define CPU_ZERO_S(setsize, set) __builtin_memset(set, 0, setsize)
#define CPU_SET_S(cpu_,setsize_,set_) \
do { \
size_t __cpu = (cpu_); \
if (__cpu < 8*(setsize_)) \
(set_)->__bits[__CPU_ELT(__cpu)] |= __CPU_MASK(__cpu); \
} while (0)
#define CPU_SET_S(cpu, setsize, set) \
do { \
size_t __cpu = (cpu); \
if (__cpu < 8 * (setsize)) \
(set)->__bits[__CPU_ELT(__cpu)] |= __CPU_MASK(__cpu); \
} while (0)
#define CPU_CLR_S(cpu_,setsize_,set_) \
do { \
size_t __cpu = (cpu_); \
if (__cpu < 8*(setsize_)) \
(set_)->__bits[__CPU_ELT(__cpu)] &= ~__CPU_MASK(__cpu); \
} while (0)
#define CPU_CLR_S(cpu, setsize, set) \
do { \
size_t __cpu = (cpu); \
if (__cpu < 8 * (setsize)) \
(set)->__bits[__CPU_ELT(__cpu)] &= ~__CPU_MASK(__cpu); \
} while (0)
#define CPU_ISSET_S(cpu_, setsize_, set_) \
(__extension__ ({ \
size_t __cpu = (cpu_); \
(__cpu < 8*(setsize_)) \
? ((set_)->__bits[__CPU_ELT(__cpu)] & __CPU_MASK(__cpu)) != 0 \
: 0; \
}))
#define CPU_ISSET_S(cpu, setsize, set) \
(__extension__ ({ \
size_t __cpu = (cpu); \
(__cpu < 8 * (setsize)) \
? ((set)->__bits[__CPU_ELT(__cpu)] & __CPU_MASK(__cpu)) != 0 \
: 0; \
}))
#define CPU_EQUAL_S(setsize_, set1_, set2_) \
(__extension__ ({ \
__const __CPU_BITTYPE* __src1 = (set1_)->__bits; \
__const __CPU_BITTYPE* __src2 = (set2_)->__bits; \
size_t __nn = 0, __nn_max = (setsize_)/sizeof(__CPU_BITTYPE); \
for (; __nn < __nn_max; __nn++) { \
if (__src1[__nn] != __src2[__nn]) \
break; \
} \
__nn == __nn_max; \
}))
#define CPU_EQUAL_S(setsize, set1, set2) (__builtin_memcmp(set1, set2, setsize) == 0)
#define __CPU_OP_S(setsize_, dstset_, srcset1_, srcset2_, op) \
do { \
cpu_set_t* __dst = (dstset); \
const __CPU_BITTYPE* __src1 = (srcset1)->__bits; \
const __CPU_BITTYPE* __src2 = (srcset2)->__bits; \
size_t __nn = 0, __nn_max = (setsize_)/sizeof(__CPU_BITTYPE); \
for (; __nn < __nn_max; __nn++) \
(__dst)->__bits[__nn] = __src1[__nn] op __src2[__nn]; \
} while (0)
#define CPU_AND_S(setsize, dst, set1, set2) __CPU_OP_S(setsize, dst, set1, set2, &)
#define CPU_OR_S(setsize, dst, set1, set2) __CPU_OP_S(setsize, dst, set1, set2, |)
#define CPU_XOR_S(setsize, dst, set1, set2) __CPU_OP_S(setsize, dst, set1, set2, ^)
#define CPU_COUNT_S(setsize_, set_) \
__sched_cpucount((setsize_), (set_))
#define __CPU_OP_S(setsize, dstset, srcset1, srcset2, op) \
do { \
cpu_set_t* __dst = (dstset); \
const __CPU_BITTYPE* __src1 = (srcset1)->__bits; \
const __CPU_BITTYPE* __src2 = (srcset2)->__bits; \
size_t __nn = 0, __nn_max = (setsize)/sizeof(__CPU_BITTYPE); \
for (; __nn < __nn_max; __nn++) \
(__dst)->__bits[__nn] = __src1[__nn] op __src2[__nn]; \
} while (0)
#define CPU_COUNT_S(setsize, set) __sched_cpucount((setsize), (set))
extern int __sched_cpucount(size_t setsize, cpu_set_t* set);

View File

@@ -33,10 +33,13 @@
__BEGIN_DECLS
typedef struct {
volatile unsigned int count;
volatile unsigned int count;
#ifdef __LP64__
int __reserved[3];
#endif
} sem_t;
#define SEM_FAILED NULL
#define SEM_FAILED NULL
extern int sem_init(sem_t *sem, int pshared, unsigned int value);

View File

@@ -60,6 +60,12 @@ typedef int sig_atomic_t;
#define _NSIG (_KERNEL__NSIG + 1)
#define NSIG _NSIG
/* We take a few real-time signals for ourselves. May as well use the same names as glibc. */
#define SIGRTMIN (__libc_current_sigrtmin())
#define SIGRTMAX (__libc_current_sigrtmax())
extern int __libc_current_sigrtmin(void);
extern int __libc_current_sigrtmax(void);
extern const char* const sys_siglist[];
extern const char* const sys_signame[]; /* BSD compatibility. */

View File

@@ -30,6 +30,7 @@
#define _STDINT_H
#include <stddef.h>
#include <machine/wchar_limits.h>
typedef __signed char __int8_t;
typedef unsigned char __uint8_t;
@@ -86,7 +87,7 @@ typedef uint8_t uint_fast8_t;
typedef int64_t int_fast64_t;
typedef uint64_t uint_fast64_t;
#ifdef __LP64__
#if defined(__LP64__)
typedef int64_t int_fast16_t;
typedef uint64_t uint_fast16_t;
typedef int64_t int_fast32_t;
@@ -135,7 +136,7 @@ typedef int64_t intmax_t;
#define INTMAX_C(c) INT64_C(c)
#define UINTMAX_C(c) UINT64_C(c)
#ifdef __LP64__
#if defined(__LP64__)
# define INT64_C(c) c ## L
# define UINT64_C(c) c ## UL
# define INTPTR_C(c) INT64_C(c)
@@ -200,15 +201,15 @@ typedef int64_t intmax_t;
#define SIG_ATOMIC_MAX INT32_MAX
#define SIG_ATOMIC_MIN INT32_MIN
#ifndef WCHAR_MAX /* These might also have been defined by <wchar.h>. */
# define WCHAR_MAX INT32_MAX
# define WCHAR_MIN INT32_MIN
#if defined(__WINT_UNSIGNED__)
# define WINT_MAX UINT32_MAX
# define WINT_MIN UINT32_MIN
#else
# define WINT_MAX INT32_MAX
# define WINT_MIN INT32_MIN
#endif
#define WINT_MAX INT32_MAX
#define WINT_MIN INT32_MIN
#ifdef __LP64__
#if defined(__LP64__)
# define INTPTR_MIN INT64_MIN
# define INTPTR_MAX INT64_MAX
# define UINTPTR_MAX UINT64_MAX

View File

@@ -46,10 +46,15 @@ extern __noreturn void exit(int);
extern __noreturn void _Exit(int);
extern int atexit(void (*)(void));
extern char *getenv(const char *);
extern int putenv(const char *);
extern int setenv(const char *, const char *, int);
extern int unsetenv(const char *);
#if __ISO_C_VISIBLE >= 2011 || __cplusplus >= 201103L
int at_quick_exit(void (*)(void));
void quick_exit(int) __noreturn;
#endif
extern char* getenv(const char*);
extern int putenv(char*);
extern int setenv(const char*, const char*, int);
extern int unsetenv(const char*);
extern int clearenv(void);
extern char* mkdtemp(char*);
@@ -65,9 +70,10 @@ extern unsigned long long strtoull(const char *, char **, int);
extern int posix_memalign(void **memptr, size_t alignment, size_t size);
extern double atof(const char*);
extern double strtod(const char*, char**);
extern float strtof(const char*, char**);
extern long double strtold(const char*, char**);
extern double strtod(const char*, char**) __LIBC_ABI_PUBLIC__;
extern float strtof(const char*, char**) __LIBC_ABI_PUBLIC__;
extern long double strtold(const char*, char**) __LIBC_ABI_PUBLIC__;
extern int atoi(const char*) __purefunc;
extern long atol(const char*) __purefunc;

View File

@@ -32,7 +32,7 @@
#ifdef __LEADING_UNDERSCORE
#define _C_LABEL(x) __CONCAT(_,x)
#define _C_LABEL_STRING(x) "_"x
#define _C_LABEL_STRING(x) "_" x
#else
#define _C_LABEL(x) x
#define _C_LABEL_STRING(x) x
@@ -61,24 +61,11 @@
#define __SECTIONSTRING(_sec, _str) \
__asm__(".section " #_sec "\n\t.asciz \"" _str "\"\n\t.previous")
/* GCC visibility helper macro */
/* This must be used to tag non-static functions that are private, i.e.
* never exposed by the shared library. */
#define __LIBC_HIDDEN__ \
__attribute__ ((visibility ("hidden")))
/* Used to tag non-static symbols that are private and never exposed by the shared library. */
#define __LIBC_HIDDEN__ __attribute__((visibility ("hidden")))
/* This must be used to tag non-static functions that are public, i.e.
* exposed by the shared library, and part of the stable NDK ABI */
#define __LIBC_ABI_PUBLIC__ \
__attribute__ ((visibility ("default")))
/* This must be used to tag non-static functions that must be exported
* by the shared library, but whose implementation is private to the
* platform. For now this is equivalent to __LIBC_ABI_PUBLIC__, but we
* may want to change this later.
*/
#define __LIBC_ABI_PRIVATE__ \
__attribute__ ((visibility ("default")))
/* Used to tag non-static symbols that are public and exposed by the shared library. */
#define __LIBC_ABI_PUBLIC__ __attribute__((visibility ("default")))
#define __IDSTRING(_n,_s) __SECTIONSTRING(.ident,_s)

View File

@@ -63,7 +63,7 @@ typedef __mode_t mode_t;
typedef __kernel_key_t __key_t;
typedef __key_t key_t;
typedef uint32_t __ino_t;
typedef __kernel_ino_t __ino_t;
typedef __ino_t ino_t;
typedef uint32_t __nlink_t;
@@ -72,9 +72,10 @@ typedef __nlink_t nlink_t;
typedef void* __timer_t;
typedef __timer_t timer_t;
typedef int32_t __suseconds_t;
typedef __kernel_suseconds_t __suseconds_t;
typedef __suseconds_t suseconds_t;
/* useconds_t is 32-bit on both LP32 and LP64. */
typedef uint32_t __useconds_t;
typedef __useconds_t useconds_t;

View File

@@ -36,7 +36,7 @@ __BEGIN_DECLS
#if __i386__
struct user_i387_struct {
struct user_fpregs_struct {
long cwd;
long swd;
long twd;
@@ -83,7 +83,7 @@ struct user_regs_struct {
struct user {
struct user_regs_struct regs;
int u_fpvalid;
struct user_i387_struct i387;
struct user_fpregs_struct i387;
unsigned long int u_tsize;
unsigned long int u_dsize;
unsigned long int u_ssize;
@@ -92,7 +92,7 @@ struct user {
long int signal;
int reserved;
unsigned long u_ar0;
struct user_i387_struct* u_fpstate;
struct user_fpregs_struct* u_fpstate;
unsigned long magic;
char u_comm[32];
int u_debugreg[8];
@@ -100,7 +100,7 @@ struct user {
#elif defined(__x86_64__)
struct user_i387_struct {
struct user_fpregs_struct {
unsigned short cwd;
unsigned short swd;
unsigned short twd;
@@ -146,7 +146,7 @@ struct user {
struct user_regs_struct regs;
int u_fpvalid;
int pad0;
struct user_i387_struct i387;
struct user_fpregs_struct i387;
unsigned long int u_tsize;
unsigned long int u_dsize;
unsigned long int u_ssize;
@@ -156,7 +156,7 @@ struct user {
int reserved;
int pad1;
unsigned long u_ar0;
struct user_i387_struct* u_fpstate;
struct user_fpregs_struct* u_fpstate;
unsigned long magic;
char u_comm[32];
unsigned long u_debugreg[8];

View File

@@ -31,29 +31,36 @@ Modified for Bionic by the Android Open Source Project
#ifndef TIME64_H
#define TIME64_H
#if defined(__LP64__)
#error Your time_t is already 64-bit.
#else
/* Legacy cruft for LP32 where time_t was 32-bit. */
#include <sys/cdefs.h>
#include <time.h>
#include <stdint.h>
__BEGIN_DECLS
typedef int64_t time64_t;
typedef int64_t time64_t;
struct tm *gmtime64_r (const time64_t *, struct tm *);
struct tm *localtime64_r (const time64_t *, struct tm *);
struct tm *gmtime64 (const time64_t *);
struct tm *localtime64 (const time64_t *);
char *asctime64 (const struct tm *);
char *asctime64_r (const struct tm *, char *);
char *ctime64 (const time64_t*);
char *ctime64_r (const time64_t*, char*);
time64_t timegm64 (const struct tm *);
time64_t mktime64 (const struct tm *);
time64_t timelocal64 (const struct tm *);
char* asctime64(const struct tm*);
char* asctime64_r(const struct tm*, char*);
char* ctime64(const time64_t*);
char* ctime64_r(const time64_t*, char*);
struct tm* gmtime64(const time64_t*);
struct tm* gmtime64_r(const time64_t*, struct tm*);
struct tm* localtime64(const time64_t*);
struct tm* localtime64_r(const time64_t*, struct tm*);
time64_t mktime64(const struct tm*);
time64_t timegm64(const struct tm*);
time64_t timelocal64(const struct tm*);
__END_DECLS
#endif
#endif /* TIME64_H */

View File

@@ -47,7 +47,8 @@ __BEGIN_DECLS
#define SEEK_CUR 1
#define SEEK_END 2
extern char **environ;
extern char** environ;
extern __noreturn void _exit(int);
extern pid_t fork(void);

View File

@@ -36,9 +36,15 @@
#define _PATH_WTMP "/var/log/wtmp"
#define _PATH_LASTLOG "/var/log/lastlog"
#define UT_NAMESIZE 8
#define UT_LINESIZE 8
#define UT_HOSTSIZE 16
#ifdef __LP64__
#define UT_NAMESIZE 32
#define UT_LINESIZE 32
#define UT_HOSTSIZE 256
#else
#define UT_NAMESIZE 8
#define UT_LINESIZE 8
#define UT_HOSTSIZE 16
#endif
#define USER_PROCESS 7

View File

@@ -34,12 +34,20 @@
#include <stdarg.h>
#include <stddef.h>
#include <time.h>
#include <malloc.h>
#include <machine/wchar_limits.h>
__BEGIN_DECLS
typedef __WINT_TYPE__ wint_t;
typedef struct { int dummy; } mbstate_t;
typedef __WINT_TYPE__ wint_t;
typedef struct {
#ifdef __LP32__
int dummy;
#else
// 8 bytes should be enough to support at least UTF-8
char __reserved[8];
#endif
} mbstate_t;
typedef enum {
WC_TYPE_INVALID = 0,
@@ -58,11 +66,6 @@ typedef enum {
WC_TYPE_MAX
} wctype_t;
#ifndef WCHAR_MAX
#define WCHAR_MAX INT_MAX
#define WCHAR_MIN INT_MIN
#endif
#define WEOF ((wint_t)(-1))
extern wint_t btowc(int);
@@ -70,6 +73,7 @@ extern int fwprintf(FILE *, const wchar_t *, ...);
extern int fwscanf(FILE *, const wchar_t *, ...);
extern int iswalnum(wint_t);
extern int iswalpha(wint_t);
extern int iswblank(wint_t);
extern int iswcntrl(wint_t);
extern int iswdigit(wint_t);
extern int iswgraph(wint_t);
@@ -90,7 +94,8 @@ extern wint_t getwchar(void);
extern int mbsinit(const mbstate_t *);
extern size_t mbrlen(const char *, size_t, mbstate_t *);
extern size_t mbrtowc(wchar_t *, const char *, size_t, mbstate_t *);
extern size_t mbsrtowcs(wchar_t *, const char **, size_t, mbstate_t *);
extern size_t mbsrtowcs(wchar_t*, const char**, size_t, mbstate_t*);
extern size_t mbsnrtowcs(wchar_t*, const char**, size_t, size_t, mbstate_t*);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern wint_t putwc(wchar_t, FILE *);
extern wint_t putwchar(wchar_t);
@@ -99,9 +104,12 @@ extern int swscanf(const wchar_t *, const wchar_t *, ...);
extern wint_t towlower(wint_t);
extern wint_t towupper(wint_t);
extern wint_t ungetwc(wint_t, FILE *);
extern int vfwprintf(FILE *, const wchar_t *, va_list);
extern int vwprintf(const wchar_t *, va_list);
extern int vswprintf(wchar_t *, size_t, const wchar_t *, va_list);
extern int vfwprintf(FILE*, const wchar_t*, va_list);
extern int vfwscanf(FILE*, const wchar_t*, va_list);
extern int vswprintf(wchar_t*, size_t, const wchar_t*, va_list);
extern int vswscanf(const wchar_t*, const wchar_t*, va_list);
extern int vwprintf(const wchar_t*, va_list);
extern int vwscanf(const wchar_t*, va_list);
extern size_t wcrtomb(char *, wchar_t, mbstate_t *);
extern int wcscasecmp(const wchar_t *, const wchar_t *);
extern wchar_t *wcscat(wchar_t *, const wchar_t *);
@@ -116,16 +124,20 @@ extern int wcsncasecmp(const wchar_t *, const wchar_t *, size_t);
extern wchar_t *wcsncat(wchar_t *, const wchar_t *, size_t);
extern int wcsncmp(const wchar_t *, const wchar_t *, size_t);
extern wchar_t *wcsncpy(wchar_t *, const wchar_t *, size_t);
extern size_t wcsnrtombs(char*, const wchar_t**, size_t, size_t, mbstate_t*);
extern wchar_t *wcspbrk(const wchar_t *, const wchar_t *);
extern wchar_t *wcsrchr(const wchar_t *, wchar_t);
extern size_t wcsrtombs(char *, const wchar_t **, size_t, mbstate_t *);
extern size_t wcsrtombs(char*, const wchar_t**, size_t, mbstate_t*);
extern size_t wcsspn(const wchar_t *, const wchar_t *);
extern wchar_t *wcsstr(const wchar_t *, const wchar_t *);
extern double wcstod(const wchar_t *, wchar_t **);
extern wchar_t *wcstok(wchar_t *, const wchar_t *, wchar_t **);
extern long int wcstol(const wchar_t *, wchar_t **, int);
extern size_t wcstombs(char *, const wchar_t *, size_t);
extern unsigned long int wcstoul(const wchar_t *, wchar_t **, int);
extern double wcstod(const wchar_t*, wchar_t**);
extern float wcstof(const wchar_t*, wchar_t**);
extern wchar_t* wcstok(wchar_t*, const wchar_t*, wchar_t**);
extern long wcstol(const wchar_t*, wchar_t**, int);
extern long long wcstoll(const wchar_t*, wchar_t**, int);
extern long double wcstold(const wchar_t*, wchar_t**);
extern unsigned long wcstoul(const wchar_t*, wchar_t**, int);
extern unsigned long long wcstoull(const wchar_t*, wchar_t**, int);
extern wchar_t *wcswcs(const wchar_t *, const wchar_t *);
extern int wcswidth(const wchar_t *, size_t);
extern size_t wcsxfrm(wchar_t *, const wchar_t *, size_t);