@@ -1366,6 +1366,16 @@ static float NSEEL_CGEN_CALL arburgPredictBackward(float *blocks, float *start)
1366
1366
double output = predictArburg (backwardState , predictionCoefficients , * flag );
1367
1367
return (float )output ;
1368
1368
}
1369
+ static float NSEEL_CGEN_CALL arburgPredictForward (float * blocks , float * start )
1370
+ {
1371
+ int32_t offs = (int32_t )(* start + NSEEL_CLOSEFACTOR );
1372
+ char * burg = (char * )__NSEEL_RAMAlloc (blocks , (uint64_t )offs );
1373
+ unsigned int * flag = (unsigned int * )(burg + 1 );
1374
+ double * predictionCoefficients = (double * )(flag + 1 );
1375
+ double * forwardState = ((double * )(flag + 1 )) + (* flag + 1 ) * 5 + (* flag + 2 ) * 2 ;
1376
+ double output = predictArburg (forwardState , predictionCoefficients , * flag );
1377
+ return (float )output ;
1378
+ }
1369
1379
void reverse (float * arr , int32_t start , int32_t end )
1370
1380
{
1371
1381
while (start < end )
@@ -1384,16 +1394,6 @@ void shift(float *arr, int32_t k, int32_t n)
1384
1394
reverse (arr , 0 , n - k - 1 );
1385
1395
reverse (arr , n - k , n - 1 );
1386
1396
}
1387
- static float NSEEL_CGEN_CALL arburgPredictForward (float * blocks , float * start )
1388
- {
1389
- int32_t offs = (int32_t )(* start + NSEEL_CLOSEFACTOR );
1390
- char * burg = (char * )__NSEEL_RAMAlloc (blocks , (uint64_t )offs );
1391
- unsigned int * flag = (unsigned int * )(burg + 1 );
1392
- double * predictionCoefficients = (double * )(flag + 1 );
1393
- double * forwardState = ((double * )(flag + 1 )) + (* flag + 1 ) * 5 + (* flag + 2 ) * 2 ;
1394
- double output = predictArburg (forwardState , predictionCoefficients , * flag );
1395
- return (float )output ;
1396
- }
1397
1397
float * NSEEL_CGEN_CALL __NSEEL_circshift (float * blocks , float * offptr , float * shiftptr , float * lenptr )
1398
1398
{
1399
1399
uint32_t offs = (uint32_t )(* offptr + NSEEL_CLOSEFACTOR );
0 commit comments