http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48575

           Summary: RTL vector patterns are limited to 26 elements
           Product: gcc
           Version: 4.7.0
               URL: http://gcc.gnu.org/ml/gcc-patches/2011-03/msg02105.htm
                    l
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: hjl.to...@gmail.com


genrecog.c uses 26 lower case letters for vector elements.
Patterns like

;;(define_insn "vec_interleave_evenv32qi"
;;  [(set (match_operand:V32QI 0 "register_operand" "=r")
;;    (vec_select:V32QI
;;      (vec_concat:V64QI
;;        (match_operand:V32QI 1 "register_operand" "0")
;;        (match_operand:V32QI 2 "register_operand" "r"))
;;      (parallel [(const_int  0) (const_int 32)
;;             (const_int  2) (const_int 34)
;;             (const_int  4) (const_int 36)
;;             (const_int  6) (const_int 38)
;;             (const_int  8) (const_int 40)
;;             (const_int 10) (const_int 42)
;;             (const_int 12) (const_int 44)
;;             (const_int 14) (const_int 46)
;;             (const_int 16) (const_int 48)
;;             (const_int 18) (const_int 50)
;;             (const_int 20) (const_int 52)
;;             (const_int 22) (const_int 54)
;;             (const_int 24) (const_int 56)
;;             (const_int 26) (const_int 58)
;;             (const_int 28) (const_int 60)
;;             (const_int 30) (const_int 62)])))]
;;  ""
;;  "rimihv\t%0,%2,8,15,8"
;;  [(set_attr "type" "rimi")])

don't work since they have more 26 elements. There is no
fundamental reason to use lower case letters for vector
elements. A patch is posted at

http://gcc.gnu.org/ml/gcc-patches/2011-03/msg02105.html

to use [0x80...UCHAR_MAX] for vector elements.

Reply via email to