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

            Bug ID: 107243
           Summary: ice in arithmetic_instr, at config/arm/arm.cc:2089
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dcb314 at hotmail dot com
  Target Milestone: ---

On machine type arm-linux-gnueabihf, this code 

void gdbstub_write_word(void) {
  int val = 0;
  void *addr = 0;
  unsigned long brr;
  asm volatile("        movgs   gr0,brr \n"
               "        sth%I2  %1,%M2  \n"
               "        movsg   brr,%0  \n"
               : "=r"(brr)
               : "r"(val), "m"(*addr));
}

does this:

during RTL pass: final
q.i: In function 'gdbstub_write_word':
q.i:9:1: internal compiler error: in arithmetic_instr, at
config/arm/arm.c:20612
    9 | }
      | ^

Reply via email to