public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: "H.J. Lu" <hjl.tools@gmail.com>
To: Richard Henderson <rth@redhat.com>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>,
	Richard Biener <richard.guenther@gmail.com>
Subject: Re: [PATCH v2 13/13] Add hook for modifying debug info for address spaces
Date: Wed, 21 Oct 2015 14:57:00 -0000	[thread overview]
Message-ID: <CAMe9rOq0URCa03gv9rLB=BajgkeTg9vjvb58Cri9t5Vz-mQM2A@mail.gmail.com> (raw)
In-Reply-To: <1445376433-14658-14-git-send-email-rth@redhat.com>

On Tue, Oct 20, 2015 at 2:27 PM, Richard Henderson <rth@redhat.com> wrote:
> ---
>  gcc/config/i386/i386.c | 21 +++++++++++++++++++++
>  gcc/doc/tm.texi        |  7 +++++++
>  gcc/doc/tm.texi.in     |  2 ++
>  gcc/dwarf2out.c        | 48 +++++++++++++++++++++++++++++-------------------
>  gcc/target.def         | 10 ++++++++++
>  gcc/targhooks.c        |  8 ++++++++
>  gcc/targhooks.h        |  1 +
>  7 files changed, 78 insertions(+), 19 deletions(-)
>
> diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
> index 8f833d1..9fb0fac 100644
> --- a/gcc/config/i386/i386.c
> +++ b/gcc/config/i386/i386.c
> @@ -53707,6 +53707,27 @@ ix86_addr_space_convert (rtx op, tree from_type, tree to_type)
>  #undef TARGET_ADDR_SPACE_CONVERT
>  #define TARGET_ADDR_SPACE_CONVERT ix86_addr_space_convert
>
> +static int
> +ix86_addr_space_debug (addr_space_t as)
> +{
> +  /* Represent debugging for address spaces with DW_AT_segment,
> +     and the dwarf register for fsbase/gsbase.  */
> +  if (as == ADDR_SPACE_SEG_TLS)
> +    as = DEFAULT_TLS_SEG_REG;
> +
> +  /* ??? These register numbers are defined in the x86-64 abi,
> +     but there is no corresponding definition for the i386 abi.
> +     That said, {58,59} appear to be reserved, so perhaps best
> +     to use the same numbers in the 32-bit abi.  */
> +  if (as == ADDR_SPACE_SEG_FS)
> +    return ~58;  /* dwarf fsbase */
> +  else if (as == ADDR_SPACE_SEG_GS)
> +    return ~59;  /* dwarf gsbase */
> +  gcc_unreachable ();
> +}

This is wrong for i386 psABI.  Please use the DWARF register
numbers listed in Table 2.14: DWARF Register Number Mapping
in Intel386 psABI:

https://github.com/hjl-tools/x86-psABI/wiki/X86-psABI

Segment Register ES 40 %es
Segment Register CS 41 %cs
Segment Register SS 42 %ss
Segment Register DS 43 %ds
Segment Register FS 44 %fs
Segment Register GS 45 %gs


-- 
H.J.

  parent reply	other threads:[~2015-10-21 14:53 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-20 21:27 [PATCH v2 00/13] Address space support for x86 Richard Henderson
2015-10-20 21:28 ` [PATCH v2 06/13] i386: Replace ix86_address_seg with addr_space_t Richard Henderson
2015-10-20 21:28 ` [PATCH v2 02/13] Relax ADDR_SPACE_GENERIC_P checks for default address space hooks Richard Henderson
2015-10-21 14:02   ` Jeff Law
2015-10-21 20:50     ` Richard Henderson
2015-10-20 21:28 ` [PATCH v2 05/13] i386: Add address spaces for fs/gs segments Richard Henderson
2015-10-20 21:28 ` [PATCH v2 01/13] Change default of non-overlapping address space conversion Richard Henderson
2015-10-21 14:03   ` Jeff Law
2015-10-20 21:28 ` [PATCH v2 04/13] i386: Disallow address spaces with string insns Richard Henderson
2015-10-20 21:28 ` [PATCH v2 09/13] Fix PR 66768 Richard Henderson
2015-10-21 13:56   ` Jeff Law
2015-10-21 17:55     ` Richard Henderson
2015-10-20 21:28 ` [PATCH v2 10/13] Avoid CSE of MEMs in different address spaces Richard Henderson
2015-10-21 13:49   ` Jeff Law
2015-10-21 17:12     ` Richard Henderson
2015-10-22  7:48       ` Richard Biener
2015-10-20 21:28 ` [PATCH v2 08/13] Add TARGET_ADDR_SPACE_ZERO_ADDRESS_VALID Richard Henderson
2015-10-21 13:59   ` Jeff Law
2015-10-21 20:51     ` Richard Henderson
2015-10-21 21:29       ` Jeff Law
2015-10-22  3:27   ` Sandra Loosemore
2015-10-22  7:59     ` Richard Biener
2015-10-23 17:08       ` Sandra Loosemore
2015-10-22 19:17     ` Richard Henderson
2015-10-20 21:28 ` [PATCH v2 07/13] i386: Add address space for tls Richard Henderson
2015-10-20 21:28 ` [PATCH v2 12/13] Document the x86 address spaces Richard Henderson
2015-10-22  4:59   ` Sandra Loosemore
2015-10-22 20:30     ` Richard Henderson
2015-10-23 17:16       ` Sandra Loosemore
2015-10-20 21:28 ` [PATCH v2 11/13] Test case for conversion from __seg_tls:0 Richard Henderson
2015-11-09 14:46   ` Richard Biener
2015-11-09 17:55     ` Thomas Schwinge
2015-10-20 21:28 ` [PATCH v2 13/13] Add hook for modifying debug info for address spaces Richard Henderson
2015-10-21 13:55   ` Jeff Law
2015-10-21 14:57   ` H.J. Lu [this message]
2015-10-21 17:23     ` Richard Henderson
2015-10-21 17:25       ` H.J. Lu
2015-10-21 17:51         ` Richard Henderson
2015-10-21 18:36           ` H.J. Lu
2015-10-21 16:22   ` Ulrich Weigand
2015-10-21 19:13     ` Richard Henderson
2015-10-22 14:19       ` Ulrich Weigand
2015-10-20 21:34 ` [PATCH v2 03/13] i386: Handle address spaces in movabs patterns Richard Henderson

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='CAMe9rOq0URCa03gv9rLB=BajgkeTg9vjvb58Cri9t5Vz-mQM2A@mail.gmail.com' \
    --to=hjl.tools@gmail.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=richard.guenther@gmail.com \
    --cc=rth@redhat.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).