This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug sanitizer/60142] [4.9 Regression][asan] -fsanitize=address breaks debugging - stepping into functions no longer possible


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60142

Jan Kratochvil <jan.kratochvil at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jan.kratochvil at redhat dot com

--- Comment #4 from Jan Kratochvil <jan.kratochvil at redhat dot com> ---
Verified GDB fails with it.
GDB puts breakpoint on second ".loc" (that is not the fist/initial ".loc") in a
function as currently neither GCC nor GCC use DW_LNS_set_prologue_end.

g++ (GCC) 4.9.0 20140212 (experimental)
-S -g -fsanitize=address

        .type   _Z4testv, @function
_Z4testv:
.LASANPC512:
.LFB512:
        .file 2 "asantest.C"
        .loc 2 4 0
        .cfi_startproc
        .cfi_personality 0x3,__gxx_personality_v0
        .cfi_lsda 0x3,.LLSDA512
        pushq   %rbp
        .cfi_def_cfa_offset 16
        .cfi_offset 6, -16
        movq    %rsp, %rbp
        .cfi_def_cfa_register 6
        pushq   %r14
        pushq   %r13
        pushq   %r12
        pushq   %rbx
        subq    $112, %rsp
        .cfi_offset 14, -24
        .cfi_offset 13, -32
        .cfi_offset 12, -40
        .cfi_offset 3, -48
        leaq    -128(%rbp), %rbx
        movq    %rbx, %r14
        cmpl    $0, __asan_option_detect_stack_use_after_return(%rip)
        je      .L3
        .loc 2 4 0
<--- here GDB puts the breakpoint
        movq    %rbx, %rsi
        movl    $96, %edi
        call    __asan_stack_malloc_1
        movq    %rax, %rbx
.L3:

GDB already workarounds a similar case of GCC PR debug/48827, this asan
prologue may look standard enough it could be possibly also workarounded in
GDB.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]