Add cfi instrumentation.
authordrepper <drepper>
Fri, 30 Dec 2005 22:13:09 +0000 (22:13 +0000)
committerdrepper <drepper>
Fri, 30 Dec 2005 22:13:09 +0000 (22:13 +0000)
sysdeps/sh/_mcount.S
sysdeps/unix/sh/sysdep.S

index 1e7a1d9..069da13 100644 (file)
@@ -1,5 +1,5 @@
 /* Machine-specific calling sequence for `mcount' profiling function.  SuperH
-   Copyright (C) 2001 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2005 Free Software Foundation, Inc.
    Contributed by NIIBE Yutaka <gniibe@m17n.org>
    This file is part of the GNU C Library.
 
 
        ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(_mcount)
        ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(_mcount),function)
+       cfi_startproc
        .align  5
 C_LABEL(_mcount)
        /* Save registers.  */
        mov.l   r4,@-r15
+       cfi_adjust_cfa_offset (4)
+       cfi_rel_offset (r4, 0)
        mov.l   r5,@-r15
+       cfi_adjust_cfa_offset (4)
+       cfi_rel_offset (r5, 0)
        mov.l   r6,@-r15
+       cfi_adjust_cfa_offset (4)
+       cfi_rel_offset (r6, 0)
        mov.l   r7,@-r15
+       cfi_adjust_cfa_offset (4)
+       cfi_rel_offset (r7, 0)
        sts.l   pr,@-r15
+       cfi_adjust_cfa_offset (4)
+       cfi_rel_offset (pr, 0)
 
        mov.l   @(20,r15),r4
        sts     pr,r5
@@ -61,6 +72,7 @@ C_LABEL(_mcount)
 #else
 1:     .long   C_SYMBOL_NAME(__mcount_internal)
 #endif
+       cfi_endproc
 ASM_SIZE_DIRECTIVE(C_SYMBOL_NAME(_mcount))
 
 #undef mcount
index 6e4798e..802d51f 100644 (file)
@@ -40,14 +40,21 @@ skip:
 #else
        mov.l   .L3, r1
        sts.l   pr, @-r15
+       cfi_adjust_cfa_offset (4)
+       cfi_rel_offset (pr, 0)
        jsr     @r1
         mov.l  r0, @-r15
+       cfi_adjust_cfa_offset (4)
        mov.l   @r15+, r1
+       cfi_adjust_cfa_offset (-4)
        lds.l   @r15+, pr
+       cfi_adjust_cfa_offset (-4)
        mov.l   r1, @r0
 #endif
 #else
        mov.l   r12, @-r15
+       cfi_adjust_cfa_offset (4)
+       cfi_rel_offset (r12, 0)
 #ifndef _LIBC_REENTRANT
        mov     r0, r2
         mov.l  0f, r12
@@ -58,7 +65,10 @@ skip:
        mov.l   r2, @r1
 #else
        mov.l   r0, @-r15
+       cfi_adjust_cfa_offset (4)
        sts.l   pr, @-r15
+       cfi_adjust_cfa_offset (4)
+       cfi_rel_offset (pr, 0)
         mov.l  0f, r12
        mova    0f, r0
        add     r0, r12