/* * Copyright (c) 2014-2016 Cesanta Software Limited * All rights reserved */#include <stdlib.h>/* * STM's startup script requires __libc_init_array for successfull * initialization. * Oficially supported IDE (Keil, IAR...) provide this function. * We use our own */externvoid(*__preinit_array_start[])(void)__attribute__((weak));externvoid(*__preinit_array_end[])(void)__attribute__((weak));externvoid(*__init_array_start[])(void)__attribute__((weak));externvoid(*__init_array_end[])(void)__attribute__((weak));void__libc_init_array(void){size_tcount;size_ti;count=__preinit_array_end-__preinit_array_start;for(i=0;i<count;i++)__preinit_array_start[i]();count=__init_array_end-__init_array_start;for(i=0;i<count;i++)__init_array_start[i]();}