ARM: mm: improve do_ldrd_abort macro
authorRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 25 Aug 2015 13:59:15 +0000 (14:59 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 25 Aug 2015 15:14:42 +0000 (16:14 +0100)
commit08446b129bbde34665c423d882f857a45b8c3aed
tree7278a8a8e379265d9853f41af208bc7e1c738196
parent1fb6755f16872ad256c18cce2830f9087502dffd
ARM: mm: improve do_ldrd_abort macro

Improve the do_ldrd_abort macro code - firstly, it inefficiently checks
for the LDRD encoding by doing a multi-stage test of various bits.  This
can be simplified by generating a mask, bitmasking the instruction and
then comparing the result.

Secondly, we want to be able to test the result rather than branching
to do_DataAbort, so remove the branch at the end and rename the macro
to 'teq_ldrd' to reflect it's new usage.  teq_ldrd macro returns 'eq'
if the instruction was a LDRD.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mm/abort-ev5t.S
arch/arm/mm/abort-ev5tj.S
arch/arm/mm/abort-ev6.S
arch/arm/mm/abort-macro.S