re-enable vdso clock_gettime on arm (32-bit) with workaround
[musl] / src / thread / sh / syscall_cp.s
index c3cafac..bb848ef 100644 (file)
@@ -14,17 +14,8 @@ __syscall_cp_asm:
 __cp_begin:
        mov.l @r4, r4
        tst   r4, r4
-       bt    2f
-
-       mov.l L1, r0
-       braf  r0
-        nop
-1:
-
-.align 2
-L1:    .long __cancel@PLT-(1b-.)
-
-2:     mov   r5, r3
+       bf    __cp_cancel
+       mov   r5, r3
        mov   r6, r4
        mov   r7, r5
        mov.l @r15, r6
@@ -43,3 +34,12 @@ __cp_end:
 
        rts
         nop
+
+__cp_cancel:
+       mov.l 2f, r0
+       braf  r0
+        nop
+1:
+
+.align 2
+2:     .long __cancel@PCREL-(1b-.)