summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/codecs/amrwbenc/src
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@gmail.com>2012-08-13 22:44:43 +0200
committerArd Biesheuvel <ard.biesheuvel@gmail.com>2012-08-13 22:44:43 +0200
commit74bc3e133bd59a65dbed70b5fc89549f04a545e2 (patch)
tree931b7ebb4ccdf834d740784be617257eb7c41deb /media/libstagefright/codecs/amrwbenc/src
parent24893fef8e0f816a8a21749fa3eb9eed9173a0fd (diff)
downloadframeworks_av-74bc3e133bd59a65dbed70b5fc89549f04a545e2.zip
frameworks_av-74bc3e133bd59a65dbed70b5fc89549f04a545e2.tar.gz
frameworks_av-74bc3e133bd59a65dbed70b5fc89549f04a545e2.tar.bz2
hardening: eliminate text relocations from amrwb
Change-Id: I47235fc4afe6b916da1e999401fb3c8b12c94e62
Diffstat (limited to 'media/libstagefright/codecs/amrwbenc/src')
-rw-r--r--media/libstagefright/codecs/amrwbenc/src/asm/ARMV5E/Filt_6k_7k_opt.s6
-rw-r--r--media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/Filt_6k_7k_neon.s6
-rw-r--r--media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/pred_lt4_1_neon.s6
3 files changed, 12 insertions, 6 deletions
diff --git a/media/libstagefright/codecs/amrwbenc/src/asm/ARMV5E/Filt_6k_7k_opt.s b/media/libstagefright/codecs/amrwbenc/src/asm/ARMV5E/Filt_6k_7k_opt.s
index 856ada8..8451195 100644
--- a/media/libstagefright/codecs/amrwbenc/src/asm/ARMV5E/Filt_6k_7k_opt.s
+++ b/media/libstagefright/codecs/amrwbenc/src/asm/ARMV5E/Filt_6k_7k_opt.s
@@ -43,7 +43,9 @@ Filt_6k_7k_asm:
MOV r2, #30 @ L_FIR - 1
BL voAWB_Copy @ memcpy(x, mem, (L_FIR - 1)<<1)
- LDR r10, Lable1 @ get fir_7k address
+ ADR r3, Lable1 @ get fir_7k address
+ LDR r10, [r3]
+ ADD r10, r3
MOV r14, #0
MOV r3, r8 @ change myMemCopy to Copy, due to Copy will change r3 content
@@ -178,7 +180,7 @@ Filt_6k_7k_end:
LDMFD r13!, {r4 - r12, r15}
Lable1:
- .word fir_6k_7k
+ .word fir_6k_7k-Lable1
@ENDFUNC
.END
diff --git a/media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/Filt_6k_7k_neon.s b/media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/Filt_6k_7k_neon.s
index 14ba828..fc42a03 100644
--- a/media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/Filt_6k_7k_neon.s
+++ b/media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/Filt_6k_7k_neon.s
@@ -49,7 +49,9 @@ Filt_6k_7k_asm:
- LDR r10, Lable1 @ get fir_7k address
+ ADR r3, Lable1 @ get fir_7k address
+ LDR r10, [r3]
+ ADD r10, r3
MOV r3, r8 @ change myMemCopy to Copy, due to Copy will change r3 content
ADD r6, r13, #60 @ get x[L_FIR - 1] address
MOV r7, r3 @ get signal[i]
@@ -221,7 +223,7 @@ Filt_6k_7k_end:
LDMFD r13!, {r0 - r12, r15}
Lable1:
- .word fir_6k_7k
+ .word fir_6k_7k-Lable1
@ENDFUNC
.END
diff --git a/media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/pred_lt4_1_neon.s b/media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/pred_lt4_1_neon.s
index 6b782cb..8d2aaf2 100644
--- a/media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/pred_lt4_1_neon.s
+++ b/media/libstagefright/codecs/amrwbenc/src/asm/ARMV7/pred_lt4_1_neon.s
@@ -40,7 +40,9 @@ pred_lt4_asm:
ADDLT r2, r2, #4 @ frac += UP_SAMP
SUBLT r4, r4, #2 @ x--
- LDR r11, Lable1
+ ADR r8, Lable1
+ LDR r11, [r8]
+ ADD r11, r8
RSB r2, r2, #3 @ k = UP_SAMP - 1 - frac
MOV r8, #0 @ j = 0
ADD r11, r11, r2, LSL #6 @ get inter4_2[k][]
@@ -94,7 +96,7 @@ pred_lt4_end:
LDMFD r13!, {r4 - r12, r15}
Lable1:
- .word inter4_2
+ .word inter4_2-Lable1
@ENDFUNC
.END