summaryrefslogtreecommitdiff
path: root/taia_add.c
blob: a596cc80772b26174f0f2b2a84d41c89249c4070 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "taia.h"

/* XXX: breaks tai encapsulation */

void taia_add(struct taia *t,struct taia *u,struct taia *v)
{
  t->sec.x = u->sec.x + v->sec.x;
  t->nano = u->nano + v->nano;
  t->atto = u->atto + v->atto;
  if (t->atto > 999999999UL) {
    t->atto -= 1000000000UL;
    ++t->nano;
  }
  if (t->nano > 999999999UL) {
    t->nano -= 1000000000UL;
    ++t->sec.x;
  }
}