!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