| !sum |
| # Add |
| - go: Add |
| asm: "VPADD[BWDQ]|VADDP[SD]" |
| in: |
| - &any |
| go: $t |
| - *any |
| out: |
| - *any |
| # Add Saturated |
| - go: AddSaturated |
| asm: "VPADDS[BWDQ]" |
| in: |
| - &int |
| go: $t |
| base: int |
| - *int |
| out: |
| - *int |
| - go: AddSaturated |
| asm: "VPADDUS[BWDQ]" |
| in: |
| - &uint |
| go: $t |
| base: uint |
| - *uint |
| out: |
| - *uint |
| |
| # Sub |
| - go: Sub |
| asm: "VPSUB[BWDQ]|VSUBP[SD]" |
| in: &2any |
| - *any |
| - *any |
| out: &1any |
| - *any |
| # Sub Saturated |
| - go: SubSaturated |
| asm: "VPSUBS[BWDQ]" |
| in: &2int |
| - *int |
| - *int |
| out: &1int |
| - *int |
| - go: SubSaturated |
| asm: "VPSUBUS[BWDQ]" |
| in: |
| - *uint |
| - *uint |
| out: |
| - *uint |
| - go: AddPairs |
| asm: "VPHADD[DW]" |
| in: &2any128 |
| - &any128 |
| go: $t |
| bits: 128 |
| - *any128 |
| out: &1any128 |
| - *any128 |
| - go: SubPairs |
| asm: "VPHSUB[DW]" |
| in: *2any128 |
| out: *1any128 |
| - go: AddPairs |
| asm: "VHADDP[SD]" # floats |
| in: *2any128 |
| out: *1any128 |
| - go: SubPairs |
| asm: "VHSUBP[SD]" # floats |
| in: *2any128 |
| out: *1any128 |
| - go: AddPairsSaturated |
| asm: "VPHADDS[DW]" |
| in: &2int128 |
| - &int128 |
| go: $t |
| base: int |
| bits: 128 |
| - *int128 |
| out: &1int128 |
| - *int128 |
| - go: SubPairsSaturated |
| asm: "VPHSUBS[DW]" |
| in: *2int128 |
| out: *1int128 |
| - go: AddPairsGrouped |
| asm: "VPHADD[DW]" |
| in: &2any256 |
| - &any256 |
| go: $t |
| bits: 256 |
| - *any256 |
| out: &1any256 |
| - *any256 |
| - go: SubPairsGrouped |
| asm: "VPHSUB[DW]" |
| in: *2any256 |
| out: *1any256 |
| - go: AddPairsGrouped |
| asm: "VHADDP[SD]" # floats |
| in: *2any256 |
| out: *1any256 |
| - go: SubPairsGrouped |
| asm: "VHSUBP[SD]" # floats |
| in: *2any256 |
| out: *1any256 |
| - go: AddPairsSaturatedGrouped |
| asm: "VPHADDS[DW]" |
| in: &2int256 |
| - &int256 |
| go: $t |
| base: int |
| bits: 256 |
| - *int256 |
| out: &1int256 |
| - *int256 |
| - go: SubPairsSaturatedGrouped |
| asm: "VPHSUBS[DW]" |
| in: *2int256 |
| out: *1int256 |