Text file src/simd/_gen/simdgen/ops/FPonlyArith/go.yaml

     1  !sum
     2  - go: Div
     3    asm: "V?DIVP[SD]"
     4    in: &2fp
     5    - &fp
     6      go: $t
     7      base: float
     8    - *fp
     9    out: &1fp
    10    - *fp
    11  - go: Sqrt
    12    asm: "V?SQRTP[SD]"
    13    in: *1fp
    14    out: *1fp
    15  # TODO: Provide separate methods for 12-bit precision and 14-bit precision?
    16  - go: Reciprocal
    17    asm: "VRCP(14)?P[SD]"
    18    in: *1fp
    19    out: *1fp
    20  - go: ReciprocalSqrt
    21    asm: "V?RSQRT(14)?P[SD]"
    22    in: *1fp
    23    out: *1fp
    24  - go: Scale
    25    asm: "VSCALEFP[SD]"
    26    in: *2fp
    27    out: *1fp
    28  
    29  - go: "RoundToEven|Ceil|Floor|Trunc"
    30    regexpTag: "fp"
    31    asm: "VROUNDP[SD]"
    32    in:
    33    - *fp
    34    - class: immediate
    35      const: 0 # place holder
    36    out: *1fp
    37  
    38  - go: "(RoundToEven|Ceil|Floor|Trunc)Scaled"
    39    regexpTag: "fp"
    40    asm: "VRNDSCALEP[SD]"
    41    in:
    42    - *fp
    43    - class: immediate
    44      const: 0 # place holder
    45      immOffset: 4 # "M", round to numbers with M digits after dot(by means of binary number).
    46      name: prec
    47    out: *1fp
    48  - go: "(RoundToEven|Ceil|Floor|Trunc)ScaledResidue"
    49    regexpTag: "fp"
    50    asm: "VREDUCEP[SD]"
    51    in:
    52    - *fp
    53    - class: immediate
    54      const: 0 # place holder
    55      immOffset: 4 # "M", round to numbers with M digits after dot(by means of binary number).
    56      name: prec
    57    out: *1fp
    58  
    59  - go: "AddSub"
    60    asm: "VADDSUBP[SD]"
    61    in:
    62    - *fp
    63    - *fp
    64    out:
    65    - *fp
    66  

View as plain text