hi all
I write a v16hi mode Unpack Low Data insn pattern and it is OK. v8si
and v4di modes are OK, too.
But the v32qi mode Unpack Low Data insn pattern get error like:
../../gcc-4.5.1/gcc/config/mips/hr.md:509: error: expected identifier
or ‘(’ before ‘goto’
../../gcc-4.5.1/gcc/config/mips/hr.md:511: error: expected ‘=’, ‘,’,
‘;’, ‘asm’ or ‘__attribute__’ before ‘:’ token
anyone will tell me what's wrong with my code?

;; V16HI Unpack Low Data
(define_insn "vec_punpcklhw"
  [(set (match_operand:V16HI 0 "register_operand" "=Z")
        (vec_select:V16HI
          (vec_concat:V32HI
            (match_operand:V16HI 1 "register_operand" "Z")
            (match_operand:V16HI 2 "register_operand" "Z"))
          (parallel [(const_int 0) (const_int 16)
                     (const_int 1) (const_int 17)
                     (const_int 2) (const_int 18)
                     (const_int 3) (const_int 19)
                     (const_int 4) (const_int 20)
                     (const_int 5) (const_int 21)
                     (const_int 6) (const_int 22)
                     (const_int 7) (const_int 23)])))]
  "TARGET_VECTORS"
  "vpunpcklhw\t%0,%1,%2"
  [(set_attr "type" "fadd")])

;; V32QI Unpack Low Data
(define_insn "vec_punpcklbh"
  [(set (match_operand:V32QI 0 "register_operand" "=Z")
        (vec_select:V32QI
          (vec_concat:V64QI
            (match_operand:V32QI 1 "register_operand" "Z")
            (match_operand:V32QI 2 "register_operand" "Z"))
          (parallel [(const_int 0) (const_int 32)
                     (const_int 1) (const_int 33)
                     (const_int 2) (const_int 34)
                     (const_int 3) (const_int 35)
                     (const_int 4) (const_int 36)
                     (const_int 5) (const_int 37)
                     (const_int 6) (const_int 38)
                     (const_int 7) (const_int 39)
                     (const_int 8) (const_int 40)
                     (const_int 9) (const_int 41)
                     (const_int 10) (const_int 42)
                     (const_int 11) (const_int 43)
                     (const_int 12) (const_int 44)
                     (const_int 13) (const_int 45)
                     (const_int 14) (const_int 46)
                     (const_int 15) (const_int 47)])))]
  "TARGET_VECTORS"
  "vpunpcklbh\t%0,%1,%2"
  [(set_attr "type" "fadd")])

Reply via email to