public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jan Hubicka <hubicka@ucw.cz>
To: Jan Hubicka <hubicka@ucw.cz>
Cc: Richard Biener <rguenther@suse.de>,
	Joseph Myers <joseph@codesourcery.com>,
	gcc-patches@gcc.gnu.org,	burnus@net-b.de
Subject: Re: Fix more of C/fortran canonical type issues
Date: Mon, 22 Jun 2015 07:25:00 -0000	[thread overview]
Message-ID: <20150622070720.GA71122@kam.mff.cuni.cz> (raw)
In-Reply-To: <20150609170716.GB96004@kam.mff.cuni.cz>

> > On Mon, 8 Jun 2015, Jan Hubicka wrote:
> > 
> > > > 
> > > > I think we should instead work towards eliminating the get_alias_set
> > > > langhook first.  The LTO langhook variant contains the same handling, btw,
> > > > so just inline that into get_alias_set and see what remains?
> > > 
> > > I see, i completely missed existence of gimple_get_alias_set. It makes more
> > > sense now.
> > > 
> > > Is moving everyting to alias.c realy a desirable thing? If non-C languages do
> > > not have this rule, why we want to reduce the code quality when compiling
> > > those?
> > 
> > Well, for consistency and for getting rid of one langhook ;)
> :)
> In a way this particular langhook makes sense to me - TBAA rules are language specific.
> We also may with explicit streaming of the TBAA dag, like LLVM does.
> 
> Anyway, this is the updated patch fixing the Fortran's interoperability with
> size_t and signed char.  I will send separate patch for the extra lto-symtab
> warnings shortly.
> 
> I will be happy looking into the TYPE_CANONICAL (int) to be different from
> TYPE_CANONICAL (unsigned int) if that seems desirable. There are two things that
> needs to be solved - hash_canonical_type/gimple_canonical_types_compatible_p can't
> use TYPE_CNAONICAL of subtypes in all cases (that is easy) and we will need some
> way to recognize the conflict in lto-symtab other thanjust comparing TYPE_CANONICAL
> to not warn when a variable is declared signed in Fortran unit and unsigned in C.
> 
> Bootstrapped/regtested ppc64le-linux.
> 
> 	* lto/lto.c (hash_canonical_type): Do not hash TYPE_UNSIGNED
> 	of INTEGER_TYPE.
> 	* tree.c (gimple_canonical_types_compatible_p): Do not compare TYPE_UNSIGNED
> 	of INTEGER_TYPE.
> 	* gimple-expr.c (useless_type_conversion_p): Move INTEGER type handling
> 	ahead the canonical type lookup.
> 
> 	* gfortran.dg/lto/bind_c-2_0.f90: New testcase
> 	* gfortran.dg/lto/bind_c-2_1.c: New testcase
> 	* gfortran.dg/lto/bind_c-3_0.f90: New testcase
> 	* gfortran.dg/lto/bind_c-3_1.c: New testcase
> 	* gfortran.dg/lto/bind_c-4_0.f90: New testcase
> 	* gfortran.dg/lto/bind_c-4_1.c: New testcase

Hi,
I would like to ping this.  There are still few things to fix to make our
merging compliant at least for C/C++/Fortran rules (the array bounds for
Fortran and union ordering for C I believe) and I would like to progress
on this.

Honza

  parent reply	other threads:[~2015-06-22  7:07 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-08  1:23 Jan Hubicka
2015-06-08  5:45 ` Jan Hubicka
2015-06-08  7:25   ` Jan Hubicka
2015-06-08 13:43     ` Richard Biener
2015-06-08 14:07       ` Joseph Myers
2015-06-08 14:32         ` Richard Biener
2015-06-08 14:44           ` Joseph Myers
2015-06-08 14:52             ` Jan Hubicka
2015-06-08 14:54               ` Richard Biener
2015-06-08 15:11                 ` Jan Hubicka
2015-06-08 15:32                   ` Fortran's C_CHAR type Jan Hubicka
2015-06-10 11:50                     ` Mikael Morin
2015-06-10 14:55                       ` Jan Hubicka
2015-06-10 16:37                         ` Mikael Morin
2015-06-11 18:19                           ` Jan Hubicka
2015-06-09  9:50                   ` Fix more of C/fortran canonical type issues Richard Biener
2015-06-09 17:24                     ` Jan Hubicka
2015-06-11 17:58                       ` Jan Hubicka
2015-06-22  7:25                       ` Jan Hubicka [this message]
2015-06-22 15:09                         ` Richard Biener
2015-06-22 16:17                           ` Jan Hubicka
2015-06-08 15:08       ` Jan Hubicka
2015-06-08 16:54         ` Joseph Myers
2015-06-08 16:57           ` Jan Hubicka
2015-06-08 17:03             ` Joseph Myers
2015-06-08 22:06               ` Jan Hubicka
2015-06-08 23:01       ` Jan Hubicka
2015-10-08  3:47     ` Jan Hubicka
2015-10-08  7:44       ` Richard Biener
2015-10-08 16:17         ` Jan Hubicka
2015-10-10 19:45         ` Jan Hubicka
2015-06-08 13:37   ` Richard Biener
2015-10-11  8:09 Dominique d'Humières
2015-10-12  7:10 ` Jan Hubicka
2015-10-12  7:41   ` Richard Biener

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=20150622070720.GA71122@kam.mff.cuni.cz \
    --to=hubicka@ucw.cz \
    --cc=burnus@net-b.de \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=joseph@codesourcery.com \
    --cc=rguenther@suse.de \
    /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).