Dear All,
We are working with MPC566EVB and CodeWarrior Compiler8.1 for coding ou application. Our flow of code is like this.
We are calling a ?contoller()? function with in a main() and this functio is performing a large no. of floating point calculations. Fo initialization, we are using a 565_axiom_flash_init.cfg file in whic necessary registers/bits are initialized that supports floating poin operations and other MPC566 instructions. After compiling/building, we ar downloading the application in Internal Flash and then trying to execute i from debugger.
While debugging, we are able to see the mixed (both C and Assembly) Cod in our main.c file. Now, as soon as we step into the ?controller() function, a ?machine_check_exception? is generated.
Following is the assembly code for the ?controller()? function and th instruction at which this exception occurred:
{ 00002510: 942180E0 stwu rsp,-32544(rsp) 00002514: 7C0802A6 mflr r0 00002518: 90017F24 stw r0,32548(rsp) 0000251C: 39617F20 addi r11,rsp,32544 00002520: 48006745 bl __save_fpr (0x8c64) 00002524: BDC17E48 stmw r14,32328(rsp) 00002528: 7C3F0B78 mr r31,rsp 0000252C: 80010000 lwz r0,0(rsp) 00002530: 3D60FFFE lis r11,-2 00002534: 396B19F0 addi r11,r11,6640 00002538: 7C01596E stwux r0,rsp,r11