golang.org/x/arch@v0.17.0/internal/simdgen/types.yaml (about) 1 # This file defines the possible types of each operand and result. 2 # 3 # In general, we're able to narrow this down on some attributes directly from 4 # the machine instruction descriptions, but the Go mappings need to further 5 # constrain them and how they relate. For example, on x86 we can't distinguish 6 # int and uint, though we can distinguish these from float. 7 8 in: !repeat 9 - !sum &types 10 - {go: Int8x16, base: "int", bits: 8, w: 128} 11 - {go: Uint8x16, base: "uint", bits: 8, w: 128} 12 - {go: Int16x8, base: "int", bits: 16, w: 128} 13 - {go: Uint16x8, base: "uint", bits: 16, w: 128} 14 - {go: Int32x4, base: "int", bits: 32, w: 128} 15 - {go: Uint32x4, base: "uint", bits: 32, w: 128} 16 - {go: Int64x2, base: "int", bits: 64, w: 128} 17 - {go: Uint64x2, base: "uint", bits: 64, w: 128} 18 - {go: Float32x4, base: "float", bits: 32, w: 128} 19 - {go: Float64x2, base: "float", bits: 64, w: 128} 20 - {go: Int8x32, base: "int", bits: 8, w: 256} 21 - {go: Uint8x32, base: "uint", bits: 8, w: 256} 22 - {go: Int16x16, base: "int", bits: 16, w: 256} 23 - {go: Uint16x16, base: "uint", bits: 16, w: 256} 24 - {go: Int32x8, base: "int", bits: 32, w: 256} 25 - {go: Uint32x8, base: "uint", bits: 32, w: 256} 26 - {go: Int64x4, base: "int", bits: 64, w: 256} 27 - {go: Uint64x4, base: "uint", bits: 64, w: 256} 28 - {go: Float32x8, base: "float", bits: 32, w: 256} 29 - {go: Float64x4, base: "float", bits: 64, w: 256} 30 - {go: Int8x64, base: "int", bits: 8, w: 512} 31 - {go: Uint8x64, base: "uint", bits: 8, w: 512} 32 - {go: Int16x32, base: "int", bits: 16, w: 512} 33 - {go: Uint16x32, base: "uint", bits: 16, w: 512} 34 - {go: Int32x16, base: "int", bits: 32, w: 512} 35 - {go: Uint32x16, base: "uint", bits: 32, w: 512} 36 - {go: Int64x8, base: "int", bits: 64, w: 512} 37 - {go: Uint64x8, base: "uint", bits: 64, w: 512} 38 - {go: Float32x16, base: "float", bits: 32, w: 512} 39 - {go: Float64x8, base: "float", bits: 64, w: 512} 40 out: !repeat 41 - *types