From: Richard Guenther <richard.guenther@gmail.com>
To: Mikael Pettersson <mikpe@it.uu.se>
Cc: gcc-patches@gcc.gnu.org
Subject: Re: [PATCH] unbreak gcc.dg/tree-ssa/ssa-ccp-33.c on m68k (PR testsuite/47954)
Date: Tue, 08 Mar 2011 10:45:00 -0000 [thread overview]
Message-ID: <AANLkTimKEqNjyzrSxh4Df0L9qGm5BaHMkZ7B5=ZQzfUJ@mail.gmail.com> (raw)
In-Reply-To: <19829.64093.712016.937815@pilspetsen.it.uu.se>
On Tue, Mar 8, 2011 at 10:43 AM, Mikael Pettersson <mikpe@it.uu.se> wrote:
> gcc.dg/tree-ssa/ssa-ccp-33.c fails with gcc trunk on m68k-linux:
>
> ssa-ccp-33.c:(.text+0x2a): undefined reference to `link_error'
> ssa-ccp-33.c:(.text+0x2a): undefined reference to `link_error'
> FAIL: gcc.dg/tree-ssa/ssa-ccp-33.c (test for excess errors)
> ssa-ccp-33.c:(.text+0x2a): undefined reference to `link_error'
>
> The test case checks that the compiler is able to eliminate a
> runtime check that an aligned pointer-to-int remains aligned after
> a loop of increments. It uses sizeof to compute the alignment
> of int, but on m68k (and possibly others) the alignment of int
> is less than its size. The compiler is then unable to eliminate
> the broken alignment check, and the call to link_error () is not
> removed.
>
> Fixed by using __alignof__ instead. Regression tested on m68k-linux
> where it eliminated the FAIL for gcc.dg/tree-ssa/ssa-ccp-33.c.
> Also tested on i686-linux, no changes there.
>
> Ok for trunk?
>
> (Richard G. pre-approved this change on the PR entry, however I
> cannot commit it myself.)
Committed.
Richard.
> gcc/testsuite/
>
> 2011-03-08 Mikael Pettersson <mikpe@it.uu.se>
>
> PR testsuite/47954
> * gcc.dg/tree-ssa/ssa-ccp-33.c: Use __alignof__ not
> sizeof to compute alignment.
>
> --- gcc-4.6-20110305/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-33.c.~1~ 2010-08-06 13:47:31.000000000 +0200
> +++ gcc-4.6-20110305/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-33.c 2011-03-08 10:34:13.000000000 +0100
> @@ -8,7 +8,7 @@ void foo(int n)
> int *p;
> for (p = a; n != 0; --n, ++p)
> ;
> - if ((__SIZE_TYPE__)p & (sizeof (int) - 1))
> + if ((__SIZE_TYPE__)p & (__alignof__ (int) - 1))
> link_error ();
> }
> int main()
>
next prev parent reply other threads:[~2011-03-08 10:45 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-08 9:44 Mikael Pettersson
2011-03-08 10:45 ` Richard Guenther [this message]
2011-03-08 12:49 ` Mikael Pettersson
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='AANLkTimKEqNjyzrSxh4Df0L9qGm5BaHMkZ7B5=ZQzfUJ@mail.gmail.com' \
--to=richard.guenther@gmail.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=mikpe@it.uu.se \
/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).