Context switching for VFP registers on Cortex-A8 board.

Thomas Kim thomas73.kim at gmail.com
Tue Dec 2 10:16:30 UTC 2014


Dear  Sir.

I completed to port RTEMS on Cortex-A8 board using below option.
  CPU_CFLAGS = -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp
At this time, RTEMS sample example(ticker.exe) is working very well.

Because there is a problem for executing C++ exception example using
"-mfloat-abi=softfp", I changed below option.
  CPU_CFLAGS = -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=hard

After I rebuild RTEMS using "-mfloat-abi=hard", I am tring to test both
ticker.exe and cxx_throw.exe.
But, both examples are crashed in mount() function of
rtems_filesystem_initialize().
In detailly, memcpy() of alloc_mount_table_entry() is called, exception is
ocurred.

I am guessing that the context switching for NEON/VFP registers by thread
dispatcher is not correct.

As I know in current RTEMS source,NEON/VFP registers({d8-d15}  only) are
saved and restored.

Is it correct feature ?

Best Regards,
Thomas Kim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20141202/bb8f2a73/attachment.html>


More information about the users mailing list