This is the mail archive of the
mailing list for the GCC project.
Re: Comparison of GCC-4.9 and LLVM-3.4 performance on SPECInt2000 for x86-64 and ARM
- From: Vladimir Makarov <vmakarov at redhat dot com>
- To: gcc at gcc dot gnu dot org
- Date: Wed, 25 Jun 2014 10:43:17 -0400
- Subject: Re: Comparison of GCC-4.9 and LLVM-3.4 performance on SPECInt2000 for x86-64 and ARM
- Authentication-results: sourceware.org; auth=none
- References: <53A98705 dot 10909 at redhat dot com> <53A98CE2 dot 9080108 at arm dot com> <53A98F0A dot 7000802 at redhat dot com> <53A991D7 dot 6070709 at arm dot com> <53A993F8 dot 7030101 at redhat dot com> <B71DF1153024A14EABB94E39368E44A6042CE185 at SJEXCHMB13 dot corp dot ad dot broadcom dot com> <CAMSE1kdDrF1urKf5yeoou3Y_o2gf8Gk5CTWw4_i3_sCjaA54gg at mail dot gmail dot com> <53AAD61A dot 6010201 at redhat dot com> <CAFiYyc06sL1bYpGAutTWNs1PD9OCMXT_qpCoTT_b6+2y02Dhgg at mail dot gmail dot com> <53AADC8C dot 50107 at redhat dot com> <alpine dot DEB dot 2 dot 10 dot 1406251632020 dot 20913 at stedding dot saclay dot inria dot fr>
On 2014-06-25, 10:37 AM, Marc Glisse wrote:
On Wed, 25 Jun 2014, Vladimir Makarov wrote:
Maybe. But in this case LLVM did a right thing. The variable
addressing was through a restrict pointer.
Ah, gcc implements (on purpose?) a weak version of restrict, where it
only considers that 2 restrict pointers don't alias, whereas all other
compilers assume that restrict pointers don't alias other non-derived
pointers (see several PRs in bugzilla). I believe Richard recently added
code that would make implementing the strong version of restrict easier.
Maybe that's what is missing here?
May be. At least I saw 3 different restrict pointers in this code.