The gap is typically caused by having some data from the binary file located in RAM (0x4000_0000) whereas the rest of the application is placed into FLASH (0x0000_0000).
I'd guess in your case ".exec_vect_vle" section is loacted in RAM right? is it some code running from RAM?
There was very similar question related to GCC compiler: