* Claudiu Zissulescu <claz...@gmail.com> [2018-11-12 13:25:12 +0200]:
> Avoid emitting lp instruction when in its ZOL body we find a jump table data > in text section. > > gcc/ > xxxx-xx-xx Claudiu Zissulescu <claz...@synopsys.com> > > * config/arc/arc.c (hwloop_optimize): Bailout when detecting a > jump table data in the text section. This looks good from a code point of view, but there's no explanation for _why_ this change was made.... might be worth mentioning. Thanks, Andrew > --- > gcc/config/arc/arc.c | 12 +++++++++++- > 1 file changed, 11 insertions(+), 1 deletion(-) > > diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c > index a92456b457d..9eab4c27284 100644 > --- a/gcc/config/arc/arc.c > +++ b/gcc/config/arc/arc.c > @@ -7791,7 +7791,17 @@ hwloop_optimize (hwloop_info loop) > for (insn = loop->start_label; > insn && insn != loop->loop_end; > insn = NEXT_INSN (insn)) > - length += NONDEBUG_INSN_P (insn) ? get_attr_length (insn) : 0; > + { > + length += NONDEBUG_INSN_P (insn) ? get_attr_length (insn) : 0; > + if (JUMP_TABLES_IN_TEXT_SECTION > + && JUMP_TABLE_DATA_P (insn)) > + { > + if (dump_file) > + fprintf (dump_file, ";; loop %d has a jump table\n", > + loop->loop_no); > + return false; > + } > + } > > if (!insn) > { > -- > 2.19.1 >