public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Steven Bosscher <stevenb@suse.de>
To: gcc@gcc.gnu.org
Cc: Robert Dewar <dewar@adacore.com>,
	Mark Mitchell <mark@codesourcery.com>,
	Michael Veksler <VEKSLER@il.ibm.com>,
	Paul Koning <pkoning@equallogic.com>,
	gdr@integrable-solutions.net, nathan@codesourcery.com
Subject: Re: Do C++ signed types have modulo semantics?
Date: Tue, 28 Jun 2005 11:19:00 -0000	[thread overview]
Message-ID: <200506281318.16296.stevenb@suse.de> (raw)
In-Reply-To: <42C1214B.4000201@adacore.com>

On Tuesday 28 June 2005 12:07, Robert Dewar wrote:
> Mark Mitchell wrote:
> > Although the standard clearly makes signed overflow undefined, I think
> > it would be better if GCC defined it to be modulo arithmetic.  The
> > degree to which that would result in inferior code seems likely to be
> > somewhat small, and the amount of user confusion we would eliminate, and
> > the number of programs that would not break with GCC, even though they
> > work with other compilers, seems likely to be high.
>
> I find this reasonable, especially given the general attitude that
> we don't care much if gcc programs are not easily portable to other
> compilers, which is always the strongest argument against this kind
> of language extension (defining the undefined).
>
> I would prefer to make such a decision with data about the impact
> on code quality, rather than Mark's "seem likely" guess.

Indeed.  Frankly this "seems likely" guess confuses me.  It is already
well known that using unsigned types for loop counters may greatly
improve the code gcc can generate for loops.  With wrap-around semantics,
suddenly countable loops are turned into noncountable loops, overflow
can occur, dependencies may be introduced that never happen in reality,
and so on.

Anyway, I've started a SPEC run with "-O2" vs. "-O2 -fwrapv".  Let's see
how big the damage would be ;-)

Gr.
Steven

  reply	other threads:[~2005-06-28 11:19 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-27  5:09 Michael Veksler
2005-06-27 13:02 ` Nathan Sidwell
2005-06-27 14:10   ` Gabriel Dos Reis
2005-06-27 14:36     ` Nathan Sidwell
2005-06-27 14:47       ` Paul Koning
2005-06-27 15:21         ` Michael Veksler
2005-06-28  3:06           ` Mark Mitchell
2005-06-28  3:49             ` Gabriel Dos Reis
2005-06-28 10:08             ` Robert Dewar
2005-06-28 11:19               ` Steven Bosscher [this message]
2005-06-28 12:03                 ` Ulrich Weigand
2005-06-28 12:09                   ` Steven Bosscher
2005-06-29 16:46                     ` Steven Bosscher
2005-06-29 18:01                       ` Daniel Berlin
2005-06-29 18:32                         ` Steven Bosscher
2005-06-29 18:45                           ` Robert Dewar
2005-06-29 19:13                         ` Nicholas Nethercote
2005-06-28 12:16                 ` Paul Koning
2005-06-28 12:30                   ` Steven Bosscher
2005-06-28 12:35                     ` Michael Veksler
2005-06-28 12:38                       ` Steven Bosscher
2005-06-28 16:54             ` Joe Buck
2005-06-28 17:02               ` Mark Mitchell
2005-06-28 17:08                 ` Daniel Berlin
2005-06-28 18:12                   ` Mark Mitchell
2005-06-28 17:46                 ` Theodore Papadopoulo
2005-06-27 15:17       ` Gabriel Dos Reis
2005-06-30 20:53         ` Kai Henningsen
2005-06-27 14:39 Morten Welinder
2005-06-27 15:21 ` Gabriel Dos Reis
     [not found] <OF0E4366CA.5D54868B-ON4325702E.0036D351-4325702E.003973C5@il.ibm.com>
     [not found] ` <m3k6keeibo.fsf@uniton.integrable-solutions.net>
2005-06-28 13:29   ` Nathan Sidwell
2005-06-28 13:59     ` Gabriel Dos Reis
2005-06-28 14:05       ` Andrew Pinski
2005-06-28 14:13         ` Gabriel Dos Reis
2005-06-28 15:30           ` Michael Veksler
2005-06-28 15:49             ` Nathan Sidwell
2005-06-28 15:58               ` Michael Veksler
2005-06-28 16:07                 ` Andrew Pinski
2005-06-28 16:39                 ` Gabriel Dos Reis
2005-06-28 15:55             ` Gabriel Dos Reis
2005-06-28 16:47               ` Joseph S. Myers
2005-06-28 17:58                 ` Gabriel Dos Reis
2005-06-28 14:05       ` Nathan Sidwell

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=200506281318.16296.stevenb@suse.de \
    --to=stevenb@suse.de \
    --cc=VEKSLER@il.ibm.com \
    --cc=dewar@adacore.com \
    --cc=gcc@gcc.gnu.org \
    --cc=gdr@integrable-solutions.net \
    --cc=mark@codesourcery.com \
    --cc=nathan@codesourcery.com \
    --cc=pkoning@equallogic.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).