blob: 75222a1b8d2075386adcfcab6481ffe1134e5100 [file]
!sum
# Add
- go: Add
asm: "VPADD[BWDQ]|VADDP[SD]"
in:
- &any
go: $t
- *any
out:
- *any
- go: MaskedAdd
asm: "VPADD[BWDQ]|VADDP[SD]"
in:
- class: mask
- *any
- *any
out:
- *any
# Saturated Add
- go: SaturatedAdd
asm: "VPADDS[BWDQ]"
in:
- &int
go: $t
base: int
- *int
out:
- *int
- go: SaturatedAdd
asm: "VPADDS[BWDQ]"
in:
- &uint
go: $t
base: uint
- *uint
out:
- *uint
- go: MaskedSaturatedAdd
asm: "VPADDS[BWDQ]"
in:
- class: mask
- *int
- *int
out:
- *int
- go: MaskedSaturatedAdd
asm: "VPADDS[BWDQ]"
in:
- class: mask
- *uint
- *uint
out:
- *uint
# Sub
- go: Sub
asm: "VPSUB[BWDQ]|VADDP[SD]"
in: &2any
- *any
- *any
out: &1any
- *any
- go: MaskedSub
asm: "VPSUB[BWDQ]|VADDP[SD]"
in:
- class: mask
- *any
- *any
out:
- *any
# Saturated Sub
- go: SaturatedSub
asm: "VPSUBS[BWDQ]"
in: &2int
- *int
- *int
out: &1int
- *int
- go: SaturatedSub
asm: "VPSUBS[BWDQ]"
in:
- *uint
- *uint
out:
- *uint
- go: MaskedSaturatedSub
asm: "VPSUBS[BWDQ]"
in:
- class: mask
- *int
- *int
out:
- *int
- go: MaskedSaturatedSub
asm: "VPSUBS[BWDQ]"
in:
- class: mask
- *uint
- *uint
out:
- *uint
- go: PairwiseAdd
asm: "VPHADD[DW]"
in: *2any
out: *1any
- go: PairwiseSub
asm: "VPHSUB[DW]"
in: *2any
out: *1any
- go: PairwiseAdd
asm: "VHADDP[SD]" # floats
in: *2any
out: *1any
- go: PairwiseSub
asm: "VHSUBP[SD]" # floats
in: *2any
out: *1any
- go: SaturatedPairwiseAdd
asm: "VPHADDS[DW]"
in: *2int
out: *1int
- go: SaturatedPairwiseSub
asm: "VPHSUBS[DW]"
in: *2int
out: *1int