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

            Bug ID: 98931
           Summary: arm: Assembly fails with "branch out of range or not a
                    multiple of 2"
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: acoplan at gcc dot gnu.org
  Target Milestone: ---

GCC's output fails to assemble for the following:

$ cat test.c
extern long long a[][20][26][26][22];
void foo()
{
  for (short d = 0; d+1; d++)
    for (unsigned e = 0; e < 25; e += 4)
      for (unsigned f = 0; f < 25; f += 4)
        for (int g = 0; g < 21; g += 4)
          a[4][d][e][f][g] = 0;
}
$ arm-eabi-gcc -c test.c -march=armv8.1-m.main -O3
--param=max-completely-peeled-insns=1300
/tmp/ccDd7AwT.s: Assembler messages:
/tmp/ccDd7AwT.s:1642: Error: branch out of range or not a multiple of 2

Reply via email to