1) Is MCU operating in single chip mode? As you may know, there are no illegal addresses in expanded modes.
2) Isn't memory protection unit (MPU) setup to trigger error on access to 0x600000'G? Try disabling MPU configuration steps and see if that makes ILAD reset working.
P.S. Are you using Codewarrior? This line should do the same what your code is doing
if( *(volatile char * far)0x600000ul ) { }