Actual source code: rs6000_time.c
2: #include petsc.h
3: #if defined (PETSC_USE_READ_REAL_TIME)
4: #include <sys/time.h>
5: #include <sys/systemcfg.h>
9: PetscLogDouble rs6000_time(void)
10: {
11: timebasestruct_t t;
12: PetscLogDouble time;
16: /* read in the register values */
17: read_real_time(&t,TIMEBASE_SZ);
18:
19: /*
20: * Call the conversion routines unconditionally, to ensure
21: * that both values are in seconds and nanoseconds regardless
22: * of the hardware platform.
23: */
24: time_base_to_time(&t,TIMEBASE_SZ);
25:
26: time = t.tb_high + t.tb_low*1.0e-9;
27: PetscFunctionReturn(time);
28: }
29: #endif