eCosTM Reference Manual
Prev | Chapter 20. Package: Math Library | Next

# Component: Thread safety

#### Macro name

CYGPKG_LIBM_THREAD_SAFETY

#### Type

Dummy

#### Description

This option controls whether the C library has support for thread safe operation in general. This requires eCos kernel support for per-thread data, and adjustment of the stack limit.

## Option: Compatibility mode setting

#### Macro name

CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE

#### Type

Boolean

#### Description

This option makes the setting of the compatibility mode be a per-thread property. This directly implies that it also becomes thread-safe.

## Option: gamma() and lgamma()

#### Macro name

CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS

#### Type

Boolean

#### Description

This option makes the gamma() and lgamma() functions be thread-safe. Note that these functions are identical - they take the log of the absolute value of their argument. The sign of the argument is stored in a variable called signgam. Enabling this option makes signgam a per-thread variable. Note there are also gamma_r() and lgamma_r() alternatives that allow signgam to be passed in by reference as an argument.

Prev | Home | Next
Package: Math Library | Up | Component: Tracing output levels in Math library