[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] [gnuradio] 20/22: volk: fix memory overrun/corruption
From: |
git |
Subject: |
[Commit-gnuradio] [gnuradio] 20/22: volk: fix memory overrun/corruption in neon binary_slicer_8i |
Date: |
Fri, 31 Oct 2014 19:22:31 +0000 (UTC) |
This is an automated email from the git hooks/post-receive script.
jcorgan pushed a commit to branch master
in repository gnuradio.
commit 5d1c29c4491a2fcefc69857a7f2f557f6b8eff57
Author: Nathan West <address@hidden>
Date: Tue Oct 28 05:36:57 2014 -0500
volk: fix memory overrun/corruption in neon binary_slicer_8i
---
volk/kernels/volk/volk_32f_binary_slicer_8i.h | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/volk/kernels/volk/volk_32f_binary_slicer_8i.h
b/volk/kernels/volk/volk_32f_binary_slicer_8i.h
index 17b48d7..ae4420b 100644
--- a/volk/kernels/volk/volk_32f_binary_slicer_8i.h
+++ b/volk/kernels/volk/volk_32f_binary_slicer_8i.h
@@ -221,7 +221,7 @@ volk_32f_binary_slicer_8i_neon(int8_t* cVector, const
float* aVector,
int8_t* cPtr = cVector;
const float* aPtr = aVector;
unsigned int number = 0;
- unsigned int n8points = num_points / 8;
+ unsigned int n16points = num_points / 16;
float32x4x2_t input_val0, input_val1;
float32x4_t zero_val;
@@ -237,7 +237,7 @@ volk_32f_binary_slicer_8i_neon(int8_t* cVector, const
float* aVector,
// TODO: this is a good candidate for asm because the vcombines
// can be eliminated simply by picking dst registers that are
// adjacent.
- for(number = 0; number < n8points; number++) {
+ for(number = 0; number < n16points; number++) {
input_val0 = vld2q_f32(aPtr);
input_val1 = vld2q_f32(aPtr+8);
@@ -269,12 +269,12 @@ volk_32f_binary_slicer_8i_neon(int8_t* cVector, const
float* aVector,
res_u8.val[1] = vand_u8(one, res_u8.val[1]);
vst2_u8((unsigned char*)cPtr, res_u8);
- cPtr += 8;
- aPtr += 8;
+ cPtr += 16;
+ aPtr += 16;
}
- for(number = n8points * 8; number < num_points; number++) {
+ for(number = n16points * 16; number < num_points; number++) {
if(*aPtr++ >= 0) {
*cPtr++ = 1;
}
- [Commit-gnuradio] [gnuradio] 11/22: volk: add neon version of 32u_byteswap, (continued)
- [Commit-gnuradio] [gnuradio] 11/22: volk: add neon version of 32u_byteswap, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 10/22: volk: removed unused variable from neon binary slicer, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 01/22: volk: add neon kernel for 16i_convert_8i, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 14/22: volk: fixing 32u_byteswap puppet for SSE, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 13/22: volk: add neon versions for 32i bitwise operators, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 22/22: Merge commit '0c92479f', git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 19/22: volk: add neon log2 implementation and fix QA to properly test, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 15/22: volk: add neon version of complex<float> dot product, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 17/22: volk: add a neon table version of 16u_byteswap, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 21/22: volk: relax log2 qa constraints and use a higher order polynomial, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 20/22: volk: fix memory overrun/corruption in neon binary_slicer_8i,
git <=
- [Commit-gnuradio] [gnuradio] 16/22: volk: add neon kernel for 64u_byteswap and puppets for 64/16 byteswap, git, 2014/10/31
- [Commit-gnuradio] [gnuradio] 18/22: volk: fixing *byteswap sse puppet signatures, git, 2014/10/31