Text file src/simd/archsimd/_gen/simdgen/ops/AddSub/go.yaml

     1  !sum
     2  # Add
     3  - go: Add
     4    asm: "VPADD[BWDQ]|VADDP[SD]"
     5    in:
     6    - &any
     7      go: $t
     8    - *any
     9    out:
    10    - *any
    11  # Add Saturated
    12  - go: AddSaturated
    13    asm: "VPADDS[BWDQ]"
    14    in:
    15    - &int
    16      go: $t
    17      base: int
    18    - *int
    19    out:
    20    - *int
    21  - go: AddSaturated
    22    asm: "VPADDUS[BWDQ]"
    23    in:
    24    - &uint
    25      go: $t
    26      base: uint
    27    - *uint
    28    out:
    29    - *uint
    30  
    31  # Sub
    32  - go: Sub
    33    asm: "VPSUB[BWDQ]|VSUBP[SD]"
    34    in: &2any
    35    - *any
    36    - *any
    37    out: &1any
    38    - *any
    39  # Sub Saturated
    40  - go: SubSaturated
    41    asm: "VPSUBS[BWDQ]"
    42    in: &2int
    43    - *int
    44    - *int
    45    out: &1int
    46    - *int
    47  - go: SubSaturated
    48    asm: "VPSUBUS[BWDQ]"
    49    in:
    50    - *uint
    51    - *uint
    52    out:
    53    - *uint
    54  - go: AddPairs
    55    asm: "VPHADD[DW]"
    56    in: &2any128
    57    - &any128
    58      go: $t
    59      bits: 128
    60    - *any128
    61    out: &1any128
    62    - *any128
    63  - go: SubPairs
    64    asm: "VPHSUB[DW]"
    65    in: *2any128
    66    out: *1any128
    67  - go: AddPairs
    68    asm: "VHADDP[SD]" # floats
    69    in: *2any128
    70    out: *1any128
    71  - go: SubPairs
    72    asm: "VHSUBP[SD]"  # floats
    73    in: *2any128
    74    out: *1any128
    75  - go: AddPairsSaturated
    76    asm: "VPHADDS[DW]"
    77    in: &2int128
    78    - &int128
    79      go: $t
    80      base: int
    81      bits: 128
    82    - *int128
    83    out: &1int128
    84    - *int128
    85  - go: SubPairsSaturated
    86    asm: "VPHSUBS[DW]"
    87    in: *2int128
    88    out: *1int128
    89  - go: AddPairsGrouped
    90    asm: "VPHADD[DW]"
    91    in: &2any256
    92    - &any256
    93      go: $t
    94      bits: 256
    95    - *any256
    96    out: &1any256
    97    - *any256
    98  - go: SubPairsGrouped
    99    asm: "VPHSUB[DW]"
   100    in: *2any256
   101    out: *1any256
   102  - go: AddPairsGrouped
   103    asm: "VHADDP[SD]" # floats
   104    in: *2any256
   105    out: *1any256
   106  - go: SubPairsGrouped
   107    asm: "VHSUBP[SD]"  # floats
   108    in: *2any256
   109    out: *1any256
   110  - go: AddPairsSaturatedGrouped
   111    asm: "VPHADDS[DW]"
   112    in: &2int256
   113    - &int256
   114      go: $t
   115      base: int
   116      bits: 256
   117    - *int256
   118    out: &1int256
   119    - *int256
   120  - go: SubPairsSaturatedGrouped
   121    asm: "VPHSUBS[DW]"
   122    in: *2int256
   123    out: *1int256
   124  

View as plain text