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

--- Comment #18 from Vladimir Makarov <vmakarov at gcc dot gnu.org> ---
(In reply to John David Anglin from comment #16)
> Things are improved but a similar error occurs in the second umod:SI
> call in /testsuite/gcc.c-torture/execute/arith-rand-ll.c:
> 
> 
> (insn 341 339 668 31 (set (reg:SI 26 %r26)
>         (reg:SI 114 [ _19 ]))
> "/home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/arith-rand-ll.c":
> 98:10 42 {*pa.md:2195}
>      (expr_list:REG_DEAD (reg:SI 114 [ _19 ])
>         (nil)))
> (insn 668 341 342 31 (set (reg:SI 457 [ _21 ])
>         (reg:SI 29 %r29))
> "/home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/arith-rand-ll.c":
> 97:10 42 {*pa.md:2195}
>      (expr_list:REG_DEAD (reg:SI 29 %r29)
>         (nil)))
> (insn 342 668 343 31 (set (reg:SI 25 %r25)
>         (reg/v:SI 158 [ yy+-2 ]))
> "/home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/arith-rand-ll.c":
> 98:10 42 {*pa.md:2195}
>      (nil))
> (insn 343 342 669 31 (parallel [
>             (set (reg:SI 29 %r29)
>                 (mod:SI (reg:SI 26 %r26)
>                     (reg:SI 25 %r25)))
>             (clobber (reg:SI 1 %r1))
>             (clobber (reg:SI 26 %r26))
>             (clobber (reg:SI 25 %r25))
>             (clobber (reg:SI 31 %r31))
>         ])
> "/home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/arith-rand-ll.c":
> 98:10 132 {*pa.md:5846}
>      (expr_list:REG_DEAD (reg:SI 26 %r26)
>         (expr_list:REG_DEAD (reg:SI 25 %r25)
>             (expr_list:REG_UNUSED (reg:SI 31 %r31)
>                 (expr_list:REG_UNUSED (reg:SI 26 %r26)
>                     (expr_list:REG_UNUSED (reg:SI 25 %r25)
>                         (expr_list:REG_UNUSED (reg:SI 1 %r1)
>                             (nil))))))))
> 
> Insn 341 is dropped in the reload pass.
> 

Sorry, I don't see that insn 341 is dropped.  For trunk with my recent patches
it is translated into

  838: %r25:SI=%r30:SI-0xe8
  341: %r26:SI=[%r25:SI]

where p114 is in memory at address r30-0xe8

>  /home/dave/gnu/gcc/objdir/gcc/cc1 -fpreprocessed ./arith-rand-ll.i -quiet
> -da -dumpdir ./ -dumpbase arith-rand-ll.c -dumpbase-ext .c -O3 -w -version
> -fdiagnostics-color=never -fdiagnostics-urls=never
> -fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers
> -fdiagnostics-path-format=separate-events
> -fdiagnostics-text-art-charset=none -fno-diagnostics-show-event-links
> -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions
> -o ./arith-rand-ll.s

Reply via email to