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

--- Comment #13 from luoxhu at gcc dot gnu.org ---
It is not visible in combine due to the constant data is in *.LC0 and
UNSPEC_VPERM. Will shelf this and switch to other high priority issues.

pr100866.c.277r.combine:

(note 4 0 20 2 [bb 2] NOTE_INSN_BASIC_BLOCK)
(insn 20 4 2 2 (set (reg:V8HI 126)
        (reg:V8HI 66 %v2 [ a ])) "pr100866.c":18:1 1132 {vsx_movv8hi_64bit}
     (expr_list:REG_DEAD (reg:V8HI 66 %v2 [ a ])
        (nil)))
(note 2 20 3 2 NOTE_INSN_DELETED)
(note 3 2 6 2 NOTE_INSN_FUNCTION_BEG)
(insn 6 3 18 2 (set (reg/f:DI 122)
        (unspec:DI [
                (symbol_ref/u:DI ("*.LC0") [flags 0x82])
                (reg:DI 2 %r2)
            ] UNSPEC_TOCREL)) "pr100866.c":19:13 719 {*tocrefdi}
     (expr_list:REG_EQUAL (symbol_ref/u:DI ("*.LC0") [flags 0x82])
        (nil)))
(insn 18 6 9 2 (set (reg:V16QI 123)
        (mem/u/c:V16QI (and:DI (reg/f:DI 122)
                (const_int -16 [0xfffffffffffffff0])) [0  S16 A128]))
"pr100866.c":19:13 1131 {vsx_movv16qi_64bit}
     (expr_list:REG_DEAD (reg/f:DI 122)
        (nil)))
(insn 9 18 10 2 (set (reg:V16QI 124)
        (not:V16QI (reg:V16QI 123))) "pr100866.c":19:13 508 {one_cmplv16qi2}
     (expr_list:REG_DEAD (reg:V16QI 123)
        (nil)))
(note 10 9 15 2 NOTE_INSN_DELETED)
(insn 15 10 16 2 (set (reg/i:V8HI 66 %v2)
        (unspec:V8HI [
                (reg:V8HI 126) repeated x2
                (reg:V16QI 124)
            ] UNSPEC_VPERM)) "pr100866.c":20:1 1830 {altivec_vperm_v8hi_direct}
     (expr_list:REG_DEAD (reg:V16QI 124)
        (expr_list:REG_DEAD (reg:V8HI 126)
            (nil))))
(insn 16 15 0 2 (use (reg/i:V8HI 66 %v2)) "pr100866.c":20:1 -1
     (nil))

;; Combiner totals: 12 attempts, 12 substitutions (2 requiring new space),

Reply via email to