XScale: context restore, cleanup/bugfix
commitda7c202b5751c1420be6725c6eb456a2f723ba74
authorDavid Brownell <dbrownell@users.sourceforge.net>
Tue, 1 Dec 2009 03:14:19 +0000 (30 19:14 -0800)
committerDavid Brownell <dbrownell@users.sourceforge.net>
Tue, 1 Dec 2009 03:14:19 +0000 (30 19:14 -0800)
treeb7d1a45306c540e98233e81c4404d7e0b52181a8
parent8fc5a9a5e90ba1c7580e9d883aed0d790e594c8e
XScale: context restore, cleanup/bugfix

This "loop over all registers" routine shared the same mess as
full_context() in terms of dozens of needless number_to_mode()
calls.  Fix that, and comments, with related cleanup.

The misnamed xscale_restore_context() had a related bug.  It
was restoring the *WRONG REGISTERS* ... always from whatever
the current mode was, instead of using the copy from whichever
register bank it was trying to restore.  (But it marked the
intended register as having been restored...)  Fixed that.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
src/target/xscale.c