On Fri, Jul 1, 2022 at 5:59 PM Andrew Carlotti <andrew.carlo...@arm.com> wrote:
>
> On Fri, Jul 01, 2022 at 08:42:15AM +0200, Richard Biener wrote:
> > On Thu, Jun 30, 2022 at 6:04 PM Andrew Carlotti via Gcc-patches
> > <gcc-patches@gcc.gnu.org> wrote:
> > > diff --git a/gcc/config/aarch64/aarch64-builtins.cc 
> > > b/gcc/config/aarch64/aarch64-builtins.cc
> > > index 
> > > e0a741ac663188713e21f457affa57217d074783..877f54aab787862794413259cd36ca0fb7bd49c5
> > >  100644
> > > --- a/gcc/config/aarch64/aarch64-builtins.cc
> > > +++ b/gcc/config/aarch64/aarch64-builtins.cc
> > > @@ -1085,9 +1085,9 @@ aarch64_get_attributes (unsigned int f, 
> > > machine_mode mode)
> > >    if (!aarch64_modifies_global_state_p (f, mode))
> > >      {
> > >        if (aarch64_reads_global_state_p (f, mode))
> > > -       attrs = aarch64_add_attribute ("pure", attrs);
> > > -      else
> > >         attrs = aarch64_add_attribute ("const", attrs);
> > > +      else
> > > +       attrs = aarch64_add_attribute ("pure", attrs);
> >
> > that looks backwards.  'pure' allows read of global memory while
> > 'const' does not.  Is
> > aarch64_reads_global_state_p really backwards?
>
> Oh - the thing that's backwards is my understanding of what "pure" and
> "const" mean. Their meanings as GCC function attributes seem to be
> approximately the opposite way round to their meanings in general usage.

I bet GCCs reading is older ;)

Richard.

Reply via email to