/* This is the code that gets called on processor reset. To initialize the device, and call the main() routine.  */
void Reset_Handler(void)
/* This is the code that gets called on processor reset. To initialize the device, and call the main() routine.  */
void Reset_Handler(void)
{
	uint32_t *pSrc, *pDest;
	pSrc = &_etext;
	pDest = &_srelocate;
	if (pSrc != pDest) {
		for (; pDest < &_erelocate;) {
			*pDest++ = *pSrc++;
		}
	}
	for (pDest = &_szero; pDest < &_ezero;) {
		*pDest++ = 0;
	}
	pSrc = (uint32_t *) & _sfixed;
	SCB->VTOR = ((uint32_t) pSrc & SCB_VTOR_TBLOFF_Msk);
	if (((uint32_t) pSrc >= IRAM0_ADDR) && ((uint32_t) pSrc < IRAM0_ADDR + IRAM_SIZE)) {
		SCB->VTOR |= 1 << SCB_VTOR_TBLBASE_Pos;
	}
	__libc_init_array();
	main();
	while (1);
}