There may be an error in how MCUXpresso shows the values of the stacked registers after a hard fault. It always appears to show the data from the Main Stack Pointer. I've a situation where the exception happens during thread mode and the registers are saved on the Process Stack Pointer. The LR has a value of 0xffffffed. In this case it would be more helpful if the IDE showed the registers from the PSP. In particular, the unstacked LR and PC are misleading as they are not related to the code that was executing at the time of the exception.
MCUXpresso version 10.3.1 and 11.0.0
iMXRT1021 EVAL board
LCP-LINK2 emulator probe
Windows 7 64-bit.