diff options
author | Chris Robinson <chris.kcat@gmail.com> | 2021-11-25 20:22:12 -0800 |
---|---|---|
committer | Chris Robinson <chris.kcat@gmail.com> | 2021-11-25 20:22:12 -0800 |
commit | c5831c92f38fb1200380ad8bb6ff6b8ce44279b9 (patch) | |
tree | a123fa4330e6a3ea09bb74d53745732f14f66dcd | |
parent | d5707b318495829e489196f8c3f02e7cd8085e2e (diff) |
Don't assume the UhjDecoder::decode offset is 16-byte aligned
It's not, it's MaxResamplerEdge which is currently 24.
-rw-r--r-- | core/uhjfilter.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/core/uhjfilter.cpp b/core/uhjfilter.cpp index 0e583965..a7b68300 100644 --- a/core/uhjfilter.cpp +++ b/core/uhjfilter.cpp @@ -109,9 +109,9 @@ void UhjDecoder::decode(const al::span<BufferLine> samples, const size_t offset, ASSUME(samplesToDo > 0); { - const float *RESTRICT left{al::assume_aligned<16>(samples[0].data() + offset)}; - const float *RESTRICT right{al::assume_aligned<16>(samples[1].data() + offset)}; - const float *RESTRICT t{al::assume_aligned<16>(samples[2].data() + offset)}; + const float *RESTRICT left{samples[0].data() + offset}; + const float *RESTRICT right{samples[1].data() + offset}; + const float *RESTRICT t{samples[2].data() + offset}; /* S = Left + Right */ for(size_t i{0};i < samplesToDo+sFilterDelay;++i) @@ -126,9 +126,9 @@ void UhjDecoder::decode(const al::span<BufferLine> samples, const size_t offset, mT[i] = t[i]; } - float *RESTRICT woutput{al::assume_aligned<16>(samples[0].data() + offset)}; - float *RESTRICT xoutput{al::assume_aligned<16>(samples[1].data() + offset)}; - float *RESTRICT youtput{al::assume_aligned<16>(samples[2].data() + offset)}; + float *RESTRICT woutput{samples[0].data() + offset}; + float *RESTRICT xoutput{samples[1].data() + offset}; + float *RESTRICT youtput{samples[2].data() + offset}; /* Precompute j(0.828347*D + 0.767835*T) and store in xoutput. */ auto tmpiter = std::copy(mDTHistory.cbegin(), mDTHistory.cend(), mTemp.begin()); |