// Copyright (C) 2016 ecmascript_simd authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. /*--- esid: constructor-properties description: Test floating point SIMD operations. includes: [simdUtilities.js] ---*/ simdTypes.filter(isFloatType).forEach(function(type) { testSimdFunction(type.name + ' div', function() { testBinaryOp(type, 'div', function(a, b) { return a / b; }); }); testSimdFunction(type.name + ' abs', function() { testUnaryOp(type, 'abs', Math.abs); }); testSimdFunction(type.name + ' min', function() { testBinaryOp(type, 'min', Math.min); }); testSimdFunction(type.name + ' max', function() { testBinaryOp(type, 'max', Math.max); }); testSimdFunction(type.name + ' minNum', function() { testBinaryOp(type, 'minNum', minNum); }); testSimdFunction(type.name + ' maxNum', function() { testBinaryOp(type, 'maxNum', maxNum); }); testSimdFunction(type.name + ' sqrt', function() { testUnaryOp(type, 'sqrt', function(a) { return Math.sqrt(a); }); }); testSimdFunction(type.name + ' reciprocalApproximation', function() { testUnaryOp(type, 'reciprocalApproximation', function(a) { return 1 / a; }); }); testSimdFunction(type.name + ' reciprocalSqrtApproximation', function() { testUnaryOp(type, 'reciprocalSqrtApproximation', function(a) { return 1 / Math.sqrt(a); }); }); })