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

            Bug ID: 125751
           Summary: [avr] Wrong lengh calculation in avr.cc::avr_out_fract
           Product: gcc
           Version: 17.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gjl at gcc dot gnu.org
  Target Milestone: ---

Too short lengths due to

      else if (use_src && overlap)
        {
          avr_asm_len ("clr __tmp_reg__" CR_TAB
                       "sbrc %1,0"       CR_TAB
                       "dec __tmp_reg__", xop, plen, 1);
...
          if (have_carry)
            avr_asm_len ("clt"                CR_TAB
                         "bld __tmp_reg__,7"  CR_TAB
                         "adc %0,__tmp_reg__",
                         &all_regs_rtx[s0], plen, 1);

can lead to
> relocation truncated to fit: R_AVR_7_PCREL against `.L5'
errors from the linker.

Reply via email to