Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Omair Javaid <omair.javaid@linaro.org>
To: Yao Qi <yao@codesourcery.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [PATCH] testsuite/gdb.dwarf2: Fix for dw2-ifort-parameter failure on ARM
Date: Thu, 16 Jan 2014 09:09:00 -0000	[thread overview]
Message-ID: <52D7A05F.6070304@linaro.org> (raw)
In-Reply-To: <5280A528.8040308@codesourcery.com>

On Mon 11 Nov 2013 02:36:40 PM PKT, Yao Qi wrote:
> [Sorry for being late]
>
> On 09/19/2013 11:30 PM, Omair Javaid wrote:
>> (gdb) break func
>> warning: Breakpoint address adjusted from 0x000083bd to 0x000083bc.
>> Breakpoint 1 at 0x83bc (2 locations)
>
> 'break func' should insert a breakpoint at an address A after the first
> several instructions of function func, due to the effect of skip
> prologue.  Address A should be an address of a thumb instruction, so it
> should be 2-byte aligned.  In this case, the address should be
> 0x000083bc.  I'd like to check why 0x000083bd is generated, and
> probably we should use gdbarch_addr_bits_remove somewhere.
>

There seemed no problem with how breakpoint addresses were being adjusted. 
This test requires to build dwarf info by hand in dw2-ifort-parameter-debug.S
using compile time addresses so in case of arm (thumb mode) the least
significant bits of compile time address are set to 1. For that reason 
0x000083bd was being used as a breakpoint address func. This test was using
that compile time address to insert breakpoint and that breakpoint was being
adjusted to an instruction before the actual intended breakpoint instruction.
I have just added a simple stepi test to make sure that we are in correct
scope when we test for a fortran constant param. This works fine for both
arm and x86.

gdb/testsuite/ChangeLog:

2014-01-16  Omair Javaid  <Omair.Javaid@linaro.org>

	* gdb.dwarf2/dw2-ifort-parameter.exp: Adds a new stepi test.

---
 gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp b/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp
index 35fb0fa..8f49eea 100644
--- a/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp
+++ b/gdb/testsuite/gdb.dwarf2/dw2-ifort-parameter.exp
@@ -33,4 +33,6 @@ if ![runto func] {
     return -1
 }
 
+gdb_test "stepi" ".*"
+
 gdb_test "p/x param" " = 0xdeadf00d"
-- 
1.7.9.5


  reply	other threads:[~2014-01-16  9:09 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CANW4E-2bQYjx6YdR3qGyKUsQa_KOrtmkWsZYqKzcuQBF==RPpw@mail.gmail.com>
2013-07-15 10:25 ` Omair Javaid
2013-07-16  2:53   ` Yao Qi
2013-09-19 15:31     ` Omair Javaid
2013-10-01  9:53       ` Omair Javaid
2013-11-11  9:53       ` Yao Qi
2014-01-16  9:09         ` Omair Javaid [this message]
2014-01-16  9:17           ` Will Newton
2014-01-16  9:48           ` Pedro Alves
2014-01-16  9:51             ` Pedro Alves
2014-01-16 10:26             ` Omair Javaid
2014-01-16 12:35               ` Pedro Alves
2014-01-16 13:55                 ` Omair Javaid
2014-01-16 14:00                   ` Pedro Alves
2014-01-16 14:17                     ` Omair Javaid
2014-01-16 16:24                       ` Pedro Alves

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52D7A05F.6070304@linaro.org \
    --to=omair.javaid@linaro.org \
    --cc=gdb-patches@sourceware.org \
    --cc=yao@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox