asm volatile(
"vsetvli t0, t0, e16, m1, ta, ma\n\t"
"vle16.v v0, (%[a])\n\t"
"vle16.v v1, (%[b])\n\t"
"vfmadot v2, v0, v1\n\t"
: [c] "=m"(c)
: [a] "r"(a), [b] "r"(b)
: "memory");
上面的代码在BianbuCloud云环境中使用g++编译会报错,无法识别vfmadot指令

asm volatile(
"vsetvli x7, x0, e8, m1, tu, mu\n\t"
"vle8.v v0, (%[a])\n\t"
"vle8.v v1, (%[b])\n\t"
"vle8.v v2, (%[c])\n\t"
"vmadotn v6, v0, v2, t0\n\t"
"vsetvli x7, x0, e32, m1, tu, mu\n\t"
"vse32.v v6, %[d]\n\t"
"vse32.v v7, %[e]\n\t"
: [d] "=g"(d), [e] "=g"(e)
: [a] "r"(a), [b] "r"(b), [c] "r"(c)
: "memory",
"v0", "v1", "v2", "v3", "v4", "v5", "v6", "v7");
还有vmadotn指令也无法编译
K1是IME第一代,发在github上的spec描述是从第二代开始完整的,第一代中,有vmadot的8bit ss,us,su,uu,及显式指定n的vmadot1,vmadot2,vmadot3