...
1!sum
2- go: DotProductPairs
3 asm: VPMADDWD
4 in:
5 - &int
6 go: $t
7 base: int
8 - *int
9 out:
10 - &int2 # The elemBits are different
11 go: $t2
12 base: int
13- go: DotProductPairsSaturated
14 asm: VPMADDUBSW
15 in:
16 - &uint
17 go: $t
18 base: uint
19 overwriteElementBits: 8
20 - &int3
21 go: $t3
22 base: int
23 overwriteElementBits: 8
24 out:
25 - *int2
26# - go: DotProductBroadcast
27# asm: VDPP[SD]
28# in:
29# - &dpb_src
30# go: $t
31# - *dpb_src
32# - class: immediate
33# const: 127
34# out:
35# - *dpb_src
36- go: AddDotProductPairs
37 asm: "VPDPWSSD"
38 in:
39 - &pdpa_acc
40 go: $t_acc
41 base: int
42 elemBits: 32
43 - &pdpa_src1
44 go: $t_src1
45 base: int
46 overwriteElementBits: 16
47 - &pdpa_src2
48 go: $t_src2
49 base: int
50 overwriteElementBits: 16
51 out:
52 - *pdpa_acc
53- go: MulAdd
54 asm: "VFMADD213PS|VFMADD213PD"
55 in:
56 - &fma_op
57 go: $t
58 base: float
59 - *fma_op
60 - *fma_op
61 out:
62 - *fma_op
63- go: MulAddSub
64 asm: "VFMADDSUB213PS|VFMADDSUB213PD"
65 in:
66 - *fma_op
67 - *fma_op
68 - *fma_op
69 out:
70 - *fma_op
71- go: MulSubAdd
72 asm: "VFMSUBADD213PS|VFMSUBADD213PD"
73 in:
74 - *fma_op
75 - *fma_op
76 - *fma_op
77 out:
78 - *fma_op
79- go: SumAbsDiff
80 asm: "VPSADBW"
81 in:
82 - go: $t
83 base: uint
84 - go: $t
85 base: uint
86 out:
87 - go: $t2
88 base: uintView as plain text