|
@@ -21,7 +21,7 @@ __kernel_clock_gettime:
|
|
|
.cfi_startproc
|
|
|
larl %r5,_vdso_data
|
|
|
cghi %r2,__CLOCK_REALTIME
|
|
|
- je 4f
|
|
|
+ je 5f
|
|
|
cghi %r2,__CLOCK_THREAD_CPUTIME_ID
|
|
|
je 9f
|
|
|
cghi %r2,-2 /* Per-thread CPUCLOCK with PID=0, VIRT=1 */
|
|
@@ -30,8 +30,6 @@ __kernel_clock_gettime:
|
|
|
jne 12f
|
|
|
|
|
|
/* CLOCK_MONOTONIC */
|
|
|
- ltgr %r3,%r3
|
|
|
- jz 3f /* tp == NULL */
|
|
|
0: lg %r4,__VDSO_UPD_COUNT(%r5) /* load update counter */
|
|
|
tmll %r4,0x0001 /* pending update ? loop */
|
|
|
jnz 0b
|
|
@@ -53,12 +51,10 @@ __kernel_clock_gettime:
|
|
|
j 1b
|
|
|
2: stg %r0,0(%r3) /* store tp->tv_sec */
|
|
|
stg %r1,8(%r3) /* store tp->tv_nsec */
|
|
|
-3: lghi %r2,0
|
|
|
+ lghi %r2,0
|
|
|
br %r14
|
|
|
|
|
|
/* CLOCK_REALTIME */
|
|
|
-4: ltr %r3,%r3 /* tp == NULL */
|
|
|
- jz 8f
|
|
|
5: lg %r4,__VDSO_UPD_COUNT(%r5) /* load update counter */
|
|
|
tmll %r4,0x0001 /* pending update ? loop */
|
|
|
jnz 5b
|
|
@@ -80,7 +76,7 @@ __kernel_clock_gettime:
|
|
|
j 6b
|
|
|
7: stg %r0,0(%r3) /* store tp->tv_sec */
|
|
|
stg %r1,8(%r3) /* store tp->tv_nsec */
|
|
|
-8: lghi %r2,0
|
|
|
+ lghi %r2,0
|
|
|
br %r14
|
|
|
|
|
|
/* CLOCK_THREAD_CPUTIME_ID for this thread */
|