OSDN Git Service

tcg/arm: add bswap ops
authorAurelien Jarno <aurelien@aurel32.net>
Fri, 9 Apr 2010 18:52:48 +0000 (20:52 +0200)
committerAurelien Jarno <aurelien@aurel32.net>
Mon, 19 Apr 2010 05:03:02 +0000 (07:03 +0200)
commit244b1e81f6afc2ddc866a6dbad42ccafd10c246b
tree994da373128d5911745ab0d08a83398f12dc094f
parent9517094f720097b51854ef458ffb1971720dddfa
tcg/arm: add bswap ops

Add an bswap16 and bswap32 ops, either using the rev and rev16
instructions on ARMv6+ or shifts and logical operations on previous
ARM versions. In both cases the result use less instructions than
the pure TCG version.

These ops are also needed by the qemu_ld/st functions.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
tcg/arm/tcg-target.c
tcg/arm/tcg-target.h