7.6.1 標準ライブラリ

以下に,標準ライブラリに含まれている各種関数の割り込み禁止時間,初期値ありデータ用セクション(.data)の使用有無,初期値なしデータ用セクション(.bss)の使用有無,リエントラント性を示します。

割り込み禁止時間は,左から乗除・積和演算器および乗除算拡張命令非使用時,乗除・積和演算器使用時,乗除算拡張命令使用時(単精度),乗除算拡張命令使用時(倍精度)を表します。数値の記述が1つしかないものは,各ライブラリで共通です。

関数名

割り込み禁止時間

.data使用

.bss使用

リエントラント性

備考

(非リエントラント性の要因)

assert

0

×

×

 

isalnum

0

×

×

 

isalpha

0

×

×

 

isascii

0

×

×

 

isblank 【V1.07以降】

0

×

×

(C99)

iscntrl

0

×

×

 

isdigit

0

×

×

 

isgraph

0

×

×

 

islower

0

×

×

 

isprint

0

×

×

 

ispunct

0

×

×

 

isspace

0

×

×

 

isupper

0

×

×

 

isxdigit

0

×

×

 

toascii

0

×

×

 

tolower

0

×

×

 

toupper

0

×

×

 

imaxabs 【V1.07以降】

0

×

×

(C99)

imaxdiv 【V1.07以降】

0/42/0/0

×

×

(C99)

strtoimax 【V1.07以降】

0/43/0/0

×

×

errno(C99)

_COM_strtoimax_ff 【V1.07以降】

0/43/0/0

×

×

errno(C99)

strtoumax 【V1.07以降】

0/43/0/0

×

×

errno(C99)

_COM_strtoumax_ff 【V1.07以降】

0/43/0/0

×

×

errno(C99)

acos

0/41/0/0

×

×

errno

acosf

0/41/0/0

×

×

errno

asin

0/41/0/0

×

×

errno

asinf

0/41/0/0

×

×

errno

atan

0/41/0/0

×

×

errno

atanf

0/41/0/0

×

×

errno

atan2

0/41/0/0

×

×

errno

atan2f

0/41/0/0

×

×

errno

cos

0/14/0/0

×

×

errno

cosf

0/14/0/0

×

×

errno

sin

0/14/0/0

×

×

errno

sinf

0/14/0/0

×

×

errno

tan

0/41/0/0

×

×

errno

tanf

0/41/0/0

×

×

errno

cosh

0/41/0/0

×

×

errno

coshf

0/41/0/0

×

×

errno

sinh

0/41/0/0

×

×

errno

sinhf

0/41/0/0

×

×

errno

tanh

0/41/0/0

×

×

errno

tanhf

0/41/0/0

×

×

errno

exp

0/41/0/0

×

×

errno

expf

0/41/0/0

×

×

errno

frexp

0

×

×

errno

frexpf

0

×

×

errno

ldexp

0

×

×

errno

ldexpf

0

×

×

errno

log

0/14/0/0

×

×

errno

logf

0/14/0/0

×

×

errno

log10

0/14/0/0

×

×

errno

log10f

0/14/0/0

×

×

errno

modf

0

×

×

errno

modff

0

×

×

errno

pow

0/41/0/0

×

×

errno

powf

0/41/0/0

×

×

errno

sqrt

0/41/0/0

×

×

errno

sqrtf

0/41/0/0

×

×

errno

ceil

0

×

×

errno

ceilf

0

×

×

errno

fabs

0

×

×

errno

fabsf

0

×

×

errno

floor

0

×

×

errno

floorf

0

×

×

errno

fmod

0/14/0/0

×

×

errno

fmodf

0/14/0/0

×

×

errno

setjmp

0

×

×

ポインタ参照先が更新された場合

longjmp

0

×

×

×

SP

va_start

0

×

×

 

va_arg

0

×

×

 

va_end

0

×

×

 

printf

0/43/0/0

×

×

stdout,内部管理データ

scanf

0/41/0/0

×

×

stdin

snprintf 【V1.07以降】

0/43/0/0

×

×

内部管理データ(C99)

sprintf

0/43/0/0

×

×

内部管理データ

sscanf

0/41/0/0

×

ポインタ参照先が更新された場合

vprintf

0/43/0/0

×

×

stdout,内部管理データ

vsnprintf 【V1.07以降】

0/43/0/0

×

×

内部管理データ(C99)

vsprintf

0/43/0/0

×

×

内部管理データ

getchar

0

×

×

×

stdin

gets

0

×

×

×

stdin

_COM_gets_f

0

×

×

×

stdin

putchar

0

×

×

×

stdout

puts

0

×

×

×

stdout

_COM_puts_f

0

×

×

×

stdout

perror

0

×

×

errno

_COM_perror_f

0

×

×

errno

atof

0/41/0/0

×

×

errno

_COM_atof_f

0/41/0/0

×

×

errno

atoff

0/41/0/0

×

×

errno

_COM_atoff_f

0/41/0/0

×

×

errno

atoi

0/40/0/0

×

×

errno

_COM_atoi_f

