summaryrefslogtreecommitdiffstats
path: root/common/arm
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2015-06-09 22:56:14 +0300
committerMarco Nelissen <marcone@google.com>2015-06-24 20:45:21 +0000
commitd847c7fd842c0737344346ecabb3524aa2b279b8 (patch)
tree57d1135eba9a022d63f55898d50d22bc2b8debf1 /common/arm
parent622cf7a8381ea02aec35e870a92f6f3dc334dea0 (diff)
downloadandroid_external_libavc-d847c7fd842c0737344346ecabb3524aa2b279b8.tar.gz
android_external_libavc-d847c7fd842c0737344346ecabb3524aa2b279b8.tar.bz2
android_external_libavc-d847c7fd842c0737344346ecabb3524aa2b279b8.zip
arm: Use unified syntax, ldrsheq instead of ldreqsh
clang only supports the new, unified arm syntax (UAL), while binutils gas supports both (and defaults to the old syntax). Explicitly declare that the unified syntax is used, and use the right form of these instructions that is supported by both. Change-Id: I9a3940e060c129861c7a542ccf09035dbd1766ae
Diffstat (limited to 'common/arm')
-rw-r--r--common/arm/ih264_iquant_itrans_recon_a9.s3
-rw-r--r--common/arm/ih264_iquant_itrans_recon_dc_a9.s3
2 files changed, 4 insertions, 2 deletions
diff --git a/common/arm/ih264_iquant_itrans_recon_a9.s b/common/arm/ih264_iquant_itrans_recon_a9.s
index 4e49f6a..a6af1cb 100644
--- a/common/arm/ih264_iquant_itrans_recon_a9.s
+++ b/common/arm/ih264_iquant_itrans_recon_a9.s
@@ -106,6 +106,7 @@
@r8 => iq_start_idx
@r10=> pi2_dc_ld_addr
.text
+.syntax unified
.p2align 2
.global ih264_iquant_itrans_recon_4x4_a9
@@ -141,7 +142,7 @@ ih264_iquant_itrans_recon_4x4_a9:
vmul.s16 q11, q11, q14 @x[i]=(scale[i] * dequant[i]) where i = 8..15
subs r8, r8, #1 @ if r8 == 1 => intra case , so result of subtraction is zero and Z flag is set
- ldreqsh r9, [r10] @ Loads signed halfword pi2_dc_ld_addr[0], if r8==1
+ ldrsheq r9, [r10] @ Loads signed halfword pi2_dc_ld_addr[0], if r8==1
vmull.s16 q0, d16, d20 @ Q0 = p[i] = (x[i] * trns_coeff[i]) where i = 0..3
vmull.s16 q1, d17, d21 @ Q1 = p[i] = (x[i] * trns_coeff[i]) where i = 4..7
diff --git a/common/arm/ih264_iquant_itrans_recon_dc_a9.s b/common/arm/ih264_iquant_itrans_recon_dc_a9.s
index 97c4724..d12665f 100644
--- a/common/arm/ih264_iquant_itrans_recon_dc_a9.s
+++ b/common/arm/ih264_iquant_itrans_recon_dc_a9.s
@@ -108,6 +108,7 @@
@unused => pi2_dc_ld_addr
.text
+.syntax unified
.p2align 2
.global ih264_iquant_itrans_recon_4x4_dc_a9
@@ -136,7 +137,7 @@ ih264_iquant_itrans_recon_4x4_dc_a9:
asr r6, r6, #4 @q0 = (pi2_src[0]*pu2_iscal_mat[0]*pu2_weigh_mat[0] + rnd_fact)<<(u4_qp_div_6-4)
subs r9, r9, #1 @ if r8 == 1 => intra case , so result of subtraction is zero and Z flag is set
- ldreqsh r10, [r0] @ Loads signed halfword pi2_src[0], if r9==1
+ ldrsheq r10, [r0] @ Loads signed halfword pi2_src[0], if r9==1
moveq r6, r10 @ Restore dc value in case of intra, i.e. r9 == 1
add r6, r6, #32 @i_macro = q0 + 32