Replace HAVE_ARMv7 with HAVE_ARMv6 if the instructions are supported by ARMv6.
ssat, usat and sxth are present under ARMv6: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0473k/dom1361289925707.html
.align 2
.macro sgnxt16 rd rs
-#ifdef HAVE_ARMV7
+#ifdef HAVE_ARMV6
sxth \rd, \rs
#else
lsl \rd, \rs, #16
.endm
.macro ssatx rd wr bit
-#ifdef HAVE_ARMV7
+#ifdef HAVE_ARMV6
ssat \rd, #\bit, \rd
#else
cmp \rd, \wr
.endm
.macro usat16_ rd rs
-#ifdef HAVE_ARMV7
+#ifdef HAVE_ARMV6
usat \rd, #16, \rs
#else
subs \rd, \rs, #0