blob: 062f9a5a223efb3e1be868931e36d30ff0475917 [file]
!sum
# Mul — integer multiply (low half), ZMUL. The unpredicated vector encoding is
# SVE2; the merging-predicated sibling is baseline SVE.
- go: Mul
asm: "ZMUL"
in:
- &int
go: $t
base: int
- *int
out:
- *int
- go: Mul
asm: "ZMUL"
in:
- &uint
go: $t
base: uint
- *uint
out:
- *uint
# Mul — floating-point multiply, ZFMUL (baseline SVE, both forms).
- go: Mul
asm: "ZFMUL"
in:
- &float
go: $t
base: float
- *float
out:
- *float
# MulHigh — integer multiply returning the high half, ZSMULH/ZUMULH. Like ZMUL,
# the unpredicated encodings are SVE2 and the predicated siblings baseline SVE.
- go: MulHigh
asm: "ZSMULH"
in:
- *int
- *int
out:
- *int
- go: MulHigh
asm: "ZUMULH"
in:
- *uint
- *uint
out:
- *uint