Browse Source

support flag for NaN/Inf handling and fix scaling of NaN/Inf values

tags/v0.3.30
Martin Kroeker GitHub 4 months ago
parent
commit
28f8fdaf0f
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
1 changed files with 7 additions and 3 deletions
  1. +7
    -3
      kernel/arm64/zscal.S

+ 7
- 3
kernel/arm64/zscal.S View File

@@ -33,7 +33,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define INC_X x4 /* X stride */ #define INC_X x4 /* X stride */
#define I x5 /* loop variable */ #define I x5 /* loop variable */
#define X_COPY x6 /* Copy of X */ #define X_COPY x6 /* Copy of X */
#define FLAG x7 /* NaN handling level */
/******************************************************************************* /*******************************************************************************
* Macro definitions * Macro definitions
*******************************************************************************/ *******************************************************************************/
@@ -217,11 +217,15 @@ zscal_begin:
cmp N, xzr cmp N, xzr
ble .Lzscal_kernel_L999 ble .Lzscal_kernel_L999


ldr FLAG, [sp]
cmp FLAG, #1
beq .Lzscal_kernel_R_non_zero

fcmp DA_R, #0.0 fcmp DA_R, #0.0
bne .Lzscal_kernel_R_non_zero bne .Lzscal_kernel_R_non_zero


fcmp DA_I, #0.0
beq .Lzscal_kernel_RI_zero
// fcmp DA_I, #0.0
// beq .Lzscal_kernel_RI_zero


// b .Lzscal_kernel_R_zero // b .Lzscal_kernel_R_zero




Loading…
Cancel
Save