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 will
cause unrecoverable errors in the system at run-time. Use appropriate mutual exclusion
mechanisms when using the Vivado libraries in a multi-threaded
environment.