From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6527 invoked by alias); 12 Feb 2014 14:35:05 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 6470 invoked by uid 48); 12 Feb 2014 14:35:01 -0000 From: "jan.kratochvil at redhat dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug sanitizer/60142] [4.9 Regression][asan] -fsanitize=address breaks debugging - stepping into functions no longer possible Date: Wed, 12 Feb 2014 14:35:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: sanitizer X-Bugzilla-Version: 4.9.0 X-Bugzilla-Keywords: wrong-debug X-Bugzilla-Severity: normal X-Bugzilla-Who: jan.kratochvil at redhat dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.9.0 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2014-02/txt/msg01144.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60142 Jan Kratochvil changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jan.kratochvil at redhat dot com --- Comment #4 from Jan Kratochvil --- 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.