+++ /dev/null
-extern void abort (void);
-
-typedef signed short int16_t;
-typedef unsigned short uint16_t;
-
-int16_t logadd (int16_t *a, int16_t *b);
-void ba_compute_psd (int16_t start);
-
-int16_t masktab[6] = { 1, 2, 3, 4, 5};
-int16_t psd[6] = { 50, 40, 30, 20, 10};
-int16_t bndpsd[6] = { 1, 2, 3, 4, 5};
-
-void ba_compute_psd (int16_t start)
-{
- int i,j,k;
- int16_t lastbin = 4;
-
- j = start;
- k = masktab[start];
-
- bndpsd[k] = psd[j];
- j++;
-
- for (i = j; i < lastbin; i++) {
- bndpsd[k] = logadd(&bndpsd[k], &psd[j]);
- j++;
- }
-}
-
-int16_t logadd (int16_t *a, int16_t *b)
-{
- return *a + *b;
-}
-
-int main (void)
-{
- int i;
-
- ba_compute_psd (0);
-
- if (bndpsd[1] != 140) abort ();
- return 0;
-}
-