This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: patch to fix PR82353


Hello!

> The following patch fixes
>
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82353
>
> LRA did not update hard reg liveness on bb borders for hard regs which are part of insn patterns
> like CFLAGS reg. It was ok for inheritance in EBB which creates only moves and they usually
> have no embedded hard regs in the patterns. But LRA rematerialization needs this. So this patch
> implements such hard reg liveness updates.
>
> The patch was successfully bootstrapped and tested on x86-64.
>
> Committed as rev. 253656.

It looks that this patch caused libgo build bootstrap failure on
x86_64-linux-gnu:

../../../git/gcc/libgo/go/cmd/go/internal/load/pkg.go:377:1: error:
this is the insn:
(insn 1134 2835 2611 195 (parallel [
            (set (reg:DI 492)
                (const_int 0 [0]))
            (set (reg/f:DI 1008 [orig:490 <retval> ] [490])
                (plus:DI (ashift:DI (reg:DI 492)
                        (const_int 3 [0x3]))
                    (reg/f:DI 1008 [orig:490 <retval> ] [490])))
            (set (reg/f:DI 1009 [880])
                (plus:DI (ashift:DI (reg:DI 492)
                        (const_int 3 [0x3]))
                    (reg/f:DI 1009 [880])))
            (set (mem:BLK (reg/f:DI 1008 [orig:490 <retval> ] [490])
[22 *_372+0 S1048 A64])
                (mem/c:BLK (reg/f:DI 1009 [880]) [22 GOTMP.492+0 S1048 A128]))
            (use (reg:DI 492))
        ]) "../../../git/gcc/libgo/go/cmd/go/internal/load/pkg.go":679
930 {*rep_movdi_rex64}
     (expr_list:REG_UNUSED (reg/f:DI 1009 [880])
        (expr_list:REG_UNUSED (reg/f:DI 1008 [orig:490 <retval> ] [490])
            (expr_list:REG_UNUSED (reg:DI 492)
                (expr_list:REG_EH_REGION (const_int 1 [0x1])
                    (nil))))))
during RTL pass: reload
../../../git/gcc/libgo/go/cmd/go/internal/load/pkg.go:377:1: internal
compiler error: in assign_by_spills, at lra-assigns.c:1468
0x6b2709 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*)
        ../../git/gcc/gcc/rtl-error.c:108
0xbe87fa assign_by_spills
        ../../git/gcc/gcc/lra-assigns.c:1468
0xbe94a6 lra_assign()
        ../../git/gcc/gcc/lra-assigns.c:1662
0xbe48d4 lra(_IO_FILE*)
        ../../git/gcc/gcc/lra.c:2450
0xb9ec51 do_reload
        ../../git/gcc/gcc/ira.c:5440
0xb9ec51 execute
        ../../git/gcc/gcc/ira.c:5624
Please submit a full bug report,

Uros.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]