0/40/0/0

×

×

errno

atol

0/40/0/0

×

×

errno

_COM_atol_f

0/40/0/0

×

×

errno

atoll 【V1.07以降】

0/43/0/0

×

×

errno(C99)

_COM_atoll_f 【V1.07以降】

0/43/0/0

×

×

errno(C99)

strtod

0/41/0/0

×

×

errno

_COM_strtod_ff

0/41/0/0

×

×

errno

strtof

0/41/0/0

×

×

errno

_COM_strtof_ff

0/41/0/0

×

×

errno

strtold 【V1.07以降】

0/41/0/0

×

×

errno(C99)

_COM_strtold_ff 【V1.07以降】

0/41/0/0

×

×

errno(C99)

strtol

0/40/0/0

×

×

errno

_COM_strtol_ff

0/40/0/0

×

×

errno

strtoll 【V1.07以降】

0/43/0/0

×

×

errno(C99)

_COM_strtoll_ff 【V1.07以降】

0/43/0/0

×

×

errno(C99)

strtoul

0/40/0/0

×

×

errno

_COM_strtoul_ff

0/40/0/0

×

×

errno

strtoull 【V1.07以降】

0/43/0/0

×

×

errno(C99)

_COM_strtoull_ff 【V1.07以降】

0/43/0/0

×

×

errno(C99)

rand

0/24/0/0

×

×

seed

srand

0

×

×

seed

calloc 【V1.02以降】

0

×

内部管理データ

free 【V1.02以降】

0

×

内部管理データ

malloc 【V1.02以降】

0

×

内部管理データ

realloc 【V1.02以降】

0

×

内部管理データ

abort

0

×

×

-

処理が戻らないため

bsearch

0

×

×

ポインタ参照先が更新された場合

_COM_bsearch_f

0

×

×

ポインタ参照先が更新された場合

qsort

0/40/0/0

×

×

ポインタ参照先が更新された場合

_COM_qsort_f

0/40/0/0

×

×

ポインタ参照先が更新された場合

abs

0

×

×

 

div

0/39/0/0

×

×

 

labs

0

×

×

 

ldiv

0/45/0/0

×

×

 

llabs 【V1.07以降】

0

×

×

(C99)

lldiv 【V1.07以降】

0/42/0/0

×

×

(C99)

memcpy

0

×

×

ポインタ参照先が更新された場合

_COM_memcpy_f

0

×

×

ポインタ参照先が更新された場合

memmove

0

×

×

ポインタ参照先が更新された場合

_COM_memmove_ff

0

×

×

ポインタ参照先が更新された場合

strcpy

0

×

×

ポインタ参照先が更新された場合

_COM_strcpy_ff

0

×

×

ポインタ参照先が更新された場合

strncpy

0

×

×

ポインタ参照先が更新された場合

_COM_strncpy_ff

0

×

×

ポインタ参照先が更新された場合

strcat

0

×

×

ポインタ参照先が更新された場合

_COM_strcat_ff

0

×

×

ポインタ参照先が更新された場合

strncat

0

×

×

ポインタ参照先が更新された場合

_COM_strncat_ff

0

×

×

ポインタ参照先が更新された場合

memcmp

0

×

×

ポインタ参照先が更新された場合

_COM_memcmp_ff

0

×

×

ポインタ参照先が更新された場合

strcmp

0

×

×

ポインタ参照先が更新された場合

_COM_strcmp_ff

0

×

×

ポインタ参照先が更新された場合

strncmp

0

×

×

ポインタ参照先が更新された場合

_COM_strncmp_ff

0

×

×

ポインタ参照先が更新された場合

memchr

0

×

×

ポインタ参照先が更新された場合

_COM_memchr_f

0

×

×

ポインタ参照先が更新された場合

strchr

0

×

×

ポインタ参照先が更新された場合

_COM_strchr_f

0

×

×

ポインタ参照先が更新された場合

strcspn

0

×

×

ポインタ参照先が更新された場合

_COM_strcspn_ff

0

×

×

ポインタ参照先が更新された場合

strpbrk

0

×

×

ポインタ参照先が更新された場合

_COM_strpbrk_ff

0

×

×

ポインタ参照先が更新された場合

strrchr

0

×

×

ポインタ参照先が更新された場合

_COM_strrchr_f

0

×

×

ポインタ参照先が更新された場合

strspn

0

×

×

ポインタ参照先が更新された場合

_COM_strspn_ff

0

×

×

ポインタ参照先が更新された場合

strstr

0

×

×

ポインタ参照先が更新された場合

_COM_strstr_ff

0

×

×

ポインタ参照先が更新された場合

strtok

0

×

×

内部管理データ

memset

0

×

×

ポインタ参照先が更新された場合

_COM_memset_f

0

×

×

ポインタ参照先が更新された場合

strerror

0

×

×

 

strlen

0

×

×

ポインタ参照先が更新された場合

_COM_strlen_f

0

×

×

ポインタ参照先が更新された場合

hdwinit

0

×

×

×

初期化処理

stkinit

0

×

×

×

初期化処理