On Thu, Oct 26, 2023 at 12:39 PM Iain Sandoe <[email protected]> wrote: > > This is an enablement patch (the initial use comes with the Darwin aarch64 > port). Tested on aarch64-linux-gnu, aarch64-apple-darwin and x86_64-darwin > just for good measure, OK for trunk?
Yes this is ok from the trunk. Sorry for the super late review on this patch. Thanks, Andrew Pinski > thanks > Iain. > > --- 8< --- > > Some assmblers have a bug that requires +crc to be emitted even > though the base architecture supports it. However, that also > triggers a different bug in another assembler. So make the fix > configurable. > > gcc/ChangeLog: > > * common/config/aarch64/aarch64-common.cc: Make the asm > crc bug workaround configurable. > > Signed-off-by: Iain Sandoe <[email protected]> > --- > gcc/common/config/aarch64/aarch64-common.cc | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/gcc/common/config/aarch64/aarch64-common.cc > b/gcc/common/config/aarch64/aarch64-common.cc > index 20bc4e1291b..4922a6b235c 100644 > --- a/gcc/common/config/aarch64/aarch64-common.cc > +++ b/gcc/common/config/aarch64/aarch64-common.cc > @@ -301,8 +301,12 @@ aarch64_get_extension_string_for_isa_flags > > However, assemblers with Armv8-R AArch64 support should not have this > issue, so we don't need this fix when targeting Armv8-R. */ > - auto explicit_flags = (!(current_flags & AARCH64_FL_V8R) > - ? AARCH64_FL_CRC : 0); > + aarch64_feature_flags explicit_flags = > +#ifndef DISABLE_AARCH64_AS_CRC_BUGFIX > + (!(current_flags & AARCH64_ISA_V8R) ? AARCH64_FL_CRC : 0); > +#else > + 0; > +#endif > > /* Add the features in isa_flags & ~current_flags using the smallest > possible number of extensions. We can do this by iterating over the > -- > 2.39.2 (Apple Git-143) >
