MCPcopy Create free account
hub / github.com/Moddable-OpenSource/moddable / III_aliasreduce

Function III_aliasreduce

modules/data/mp3/libmad/layer3.c:1599–1633  ·  view source on GitHub ↗

NAME: III_aliasreduce() DESCRIPTION: perform frequency line alias reduction */

Source from the content-addressed store, hash-verified

1597 DESCRIPTION: perform frequency line alias reduction
1598*/
1599static
1600void III_aliasreduce(mad_fixed_t xr[576], int lines)
1601{
1602 mad_fixed_t const *bound;
1603 int i;
1604 stack(__FUNCTION__, __FILE__, __LINE__);
1605
1606 bound = &xr[lines];
1607 for (xr += 18; xr < bound; xr += 18) {
1608 for (i = 0; i < 8; ++i) {
1609 register mad_fixed_t a, b;
1610 register mad_fixed64hi_t hi;
1611 register mad_fixed64lo_t lo;
1612
1613 a = xr[-1 - i];
1614 b = xr[ i];
1615
1616# if defined(ASO_ZEROCHECK)
1617 if (a | b) {
1618# endif
1619 MAD_F_ML0(hi, lo, a, cs(i));
1620 MAD_F_MLA(hi, lo, -b, ca(i));
1621
1622 xr[-1 - i] = MAD_F_MLZ(hi, lo);
1623
1624 MAD_F_ML0(hi, lo, b, cs(i));
1625 MAD_F_MLA(hi, lo, a, ca(i));
1626
1627 xr[ i] = MAD_F_MLZ(hi, lo);
1628# if defined(ASO_ZEROCHECK)
1629 }
1630# endif
1631 }
1632 }
1633}
1634
1635# if defined(ASO_IMDCT)
1636void III_imdct_l(mad_fixed_t const [18], mad_fixed_t [36], unsigned int);

Callers 1

III_decodeFunction · 0.85

Calls 2

csFunction · 0.85
caFunction · 0.85

Tested by

no test coverage detected