Name Strings
SPV_ALTERA_arbitrary_precision_floating_point
Contact
To report problems with this extension, please open a new issue at:
Contributors
-
Ajaykumar Kannan, Intel
-
Shuo Niu, Intel
-
Daniel Zhang, Intel
Notice
Copyright (c) 2023,2025 Intel Corporation
Status
Supported
Version
Last Modified Date |
2025-03-05 |
Revision |
2 |
Dependencies
This extension is written against the SPIR-V Specification Version 1.6, Revision 2.
While this extension does not require SPV_ALTERA_arbitrary_precision_integers, the new operators it adds are significantly more useful when that extension is supported as the combination of the two extensions allows for more freedom in the width of arbitrary precision floating point data types that can be represented.
Overview
This extension adds instructions for performing arbitrary precision floating point computations. Each arbitrary-precision floating point value is represented as an OpTypeInt as described below. This datatype and its corresponding operations can be useful on targets that can take advantage of narrower representation such as FPGAs.
The datatype can be characterized by two parameters:
-
E: the number of exponent bits
-
M: the number of mantissa bits
The total width of the OpTypeInt container is E+M+1 where the extra bit is used to represent the sign.
Note that the signedness capabilities of OpTypeInt are not used for any of the operations.
The data layout is shown below:
[ S (sign bit) ][ E (Exponent) ][ M (Mantissa) ]
^--MSB LSB--^
The width of the data (E+M+1) is encoded with the width of the OpTypeInt.
The other parameters regarding the type (namely E and M) are encoded in the arguments of the operations.
Operation Controls
Each of the operations will also provide some control over the Rounding Mode and the Subnormal support.
Extension Name
To use this extension within a SPIR-V module, the following OpExtension must be present in the module:
OpExtension "SPV_ALTERA_arbitrary_precision_floating_point"
New Capabilities
This extension introduces a new capability:
ArbitraryPrecisionFloatingPointALTERA
New Instructions
Instructions added under the ArbitraryPrecisionFloatingPointALTERA capability:
OpArbitraryFloatAddALTERA OpArbitraryFloatSubALTERA OpArbitraryFloatMulALTERA OpArbitraryFloatDivALTERA OpArbitraryFloatGTALTERA OpArbitraryFloatGEALTERA OpArbitraryFloatLTALTERA OpArbitraryFloatLEALTERA OpArbitraryFloatEQALTERA OpArbitraryFloatRecipALTERA OpArbitraryFloatRSqrtALTERA OpArbitraryFloatCbrtALTERA OpArbitraryFloatHypotALTERA OpArbitraryFloatSqrtALTERA OpArbitraryFloatLogALTERA OpArbitraryFloatLog2ALTERA OpArbitraryFloatLog10ALTERA OpArbitraryFloatLog1pALTERA OpArbitraryFloatExpALTERA OpArbitraryFloatExp2ALTERA OpArbitraryFloatExp10ALTERA OpArbitraryFloatExpm1ALTERA OpArbitraryFloatSinALTERA OpArbitraryFloatCosALTERA OpArbitraryFloatSinCosALTERA OpArbitraryFloatSinPiALTERA OpArbitraryFloatCosPiALTERA OpArbitraryFloatSinCosPiALTERA OpArbitraryFloatASinALTERA OpArbitraryFloatASinPiALTERA OpArbitraryFloatACosALTERA OpArbitraryFloatACosPiALTERA OpArbitraryFloatATanALTERA OpArbitraryFloatATanPiALTERA OpArbitraryFloatATan2ALTERA OpArbitraryFloatPowALTERA OpArbitraryFloatPowRALTERA OpArbitraryFloatPowNALTERA OpArbitraryFloatCastALTERA OpArbitraryFloatCastFromIntALTERA OpArbitraryFloatCastToIntALTERA
Token Number Assignments
|
5845 |
|
5846 |
|
5847 |
|
5848 |
|
5849 |
|
5850 |
|
5851 |
|
5852 |
|
5853 |
|
5854 |
|
5855 |
|
5856 |
|
5857 |
|
5858 |
|
5859 |
|
5860 |
|
5861 |
|
5862 |
|
5863 |
|
5864 |
|
5865 |
|
5866 |
|
5867 |
|
5868 |
|
5869 |
|
5870 |
|
5871 |
|
5872 |
|
5840 |
|
5873 |
|
5874 |
|
5875 |
|
5876 |
|
5877 |
|
5878 |
|
5879 |
|
5880 |
|
5881 |
|
5882 |
|
5841 |
|
5842 |
|
5843 |
Modifications to the SPIR-V Specification Version 1.6
After Section 3.16, add a new section "3.16a Subnormal Support" as follows:
Subnormal Support
Control whether subnormal support is enabled or not.
| Value | Subnormal Support |
|---|---|
0 |
Flush subnormal numbers to zero on inputs and outputs |
1 |
Enable support for operating on subnormal numbers |
After Section 3.16, add a new section "3.16d Rounding Accuracy" as follows:
Rounding Accuracy
Controls whether rounding operations can be relaxed to trade correctness for improved resource utilization.
| Value | Mode | Behavior |
|---|---|---|
0 |
CORRECT_ALTERA |
Conform to the rounding mode specified by the instruction’s rounding mode operand. |
1 |
FAITHFUL_ALTERA |
Allow some tolerance for error (within 1ULP of the infinitely precise result) for rounding. This mode is useful for devices that can trade CORRECT_ALTERA rounding for improved resource utilization. |
Capability
Modify Section 3.31, Capability, adding a row to the Capability table:
| Capability | Implicitly Declares | |
|---|---|---|
5845 |
ArbitraryPrecisionFloatingPointALTERA Allows the use of various operations for arbitrary precision floating-point math |
|
Instructions
In Section 3.32.13, Arithmetic Instructions, add the following instructions:
OpArbitraryFloatAddALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B and the result of Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult, Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result, A and B respectively. Note that the exponent values (Ea, Eb, Eresult) are inferred from the width of the OpTypeInt values used to represent their corresponding arguments (A, B, Result) Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||||
11 |
5846 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatSubALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B and the result of Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult, Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result, A and B respectively. Note that the exponent values (Ea, Eb, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||||
11 |
5847 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatMulALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B and the result of Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult, Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result, A and B respectively. Note that the exponent values (Ea, Eb, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||||
11 |
5848 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatDivALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B and the result of Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult, Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result, A and B respectively. Note that the exponent values (Ea, Eb, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||||
11 |
5849 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatGTALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B.
The two numbers are compared and a value of Result Type must be a Boolean type. Result is of type OpTypeBool. Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within A and B respectively. Note that the exponent values (Ea, Eb) are inferred from the width of the OpTypeInt. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||
7 |
5850 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
OpArbitraryFloatGEALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B.
The two numbers are compared and a value of Result Type must be a Boolean type. Result is of type OpTypeBool. Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within A and B respectively. Note that the exponent values (Ea, Eb) are inferred from the width of the OpTypeInt. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||
7 |
5851 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
OpArbitraryFloatLTALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B.
The two numbers are compared and a value of Result Type must be a Boolean type. Result is of type OpTypeBool. Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within A and B respectively. Note that the exponent values (Ea, Eb) are inferred from the width of the OpTypeInt. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||
7 |
5852 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
OpArbitraryFloatLEALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B.
The two numbers are compared and a value of Result Type must be a Boolean type. Result is of type OpTypeBool. Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within A and B respectively. Note that the exponent values (Ea, Eb) are inferred from the width of the OpTypeInt. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||
7 |
5853 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
OpArbitraryFloatEQALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B.
The two numbers are compared and a value of Result Type must be a Boolean type. Result is of type OpTypeBool. Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within A and B respectively. Note that the exponent values (Ea, Eb) are inferred from the width of the OpTypeInt. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||
7 |
5854 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
OpArbitraryFloatRecipALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the reciprocal of the value is returned in Result. Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5855 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatRSqrtALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the reciprocal of the square root of the value is returned in Result. Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5856 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatCbrtALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the cube root of the value is returned in Result. Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5857 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatHypotALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B and the hypotenuse, sqrt(A^2 + B^2), is returned in Result. Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult, Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result, A and B respectively. Note that the exponent values (Ea, Eb, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||||
11 |
5858 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatSqrtALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the square root of the value is returned in Result. Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5859 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatLogALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5860 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatLog2ALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5861 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatLog10ALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5862 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatLog1pALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5863 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatExpALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5864 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatExp2ALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5865 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatExp10ALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5866 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatExpm1ALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5867 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatSinALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the sine of the value is returned in Result. Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5868 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatCosALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the cosine of the value is returned in Result. Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5869 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatSinCosALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the sine and cosine of the value is returned in Result. Result Type must be a two-component vector of OpTypeInt. The first component of the Result contains the sine of A and is an arbitrary precision floating point number. The second component of the Result contains the cosine of A and is also an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5870 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatSinPiALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5871 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatCosPiALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5872 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatSinCosPiALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the sine and cosine of Result Type must be a two-component vector of OpTypeInt. The first component of the Result contains the sine of A and is an arbitrary precision floating point number. The second component of the Result contains the cosine of A and is also an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5840 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatASinALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5873 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatASinPiALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5874 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatACosALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5875 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatACosPiALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5876 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatATanALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5877 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatATanPiALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5878 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatATan2ALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B and the Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult, Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result, A and B respectively. Note that the exponent values (Ea, Eb, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||||
11 |
5879 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatPowALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B and the value of Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult, Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result, A and B respectively. Note that the exponent values (Ea, Eb, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||||
11 |
5880 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatPowRALTERA Two OpTypeInt values representing two arbitrary precision floating point numbers are passed in as A and B.
The value of Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult, Ma and Mb are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result, A and B respectively. Note that the exponent values (Ea, Eb, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||||
11 |
5881 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal Mb |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatPowNALTERA Two OpTypeInt values representing an arbitrary precision floating point number and an arbitrary precision integer number of signedness SignOfB are passed in as A and B respectively.
The value of Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. SignOfB specifies whether B is signed or unsigned. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. It is ignored if the Accuracy operand is set to "FAITHFUL_ALTERA". Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||||
11 |
5882 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
B <id> |
Literal SignOfB |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatCastALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A. It is type converted into an arbitrary precision floating point number with the new specification (Eresult, Mresult) and returned as Result. Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult and Ma are 32-bit unsigned integers that define the mantissa widths of the floating point types within Result and A respectively. Note that the exponent values (Ea, Eresult) are inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5841 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal Mresult |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
OpArbitraryFloatCastFromIntALTERA An OpTypeInt representing an integer of signedness FromSign is passed in as A. It is type converted into an arbitrary precision floating point number with the specification (Eresult, Mresult) and sign FromSign. The result of the convert operation is returned in Result. Result Type must be OpTypeInt. Result is the <id> of the operation’s result, which is an arbitrary precision floating point number. Mresult is a 32-bit unsigned integer that defines the mantissa width of the floating point value in Result. Note that the exponent value (Eresult) is inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5842 |
<id> Result Type |
Result <id> |
A <id> |
Literal Mresult |
Literal FromSign |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccurcy Accuracy |
OpArbitraryFloatCastToIntALTERA An OpTypeInt representing an arbitrary precision floating point number is passed in as A. It is type converted into an integer with signedness ToSign and returned as Result. Result Type must be OpTypeInt, whose Signedness operand is ToSign. Behaviour is undefined if Result Type is not wide enough to hold the converted value. Result is the <id> of the operation’s result, which is an arbitrary precision integer. Ma is a 32-bit unsigned integer that defines the mantissa width of the floating point value in A. Note that the exponent value (Ea) is inferred from the width of the OpTypeInt. Subnormal is a SubnormalMode chosen from Table 3.16a that specifies whether subnormal numbers should be supported or flushed to zero before and after the operation. Rounding is a RoundingMode chosen from Table 3.16 that controls the rounding mode for the result. Accuracy is a RoundingAccuracy chosen from Table 3.16d that controls the rounding accuracy of the result. |
Capability: ArbitraryPrecisionFloatingPointALTERA |
||||||||
9 |
5843 |
<id> Result Type |
Result <id> |
A <id> |
Literal Ma |
Literal ToSign |
SubnormalMode Subnormal |
RoundingMode Rounding |
RoundingAccuracy Accuracy |
Validation Rules
-
Any
M*literal argument to any instruction added in this extension can’t exceed the width of its corresponding OpTypeInt argument minus 1
Issues
None.
Revision History
| Rev | Date | Author | Changes |
|---|---|---|---|
2 |
2025-03-05 |
Jessica Davies |
Fix for https://github.com/KhronosGroup/SPIRV-Registry/issues/315 |
1 |
2023-03-29 |
Ajaykumar Kannan |
Initial Public Release |