FastLED 3.9.15
Loading...
Searching...
No Matches

◆ imdct_step3_inner_s_loop_ld654()

static void fl::third_party::vorbis::imdct_step3_inner_s_loop_ld654 ( int32_t n,
float * e,
int32_t i_off,
float * A,
int32_t base_n )
static

Definition at line 2315 of file stb_vorbis.cpp.hpp.

2316{
2317 int32_t a_off = base_n >> 3;
2318 // Renamed from A2 to avoid conflict with Arduino analog pin macro
2319 float aa2 = A[0+a_off];
2320 float *z = e + i_off;
2321 float *base = z - 16 * n;
2322
2323 while (z > base) {
2324 float k00,k11;
2325 float l00,l11;
2326
2327 k00 = z[-0] - z[ -8];
2328 k11 = z[-1] - z[ -9];
2329 l00 = z[-2] - z[-10];
2330 l11 = z[-3] - z[-11];
2331 z[ -0] = z[-0] + z[ -8];
2332 z[ -1] = z[-1] + z[ -9];
2333 z[ -2] = z[-2] + z[-10];
2334 z[ -3] = z[-3] + z[-11];
2335 z[ -8] = k00;
2336 z[ -9] = k11;
2337 z[-10] = (l00+l11) * aa2;
2338 z[-11] = (l11-l00) * aa2;
2339
2340 k00 = z[ -4] - z[-12];
2341 k11 = z[ -5] - z[-13];
2342 l00 = z[ -6] - z[-14];
2343 l11 = z[ -7] - z[-15];
2344 z[ -4] = z[ -4] + z[-12];
2345 z[ -5] = z[ -5] + z[-13];
2346 z[ -6] = z[ -6] + z[-14];
2347 z[ -7] = z[ -7] + z[-15];
2348 z[-12] = k11;
2349 z[-13] = -k00;
2350 z[-14] = (l11-l00) * aa2;
2351 z[-15] = (l00+l11) * -aa2;
2352
2353 iter_54(z);
2354 iter_54(z-8);
2355 z -= 16;
2356 }
2357}
uint32_t z[NUM_LAYERS]
Definition Fire2023.h:93
FL_ALWAYS_INLINE void iter_54(float *z) FL_NOEXCEPT
fl::i32 int32_t
Definition coder.h:220

References FL_NOEXCEPT, iter_54(), and z.

Referenced by inverse_mdct().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: