https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68256
Wilco <wilco at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |wilco at gcc dot gnu.org --- Comment #7 from Wilco <wilco at gcc dot gnu.org> --- (In reply to Vladimir Mezentsev from comment #6) > I restored fixes in gcc/config/aarch64/aarch64.c: > % git diff > diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c > index 1c14008..b377bc7 100644 > --- a/gcc/config/aarch64/aarch64.c > +++ b/gcc/config/aarch64/aarch64.c > @@ -6193,11 +6193,9 @@ aarch64_can_use_per_function_literal_pools_p (void) > static bool > aarch64_use_blocks_for_constant_p (machine_mode, const_rtx) > { > - /* Fixme:: In an ideal world this would work similar > - to the logic in aarch64_select_rtx_section but this > - breaks bootstrap in gcc go. For now we workaround > - this by returning false here. */ > - return false; > + /* We can't use blocks for constants when we're using a per-function > + constant pool. */ > + return !aarch64_can_use_per_function_literal_pools_p (); > } > > /* Select appropriate section for constants depending > > > I cannot reproduce the problem. > I use the gcc116.fsffrance.org machine: > % uname -a > Linux gcc116 3.13.0-92-generic #139-Ubuntu SMP Tue Jun 28 20:45:34 UTC 2016 > aarch64 aarch64 aarch64 GNU/Linux > > I run > % ../gcc/configure --enable-languages=c,c++,go --enable-bootstrap > --enable-multilib > % make -j8 bootstrap > > There is no bootstrap comparison failure. That looks fine. However either the underlying problem is fixed or has gone latent, so it would be useful to try reproducing it on an older GCC so we can be sure the actual problem is fixed.