[Bug target/106415] loop-ivopts prevents correct usage of dbra with 16-bit loop counters on m68k

undefinedopcode2 at gmail dot com gcc-bugzilla@gcc.gnu.org
Mon Aug 1 23:44:09 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106415

--- Comment #7 from Undefined Opcode <undefinedopcode2 at gmail dot com> ---
(In reply to Undefined Opcode from comment #6)
A little more context:
Group 1:
  cand  cost    compl.  inv.expr.       inv.vars
  0     0       0       NIL;    NIL;
  1     0       0       NIL;    NIL;
  2     0       0       NIL;    NIL;
  3     0       0       NIL;    NIL;
  4     0       0       NIL;    NIL;
  5     0       0       NIL;    NIL;
  6     -1      0       NIL;    NIL;
  7     0       0       NIL;    NIL;
  8     0       0       NIL;    NIL;

I'm not sure what a negative cost means, but it's also odd to me that the other
candidates all have the same cost. The candidates requiring 32-bit operations
should be strictly more expensive than those operating on 16-bit data, and
indeed they do during the initial candidate costs.


More information about the Gcc-bugs mailing list