package main
import "golang.org/x/arch/x86/x86asm"
func main() {
text := []byte{0xd9, 0xee} // fldz
_, err := x86asm.Decode(text[:], 64)
if err != nil {
panic(err)
}
}
I found two missing instructions (they're also missing in x86.csv, which suggests that x86.csv is not complete):
0xd9 0xed: FLDLN2
0xd9 0xee: FLDZ
There are also some missing AVX instructions: e.g.
c4 c1 f3 2a cc vcvtsi2sd %r12,%xmm1,%xmm1
/cc @rsc