public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: "Agovic, Sanimir" <sanimir.agovic@intel.com>
To: 'Yao Qi' <yao@codesourcery.com>,
	Jan Kratochvil	<jan.kratochvil@redhat.com>
Cc: Tom Tromey <tromey@redhat.com>,
	"gdb-patches@sourceware.org"	<gdb-patches@sourceware.org>
Subject: RE: [PATCH 07/14] add infcall_mmap and gcc_target_options gdbarch methods
Date: Mon, 19 May 2014 08:26:00 -0000	[thread overview]
Message-ID: <0377C58828D86C4588AEEC42FC3B85A71D86F725@IRSMSX105.ger.corp.intel.com> (raw)
In-Reply-To: <5379B528.5040607@codesourcery.com>

> On 05/19/2014 02:40 PM, Jan Kratochvil wrote:
> >> I doubt the interface like this is sufficient for other archs, like
> >> > arm and mips, which have multiple multilibs, such as -marm/thumb,
> >> > -mfloat-abi={hard,softfp}, etc.  This hook in GDB has to take something
> >> > into account, such as gdbarch, current frame, the related bfd, etc, in
> >> > order to return a correct or compatible options for gcc to compile
> >> > source.
> > It already already takes 'gdbarch' as its parameter.  If it is not enough some
> > more parameters can be added.  But IMO those should be added only when this
> > method gets implemented for arch which needs such parameter.
> 
> We can add these parameters when we really need them.  That is fine.
> However, I still doubt whether GDB is able to return the correct gcc
> options by means of analysing executable only.  Supposing the executable
> is compiled with "-march=armv7-a -mthumb -mfloat-abi=hard -mfpu=neon",
> GDB should know the code is thumb and float-abi is hard.  How can GDB
> tell "-march=armv7-a -mfpu=neon" is used too?  If GDB doesn't know,
> what options this hook should return? and is the object code
> compiled "on the fly" still compatible to the inferior code and target
> runtime?
> 
This will probably only work for host == target with the default compiler
options. Any other cases are doomed to fail. So your example is one out 
of many.

We may consider picking the cu die for the current $pc and extract the compiler
options from DW_AT_producer[1]. But this requires parsing the necessary bits out
of a string. Adding something like DW_AT_producer_options to dwarf would make
things more straight forward.

[1] DW_AT_producer    : [...] -mtune=generic -march=x86-64 -g

-Sanimir

Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen, Deutschland
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk
Registergericht: Muenchen HRB 47456
Ust.-IdNr./VAT Registration No.: DE129385895
Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052

  reply	other threads:[~2014-05-19  8:26 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-16 15:26 [PATCH 00/14] let gdb reuse gcc's C compiler Tom Tromey
2014-05-16 15:26 ` [PATCH 03/14] add some missing ops to DWARF assembler Tom Tromey
2014-05-16 15:26 ` [PATCH 07/14] add infcall_mmap and gcc_target_options gdbarch methods Tom Tromey
2014-05-19  6:13   ` Yao Qi
2014-05-19  6:41     ` Jan Kratochvil
2014-05-19  6:47       ` Jan Kratochvil
2014-05-19  7:42       ` Yao Qi
2014-05-19  8:26         ` Agovic, Sanimir [this message]
2014-05-19 11:15           ` Jan Kratochvil
2014-05-16 15:26 ` [PATCH 08/14] introduce call_function_by_hand_dummy Tom Tromey
2014-05-16 15:26 ` [PATCH 01/14] introduce ui_file_write_for_put Tom Tromey
2014-05-16 15:26 ` [PATCH 02/14] add gcc/gdb interface files Tom Tromey
2014-05-19  8:06   ` Yao Qi
2014-05-19 13:53     ` Tom Tromey
2014-05-16 15:26 ` [PATCH 10/14] make dwarf_expr_frame_base_1 public Tom Tromey
2014-05-16 15:27 ` [PATCH 14/14] the "compile" command Tom Tromey
2014-06-16  9:55   ` (Doc ping [for news and manual]) -- " Phil Muldoon
2014-06-16 15:25     ` Eli Zaretskii
2014-06-20  9:17       ` Phil Muldoon
2014-06-20  9:42         ` Eli Zaretskii
2014-06-20 10:01           ` Phil Muldoon
2014-06-20 12:37             ` Eli Zaretskii
2014-06-20 14:42             ` Tom Tromey
2014-06-20 19:00               ` Eli Zaretskii
2014-06-21  7:32                 ` Eli Zaretskii
2014-05-16 15:41 ` [PATCH 05/14] change how the CLI handles comments Tom Tromey
2014-05-18 23:26   ` Doug Evans
2014-05-19 14:07     ` Phil Muldoon
2014-06-03  7:04       ` Doug Evans
2014-05-16 15:43 ` [PATCH 13/14] add s390_gcc_target_options Tom Tromey
2014-05-16 15:43 ` [PATCH 12/14] add linux_infcall_mmap Tom Tromey
2014-05-16 15:43 ` [PATCH 09/14] split dwarf2_fetch_cfa_info from dwarf2_compile_expr_to_ax Tom Tromey
2014-05-16 15:56 ` [PATCH 04/14] add make_unqualified_type Tom Tromey
2014-05-16 16:18 ` [PATCH 06/14] add dummy frame destructor Tom Tromey
2014-05-16 16:18 ` [PATCH 11/14] export dwarf2_reg_to_regnum_or_error Tom Tromey

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=0377C58828D86C4588AEEC42FC3B85A71D86F725@IRSMSX105.ger.corp.intel.com \
    --to=sanimir.agovic@intel.com \
    --cc=gdb-patches@sourceware.org \
    --cc=jan.kratochvil@redhat.com \
    --cc=tromey@redhat.com \
    --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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).