Home
last modified time | relevance | path

Searched hist:"36 e784f621bf5d5be9183beba35f39426277c110" (Results 1 – 2 of 2) sorted by relevance

/optee_os/lib/libutils/ext/arch/arm/
H A Dauxval.c36e784f621bf5d5be9183beba35f39426277c110 Tue Oct 13 19:45:39 UTC 2020 Volodymyr Babchuk <volodymyr_babchuk@epam.com> libutils: provide empty __getauxval() implementation

Never version of libgcc are built with LSE implementation in mind. To
determine if LSE is available on platform it calls __getauxval(), so in
some cases we can get undefined reference to __getauxval() error.

Prominent case is libgcc_eh.a library, which is used by C++ TAs. Exception
handler depends on atomic operations, so it tries to call
init_have_lse_atomics() first. This function in turn calls __getauxval(),
which causes linking error.

In the future we can make __getauxval() to return actual platform
capabilities.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome@forissier.org>
H A Dsub.mk36e784f621bf5d5be9183beba35f39426277c110 Tue Oct 13 19:45:39 UTC 2020 Volodymyr Babchuk <volodymyr_babchuk@epam.com> libutils: provide empty __getauxval() implementation

Never version of libgcc are built with LSE implementation in mind. To
determine if LSE is available on platform it calls __getauxval(), so in
some cases we can get undefined reference to __getauxval() error.

Prominent case is libgcc_eh.a library, which is used by C++ TAs. Exception
handler depends on atomic operations, so it tries to call
init_have_lse_atomics() first. This function in turn calls __getauxval(),
which causes linking error.

In the future we can make __getauxval() to return actual platform
capabilities.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome@forissier.org>