The MicroBlaze processor C and math libraries
distributed with Vivado are not built to be used in a
multi-threaded environment. Common C library functions such as printf()
, scanf()
, malloc()
, and free()
are not thread-safe
and causes unrecoverable errors in the system at runtime. Use appropriate mutual
exclusion mechanisms when using the Vivado libraries
in a multi-threaded environment.