Yes, I added this code myself once I applied your patch. The problem I
see is that reg+offset is now recognized as a memory operand anywhere we
ask for a memory operand in the machine description. When I applied
these two changes I would get output like:
sta.l -16($fp), 2
...which is clearly wrong.
Were you able to build libgcc with these changes? I wasn't.
Is $r1 used again after the sto.l? That might explain it.
AG