On Fri, 2020-04-10 at 16:40 -0500, will schmidt via Gcc-patches wrote: > [RFC][PR target/90000] Compile time hog w/impossible asm constraint lra loop > > Hi, > RFC for a bandaid/patch to partially address target PR/90000. > > This adds an escape condition from the forever loop where > LRA gets stuck while attempting to handle constraints from an > instruction that has previously suffered an impossible constraint error. > > This is somewhat inspired by MAX_RELOAD_INSNS_NUMBER as > seen in lra-constraints.c lra_constraints(). This utilizes the > existing counter variable lra_constraint_iter. > > More needs to be done here, as this does replace a spin-forever > situation with an ICE. > > Thanks > -Will > > > gcc/ > 2020-04-10 Will Schmidt <will_schm...@vnet.ibm.com> > > * lra.c: Add include of rtl-error.h. > (MAX_LRA_CONSTRAINT_PASSES): New define. > (lra): Add check of lra_constraint_iter value. Doesn't this argue that there's some other datastructure that needs to be updated when we removed the impossible asm?
Jeff >