BootRom jumping to exception vector instead of preloader entry point

We’re developing a custom board using the Cyclone V SOC. I’ve created preloader and u-boot images. We’re booting from a QPSI device. In a debugger I can see the BootRom successfully load the preloader from the QSPI but instead of jumping to the preloader entry point the BootRom jumps to the preloaders undefined instruction exception vector. Does anyone have any idea of what the issue is or where to look for more information on what’s causing the issue?