| !sum |
| - go: DotProductPairs |
| asm: VPMADDWD |
| in: |
| - &int |
| go: $t |
| base: int |
| - *int |
| out: |
| - &int2 # The elemBits are different |
| go: $t2 |
| base: int |
| - go: DotProductPairsSaturated |
| asm: VPMADDUBSW |
| in: |
| - &uint |
| go: $t |
| base: uint |
| overwriteElementBits: 8 |
| - &int3 |
| go: $t3 |
| base: int |
| overwriteElementBits: 8 |
| out: |
| - *int2 |
| # - go: DotProductBroadcast |
| # asm: VDPP[SD] |
| # in: |
| # - &dpb_src |
| # go: $t |
| # - *dpb_src |
| # - class: immediate |
| # const: 127 |
| # out: |
| # - *dpb_src |
| - go: AddDotProductPairs |
| asm: "VPDPWSSD" |
| in: |
| - &pdpa_acc |
| go: $t_acc |
| base: int |
| elemBits: 32 |
| - &pdpa_src1 |
| go: $t_src1 |
| base: int |
| overwriteElementBits: 16 |
| - &pdpa_src2 |
| go: $t_src2 |
| base: int |
| overwriteElementBits: 16 |
| out: |
| - *pdpa_acc |
| - go: MulAdd |
| asm: "VFMADD213PS|VFMADD213PD" |
| in: |
| - &fma_op |
| go: $t |
| base: float |
| - *fma_op |
| - *fma_op |
| out: |
| - *fma_op |
| - go: MulAddSub |
| asm: "VFMADDSUB213PS|VFMADDSUB213PD" |
| in: |
| - *fma_op |
| - *fma_op |
| - *fma_op |
| out: |
| - *fma_op |
| - go: MulSubAdd |
| asm: "VFMSUBADD213PS|VFMSUBADD213PD" |
| in: |
| - *fma_op |
| - *fma_op |
| - *fma_op |
| out: |
| - *fma_op |
| - go: SumAbsDiff |
| asm: "VPSADBW" |
| in: |
| - go: $t |
| base: uint |
| - go: $t |
| base: uint |
| out: |
| - go: $t2 |
| base: uint |