I am fighting for every byte trying to put a boot loader in 1 Flash sector. The routines __do_global_dtors_aux and frame_dummy are linked into my plain C program, but are never referenced. How do I get rid of them?
Also what is _global_impure_ptr and how do I get rid of it?
I found I can get rid of the routines __do_global_dtors_aux and frame_dummy by commenting out the .init_array and .fini_array sections of the *.ld file. But I still have the _global_impure_ptr and the unused routines _init and _fini at the end of the created listing. I used the project wizard to create a minimal sdk2 project for the MK22FX512AVLQ12 with no drivers and no rtos, turned on the create extended listing in toolchains and compiled.
Mike
MK22FX512AVLQ12
I started out with the SDK2 usb_device_msc_ramdisk project and added code routines from Kinetis_MK60N512VMD100_msd_bootloader.
The bootloader basically works; I am just trying to get it smaller in size.
Mike
Hi Michael,
Could you tell us which MCU are you using?
Also, are you running an example project?
Thanks in advance!
Best Regards,
Carlos Mendoza
Technical Support Engineer