| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456 |
- //-------------------------------------------------------------------------------------------------------
- // Copyright (C) Microsoft Corporation and contributors. All rights reserved.
- // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
- //-------------------------------------------------------------------------------------------------------
- // Default all macros to nothing
- #ifndef ASMJS_MATH_FUNC_NAMES
- #define ASMJS_MATH_FUNC_NAMES(name, propertyName)
- #endif
- #ifndef ASMJS_MATH_CONST_NAMES
- #define ASMJS_MATH_CONST_NAMES(name, propertyName)
- #endif
- #ifndef ASMJS_ARRAY_NAMES
- #define ASMJS_ARRAY_NAMES(name, propertyName)
- #endif
- // ASMJS_SIMD_NAMES includes all constructors and operations
- #ifdef ASMJS_SIMD_NAMES
- #define ASMJS_SIMD_C_NAMES(name, propertyName, libName, entryPoint) ASMJS_SIMD_NAMES(name, propertyName, libName, entryPoint)
- #define ASMJS_SIMD_O_NAMES(name, propertyName, libName, entryPoint) ASMJS_SIMD_NAMES(name, propertyName, libName, entryPoint)
- #else
- #define ASMJS_SIMD_NAMES(name, propertyName, libName, entryPoint)
- #ifndef ASMJS_SIMD_C_NAMES
- #define ASMJS_SIMD_C_NAMES(name, propertyName, libName, entryPoint)
- #endif
- #ifndef ASMJS_SIMD_O_NAMES
- #define ASMJS_SIMD_O_NAMES(name, propertyName, libName, entryPoint)
- #endif
- #endif
- #ifndef ASMJS_SIMD_MARKERS
- #define ASMJS_SIMD_MARKERS(name)
- #endif
- ASMJS_MATH_FUNC_NAMES(sin, sin)
- ASMJS_MATH_FUNC_NAMES(cos, cos)
- ASMJS_MATH_FUNC_NAMES(tan, tan)
- ASMJS_MATH_FUNC_NAMES(asin, asin)
- ASMJS_MATH_FUNC_NAMES(acos, acos)
- ASMJS_MATH_FUNC_NAMES(atan, atan)
- ASMJS_MATH_FUNC_NAMES(ceil, ceil)
- ASMJS_MATH_FUNC_NAMES(floor, floor)
- ASMJS_MATH_FUNC_NAMES(exp, exp)
- ASMJS_MATH_FUNC_NAMES(log, log)
- ASMJS_MATH_FUNC_NAMES(pow, pow)
- ASMJS_MATH_FUNC_NAMES(sqrt, sqrt)
- ASMJS_MATH_FUNC_NAMES(abs, abs)
- ASMJS_MATH_FUNC_NAMES(atan2, atan2)
- ASMJS_MATH_FUNC_NAMES(imul, imul)
- ASMJS_MATH_FUNC_NAMES(fround, fround)
- ASMJS_MATH_FUNC_NAMES(min, min)
- ASMJS_MATH_FUNC_NAMES(max, max)
- ASMJS_MATH_FUNC_NAMES(clz32, clz32)
- ASMJS_MATH_CONST_NAMES(e, E)
- ASMJS_MATH_CONST_NAMES(ln10, LN10)
- ASMJS_MATH_CONST_NAMES(ln2, LN2)
- ASMJS_MATH_CONST_NAMES(log2e, LOG2E)
- ASMJS_MATH_CONST_NAMES(log10e, LOG10E)
- ASMJS_MATH_CONST_NAMES(pi, PI)
- ASMJS_MATH_CONST_NAMES(sqrt1_2, SQRT1_2)
- ASMJS_MATH_CONST_NAMES(sqrt2, SQRT2)
- ASMJS_MATH_CONST_NAMES(infinity, Infinity)
- ASMJS_MATH_CONST_NAMES(nan, NaN)
- ASMJS_ARRAY_NAMES(Uint8Array, Uint8Array)
- ASMJS_ARRAY_NAMES(Int8Array, Int8Array)
- ASMJS_ARRAY_NAMES(Uint16Array, Uint16Array)
- ASMJS_ARRAY_NAMES(Int16Array, Int16Array)
- ASMJS_ARRAY_NAMES(Uint32Array, Uint32Array)
- ASMJS_ARRAY_NAMES(Int32Array, Int32Array)
- ASMJS_ARRAY_NAMES(Float32Array, Float32Array)
- ASMJS_ARRAY_NAMES(Float64Array, Float64Array)
- ASMJS_ARRAY_NAMES(byteLength, byteLength)
- // Int32x4
- ASMJS_SIMD_MARKERS(Int32x4_Start) // just a marker
- // built-in ID propertyId Type............EntryPoint
- ASMJS_SIMD_C_NAMES(Int32x4, Int32x4, Int32x4, Int32x4 )
- ASMJS_SIMD_O_NAMES(int32x4_check, check, Int32x4, Check )
- ASMJS_SIMD_O_NAMES(int32x4_splat, splat, Int32x4, Splat )
- ASMJS_SIMD_O_NAMES(int32x4_fromFloat64x2, fromFloat64x2, Int32x4, FromFloat64x2 )
- ASMJS_SIMD_O_NAMES(int32x4_fromFloat64x2Bits, fromFloat64x2Bits, Int32x4, FromFloat64x2Bits )
- ASMJS_SIMD_O_NAMES(int32x4_fromFloat32x4, fromFloat32x4, Int32x4, FromFloat32x4 )
- ASMJS_SIMD_O_NAMES(int32x4_fromFloat32x4Bits, fromFloat32x4Bits, Int32x4, FromFloat32x4Bits )
- ASMJS_SIMD_O_NAMES(int32x4_fromInt16x8Bits, fromInt16x8Bits, Int32x4, FromInt16x8Bits )
- ASMJS_SIMD_O_NAMES(int32x4_fromInt8x16Bits, fromInt8x16Bits, Int32x4, FromInt8x16Bits )
- ASMJS_SIMD_O_NAMES(int32x4_fromUint32x4Bits, fromUint32x4Bits, Int32x4, FromUint32x4Bits )
- ASMJS_SIMD_O_NAMES(int32x4_fromUint16x8Bits, fromUint16x8Bits, Int32x4, FromUint16x8Bits )
- ASMJS_SIMD_O_NAMES(int32x4_fromUint8x16Bits, fromUint8x16Bits, Int32x4, FromUint8x16Bits )
- ASMJS_SIMD_O_NAMES(int32x4_neg, neg, Int32x4, Neg )
- ASMJS_SIMD_O_NAMES(int32x4_add, add, Int32x4, Add )
- ASMJS_SIMD_O_NAMES(int32x4_sub, sub, Int32x4, Sub )
- ASMJS_SIMD_O_NAMES(int32x4_mul, mul, Int32x4, Mul )
- ASMJS_SIMD_O_NAMES(int32x4_extractLane, extractLane, Int32x4, ExtractLane )
- ASMJS_SIMD_O_NAMES(int32x4_replaceLane, replaceLane, Int32x4, ReplaceLane )
- ASMJS_SIMD_O_NAMES(int32x4_swizzle, swizzle, Int32x4, Swizzle )
- ASMJS_SIMD_O_NAMES(int32x4_shuffle, shuffle, Int32x4, Shuffle )
- ASMJS_SIMD_O_NAMES(int32x4_lessThan, lessThan, Int32x4, LessThan )
- ASMJS_SIMD_O_NAMES(int32x4_lessThanOrEqual, lessThanOrEqual, Int32x4, LessThanOrEqual )
- ASMJS_SIMD_O_NAMES(int32x4_equal, equal, Int32x4, Equal )
- ASMJS_SIMD_O_NAMES(int32x4_notEqual, notEqual, Int32x4, NotEqual )
- ASMJS_SIMD_O_NAMES(int32x4_greaterThan, greaterThan, Int32x4, GreaterThan )
- ASMJS_SIMD_O_NAMES(int32x4_greaterThanOrEqual, greaterThanOrEqual, Int32x4, GreaterThanOrEqual)
- ASMJS_SIMD_O_NAMES(int32x4_select, select, Int32x4, Select )
- ASMJS_SIMD_O_NAMES(int32x4_and, and_, Int32x4, And )
- ASMJS_SIMD_O_NAMES(int32x4_or, or_, Int32x4, Or )
- ASMJS_SIMD_O_NAMES(int32x4_xor, xor_, Int32x4, Xor )
- ASMJS_SIMD_O_NAMES(int32x4_not, not_, Int32x4, Not )
- ASMJS_SIMD_O_NAMES(int32x4_shiftLeftByScalar, shiftLeftByScalar, Int32x4, ShiftLeftByScalar )
- ASMJS_SIMD_O_NAMES(int32x4_shiftRightByScalar, shiftRightByScalar, Int32x4, ShiftRightByScalar)
- // keep load/store contiguous
- ASMJS_SIMD_O_NAMES(int32x4_load, load, Int32x4, Load )
- ASMJS_SIMD_O_NAMES(int32x4_load1, load1, Int32x4, Load1 )
- ASMJS_SIMD_O_NAMES(int32x4_load2, load2, Int32x4, Load2 )
- ASMJS_SIMD_O_NAMES(int32x4_load3, load3, Int32x4, Load3 )
- ASMJS_SIMD_O_NAMES(int32x4_store, store, Int32x4, Store )
- ASMJS_SIMD_O_NAMES(int32x4_store1, store1, Int32x4, Store1)
- ASMJS_SIMD_O_NAMES(int32x4_store2, store2, Int32x4, Store2)
- ASMJS_SIMD_O_NAMES(int32x4_store3, store3, Int32x4, Store3)
- ASMJS_SIMD_MARKERS(Int32x4_End) // just a marker
- ASMJS_SIMD_MARKERS(Bool32x4_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Bool32x4, Bool32x4, Bool32x4, Bool32x4)
- ASMJS_SIMD_O_NAMES(bool32x4_check, check, Bool32x4, Check )
- ASMJS_SIMD_O_NAMES(bool32x4_splat, splat, Bool32x4, Splat )
- ASMJS_SIMD_O_NAMES(bool32x4_extractLane, extractLane, Bool32x4, ExtractLane)
- ASMJS_SIMD_O_NAMES(bool32x4_replaceLane, replaceLane, Bool32x4, ReplaceLane)
- ASMJS_SIMD_O_NAMES(bool32x4_and, and_, Bool32x4, And )
- ASMJS_SIMD_O_NAMES(bool32x4_or, or_, Bool32x4, Or )
- ASMJS_SIMD_O_NAMES(bool32x4_xor, xor_, Bool32x4, Xor )
- ASMJS_SIMD_O_NAMES(bool32x4_not, not_, Bool32x4, Not )
- ASMJS_SIMD_O_NAMES(bool32x4_anyTrue, anyTrue, Bool32x4, AnyTrue )
- ASMJS_SIMD_O_NAMES(bool32x4_allTrue, allTrue, Bool32x4, AllTrue )
- ASMJS_SIMD_MARKERS(Bool32x4_End) // just a marker
- ASMJS_SIMD_MARKERS(Bool16x8_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Bool16x8, Bool16x8, Bool16x8, Bool16x8)
- ASMJS_SIMD_O_NAMES(bool16x8_check, check, Bool16x8, Check )
- ASMJS_SIMD_O_NAMES(bool16x8_splat, splat, Bool16x8, Splat )
- ASMJS_SIMD_O_NAMES(bool16x8_extractLane, extractLane, Bool16x8, ExtractLane)
- ASMJS_SIMD_O_NAMES(bool16x8_replaceLane, replaceLane, Bool16x8, ReplaceLane)
- ASMJS_SIMD_O_NAMES(bool16x8_and, and_, Bool16x8, And )
- ASMJS_SIMD_O_NAMES(bool16x8_or, or_, Bool16x8, Or )
- ASMJS_SIMD_O_NAMES(bool16x8_xor, xor_, Bool16x8, Xor )
- ASMJS_SIMD_O_NAMES(bool16x8_not, not_, Bool16x8, Not )
- ASMJS_SIMD_O_NAMES(bool16x8_anyTrue, anyTrue, Bool16x8, AnyTrue )
- ASMJS_SIMD_O_NAMES(bool16x8_allTrue, allTrue, Bool16x8, AllTrue )
- ASMJS_SIMD_MARKERS(Bool16x8_End) // just a marker
- ASMJS_SIMD_MARKERS(Bool8x16_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Bool8x16, Bool8x16, Bool8x16, Bool8x16)
- ASMJS_SIMD_O_NAMES(bool8x16_check, check, Bool8x16, Check )
- ASMJS_SIMD_O_NAMES(bool8x16_splat, splat, Bool8x16, Splat )
- ASMJS_SIMD_O_NAMES(bool8x16_extractLane, extractLane, Bool8x16, ExtractLane)
- ASMJS_SIMD_O_NAMES(bool8x16_replaceLane, replaceLane, Bool8x16, ReplaceLane)
- ASMJS_SIMD_O_NAMES(bool8x16_and, and_, Bool8x16, And )
- ASMJS_SIMD_O_NAMES(bool8x16_or, or_, Bool8x16, Or )
- ASMJS_SIMD_O_NAMES(bool8x16_xor, xor_, Bool8x16, Xor )
- ASMJS_SIMD_O_NAMES(bool8x16_not, not_, Bool8x16, Not )
- ASMJS_SIMD_O_NAMES(bool8x16_anyTrue, anyTrue, Bool8x16, AnyTrue )
- ASMJS_SIMD_O_NAMES(bool8x16_allTrue, allTrue, Bool8x16, AllTrue )
- ASMJS_SIMD_MARKERS(Bool8x16_End) // just a marker
- // Float32x4
- ASMJS_SIMD_MARKERS(Float32x4_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Float32x4, Float32x4, Float32x4, Float32x4 )
- ASMJS_SIMD_O_NAMES(float32x4_check, check, Float32x4, Check )
- ASMJS_SIMD_O_NAMES(float32x4_splat, splat, Float32x4, Splat )
- ASMJS_SIMD_O_NAMES(float32x4_fromFloat64x2, fromFloat64x2, Float32x4, FromFloat64x2 )
- ASMJS_SIMD_O_NAMES(float32x4_fromFloat64x2Bits, fromFloat64x2Bits, Float32x4, FromFloat64x2Bits )
- ASMJS_SIMD_O_NAMES(float32x4_fromInt32x4, fromInt32x4, Float32x4, FromInt32x4 )
- ASMJS_SIMD_O_NAMES(float32x4_fromInt32x4Bits, fromInt32x4Bits, Float32x4, FromInt32x4Bits )
- ASMJS_SIMD_O_NAMES(float32x4_fromUint32x4, fromUint32x4, Float32x4, FromUint32x4 )
- ASMJS_SIMD_O_NAMES(float32x4_fromInt16x8Bits, fromInt16x8Bits, Float32x4, FromInt16x8Bits )
- ASMJS_SIMD_O_NAMES(float32x4_fromInt8x16Bits, fromInt8x16Bits, Float32x4, FromInt8x16Bits )
- ASMJS_SIMD_O_NAMES(float32x4_fromUint32x4Bits, fromUint32x4Bits, Float32x4, FromUint32x4Bits )
- ASMJS_SIMD_O_NAMES(float32x4_fromUint16x8Bits, fromUint16x8Bits, Float32x4, FromUint16x8Bits )
- ASMJS_SIMD_O_NAMES(float32x4_fromUint8x16Bits, fromUint8x16Bits, Float32x4, FromUint8x16Bits )
- ASMJS_SIMD_O_NAMES(float32x4_abs, abs, Float32x4, Abs )
- ASMJS_SIMD_O_NAMES(float32x4_neg, neg, Float32x4, Neg )
- ASMJS_SIMD_O_NAMES(float32x4_add, add, Float32x4, Add )
- ASMJS_SIMD_O_NAMES(float32x4_sub, sub, Float32x4, Sub )
- ASMJS_SIMD_O_NAMES(float32x4_mul, mul, Float32x4, Mul )
- ASMJS_SIMD_O_NAMES(float32x4_div, div, Float32x4, Div )
- ASMJS_SIMD_O_NAMES(float32x4_min, min, Float32x4, Min )
- ASMJS_SIMD_O_NAMES(float32x4_max, max, Float32x4, Max )
- ASMJS_SIMD_O_NAMES(float32x4_reciprocal, reciprocalApproximation, Float32x4, Reciprocal )
- ASMJS_SIMD_O_NAMES(float32x4_reciprocalSqrt, reciprocalSqrtApproximation, Float32x4, ReciprocalSqrt )
- ASMJS_SIMD_O_NAMES(float32x4_sqrt, sqrt, Float32x4, Sqrt )
- ASMJS_SIMD_O_NAMES(float32x4_swizzle, swizzle, Float32x4, Swizzle )
- ASMJS_SIMD_O_NAMES(float32x4_shuffle, shuffle, Float32x4, Shuffle )
- ASMJS_SIMD_O_NAMES(float32x4_extractLane, extractLane, Float32x4, ExtractLane )
- ASMJS_SIMD_O_NAMES(float32x4_replaceLane, replaceLane, Float32x4, ReplaceLane )
- ASMJS_SIMD_O_NAMES(float32x4_lessThan, lessThan, Float32x4, LessThan )
- ASMJS_SIMD_O_NAMES(float32x4_lessThanOrEqual, lessThanOrEqual, Float32x4, LessThanOrEqual )
- ASMJS_SIMD_O_NAMES(float32x4_equal, equal, Float32x4, Equal )
- ASMJS_SIMD_O_NAMES(float32x4_notEqual, notEqual, Float32x4, NotEqual )
- ASMJS_SIMD_O_NAMES(float32x4_greaterThan, greaterThan, Float32x4, GreaterThan )
- ASMJS_SIMD_O_NAMES(float32x4_greaterThanOrEqual, greaterThanOrEqual, Float32x4, GreaterThanOrEqual )
- ASMJS_SIMD_O_NAMES(float32x4_select, select, Float32x4, Select )
- // keep load/store contiguous
- ASMJS_SIMD_O_NAMES(float32x4_load, load, Float32x4, Load )
- ASMJS_SIMD_O_NAMES(float32x4_load1, load1, Float32x4, Load1 )
- ASMJS_SIMD_O_NAMES(float32x4_load2, load2, Float32x4, Load2 )
- ASMJS_SIMD_O_NAMES(float32x4_load3, load3, Float32x4, Load3 )
- ASMJS_SIMD_O_NAMES(float32x4_store, store, Float32x4, Store )
- ASMJS_SIMD_O_NAMES(float32x4_store1, store1, Float32x4, Store1 )
- ASMJS_SIMD_O_NAMES(float32x4_store2, store2, Float32x4, Store2 )
- ASMJS_SIMD_O_NAMES(float32x4_store3, store3, Float32x4, Store3 )
- ASMJS_SIMD_MARKERS(Float32x4_End) // just a marker
- // Float64x2
- // Disabled for now
- ASMJS_SIMD_MARKERS(Float64x2_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Float64x2, Float64x2, Float64x2, Float64x2 )
- ASMJS_SIMD_O_NAMES(float64x2_check, check, Float64x2, Check )
- ASMJS_SIMD_O_NAMES(float64x2_splat, splat, Float64x2, Splat )
- ASMJS_SIMD_O_NAMES(float64x2_fromFloat32x4, fromFloat32x4, Float64x2, FromFloat32x4 )
- ASMJS_SIMD_O_NAMES(float64x2_fromFloat32x4Bits, fromFloat32x4Bits, Float64x2, FromFloat32x4Bits )
- ASMJS_SIMD_O_NAMES(float64x2_fromInt32x4, fromInt32x4, Float64x2, FromInt32x4 )
- ASMJS_SIMD_O_NAMES(float64x2_fromInt32x4Bits, fromInt32x4Bits, Float64x2, FromInt32x4Bits )
- ASMJS_SIMD_O_NAMES(float64x2_abs, abs, Float64x2, Abs )
- ASMJS_SIMD_O_NAMES(float64x2_neg, neg, Float64x2, Neg )
- ASMJS_SIMD_O_NAMES(float64x2_add, add, Float64x2, Add )
- ASMJS_SIMD_O_NAMES(float64x2_sub, sub, Float64x2, Sub )
- ASMJS_SIMD_O_NAMES(float64x2_mul, mul, Float64x2, Mul )
- ASMJS_SIMD_O_NAMES(float64x2_div, div, Float64x2, Div )
- ASMJS_SIMD_O_NAMES(float64x2_min, min, Float64x2, Min )
- ASMJS_SIMD_O_NAMES(float64x2_max, max, Float64x2, Max )
- ASMJS_SIMD_O_NAMES(float64x2_reciprocal, reciprocalApproximation, Float64x2, Reciprocal )
- ASMJS_SIMD_O_NAMES(float64x2_reciprocalSqrt, reciprocalSqrtApproximation, Float64x2, ReciprocalSqrt )
- ASMJS_SIMD_O_NAMES(float64x2_sqrt, sqrt, Float64x2, Sqrt )
- ASMJS_SIMD_O_NAMES(float64x2_swizzle, swizzle, Float64x2, Swizzle )
- ASMJS_SIMD_O_NAMES(float64x2_shuffle, shuffle, Float64x2, Shuffle )
- ASMJS_SIMD_O_NAMES(float64x2_lessThan, lessThan, Float64x2, LessThan )
- ASMJS_SIMD_O_NAMES(float64x2_lessThanOrEqual, lessThanOrEqual, Float64x2, LessThanOrEqual )
- ASMJS_SIMD_O_NAMES(float64x2_equal, equal, Float64x2, Equal )
- ASMJS_SIMD_O_NAMES(float64x2_notEqual, notEqual, Float64x2, NotEqual )
- ASMJS_SIMD_O_NAMES(float64x2_greaterThan, greaterThan, Float64x2, GreaterThan )
- ASMJS_SIMD_O_NAMES(float64x2_greaterThanOrEqual, greaterThanOrEqual, Float64x2, GreaterThanOrEqual )
- ASMJS_SIMD_O_NAMES(float64x2_select, select, Float64x2, Select )
- // keep load/store contiguous
- ASMJS_SIMD_O_NAMES(float64x2_load, load, Float64x2, Load )
- ASMJS_SIMD_O_NAMES(float64x2_load1, load1, Float64x2, Load1 )
- ASMJS_SIMD_O_NAMES(float64x2_store, store, Float64x2, Store )
- ASMJS_SIMD_O_NAMES(float64x2_store1, store1, Float64x2, Store1 )
- ASMJS_SIMD_MARKERS(Float64x2_End) // just a marker
- ASMJS_SIMD_MARKERS(Int16x8_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Int16x8 ,Int16x8 , Int16x8 ,Int16x8 )
- ASMJS_SIMD_O_NAMES(int16x8_check ,check , Int16x8 ,Check )
- ASMJS_SIMD_O_NAMES(int16x8_extractLane ,extractLane , Int16x8 ,ExtractLane )
- ASMJS_SIMD_O_NAMES(int16x8_swizzle ,swizzle , Int16x8 ,Swizzle )
- ASMJS_SIMD_O_NAMES(int16x8_shuffle ,shuffle , Int16x8 ,Shuffle )
- ASMJS_SIMD_O_NAMES(int16x8_splat ,splat , Int16x8 ,Splat )
- ASMJS_SIMD_O_NAMES(int16x8_replaceLane ,replaceLane , Int16x8 ,ReplaceLane )
- ASMJS_SIMD_O_NAMES(int16x8_and ,and_ , Int16x8 ,And )
- ASMJS_SIMD_O_NAMES(int16x8_or ,or_ , Int16x8 ,Or )
- ASMJS_SIMD_O_NAMES(int16x8_xor ,xor_ , Int16x8 ,Xor )
- ASMJS_SIMD_O_NAMES(int16x8_not ,not_ , Int16x8 ,Not )
- ASMJS_SIMD_O_NAMES(int16x8_add ,add , Int16x8 ,Add )
- ASMJS_SIMD_O_NAMES(int16x8_sub ,sub , Int16x8 ,Sub )
- ASMJS_SIMD_O_NAMES(int16x8_mul ,mul , Int16x8 ,Mul )
- ASMJS_SIMD_O_NAMES(int16x8_neg ,neg , Int16x8 ,Neg )
- ASMJS_SIMD_O_NAMES(int16x8_shiftLeftByScalar ,shiftLeftByScalar , Int16x8 ,ShiftLeftByScalar )
- ASMJS_SIMD_O_NAMES(int16x8_shiftRightByScalar,shiftRightByScalar , Int16x8 ,ShiftRightByScalar)
- ASMJS_SIMD_O_NAMES(int16x8_lessThan ,lessThan , Int16x8 ,LessThan )
- ASMJS_SIMD_O_NAMES(int16x8_lessThanOrEqual ,lessThanOrEqual , Int16x8 ,LessThanOrEqual )
- ASMJS_SIMD_O_NAMES(int16x8_equal ,equal , Int16x8 ,Equal )
- ASMJS_SIMD_O_NAMES(int16x8_notEqual ,notEqual , Int16x8 ,NotEqual )
- ASMJS_SIMD_O_NAMES(int16x8_greaterThan ,greaterThan , Int16x8 ,GreaterThan )
- ASMJS_SIMD_O_NAMES(int16x8_greaterThanOrEqual,greaterThanOrEqual , Int16x8 ,GreaterThanOrEqual)
- ASMJS_SIMD_O_NAMES(int16x8_select ,select , Int16x8 ,Select )
- ASMJS_SIMD_O_NAMES(int16x8_addSaturate ,addSaturate , Int16x8 ,AddSaturate )
- ASMJS_SIMD_O_NAMES(int16x8_subSaturate ,subSaturate , Int16x8 ,SubSaturate )
- ASMJS_SIMD_O_NAMES(int16x8_load ,load , Int16x8 ,Load )
- ASMJS_SIMD_O_NAMES(int16x8_store ,store , Int16x8 ,Store )
- ASMJS_SIMD_O_NAMES(int16x8_fromFloat32x4Bits ,fromFloat32x4Bits , Int16x8 ,FromFloat32x4Bits )
- ASMJS_SIMD_O_NAMES(int16x8_fromInt32x4Bits ,fromInt32x4Bits , Int16x8 ,FromInt32x4Bits )
- ASMJS_SIMD_O_NAMES(int16x8_fromInt8x16Bits ,fromInt8x16Bits , Int16x8 ,FromInt8x16Bits )
- ASMJS_SIMD_O_NAMES(int16x8_fromUint32x4Bits ,fromUint32x4Bits , Int16x8 ,FromUint32x4Bits )
- ASMJS_SIMD_O_NAMES(int16x8_fromUint16x8Bits ,fromUint16x8Bits , Int16x8 ,FromUint16x8Bits )
- ASMJS_SIMD_O_NAMES(int16x8_fromUint8x16Bits ,fromUint8x16Bits , Int16x8 ,FromUint8x16Bits )
- // Int16x8 built-in IDs go here
- ASMJS_SIMD_MARKERS(Int16x8_End) // just a marker
- ASMJS_SIMD_MARKERS(Int8x16_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Int8x16 ,Int8x16 , Int8x16 ,Int8x16 )
- ASMJS_SIMD_O_NAMES(int8x16_check ,check , Int8x16 ,Check )
- ASMJS_SIMD_O_NAMES(int8x16_extractLane ,extractLane , Int8x16 ,ExtractLane )
- ASMJS_SIMD_O_NAMES(int8x16_swizzle ,swizzle , Int8x16 ,Swizzle )
- ASMJS_SIMD_O_NAMES(int8x16_shuffle ,shuffle , Int8x16 ,Shuffle )
- ASMJS_SIMD_O_NAMES(int8x16_splat ,splat , Int8x16 ,Splat )
- ASMJS_SIMD_O_NAMES(int8x16_replaceLane ,replaceLane , Int8x16 ,ReplaceLane )
- ASMJS_SIMD_O_NAMES(int8x16_and ,and_ , Int8x16 ,And )
- ASMJS_SIMD_O_NAMES(int8x16_or ,or_ , Int8x16 ,Or )
- ASMJS_SIMD_O_NAMES(int8x16_xor ,xor_ , Int8x16 ,Xor )
- ASMJS_SIMD_O_NAMES(int8x16_not ,not_ , Int8x16 ,Not )
- ASMJS_SIMD_O_NAMES(int8x16_add ,add , Int8x16 ,Add )
- ASMJS_SIMD_O_NAMES(int8x16_sub ,sub , Int8x16 ,Sub )
- ASMJS_SIMD_O_NAMES(int8x16_mul ,mul , Int8x16 ,Mul )
- ASMJS_SIMD_O_NAMES(int8x16_neg ,neg , Int8x16 ,Neg )
- ASMJS_SIMD_O_NAMES(int8x16_shiftLeftByScalar ,shiftLeftByScalar , Int8x16 ,ShiftLeftByScalar )
- ASMJS_SIMD_O_NAMES(int8x16_shiftRightByScalar,shiftRightByScalar , Int8x16 ,ShiftRightByScalar)
- ASMJS_SIMD_O_NAMES(int8x16_lessThan ,lessThan , Int8x16 ,LessThan )
- ASMJS_SIMD_O_NAMES(int8x16_lessThanOrEqual ,lessThanOrEqual , Int8x16 ,LessThanOrEqual )
- ASMJS_SIMD_O_NAMES(int8x16_equal ,equal , Int8x16 ,Equal )
- ASMJS_SIMD_O_NAMES(int8x16_notEqual ,notEqual , Int8x16 ,NotEqual )
- ASMJS_SIMD_O_NAMES(int8x16_greaterThan ,greaterThan , Int8x16 ,GreaterThan )
- ASMJS_SIMD_O_NAMES(int8x16_greaterThanOrEqual,greaterThanOrEqual , Int8x16 ,GreaterThanOrEqual)
- ASMJS_SIMD_O_NAMES(int8x16_select ,select , Int8x16 ,Select )
- ASMJS_SIMD_O_NAMES(int8x16_addSaturate ,addSaturate , Int8x16 ,AddSaturate )
- ASMJS_SIMD_O_NAMES(int8x16_subSaturate ,subSaturate , Int8x16 ,SubSaturate )
- ASMJS_SIMD_O_NAMES(int8x16_load ,load , Int8x16 ,Load )
- ASMJS_SIMD_O_NAMES(int8x16_store ,store , Int8x16 ,Store )
- ASMJS_SIMD_O_NAMES(int8x16_fromFloat32x4Bits ,fromFloat32x4Bits , Int8x16 ,FromFloat32x4Bits )
- ASMJS_SIMD_O_NAMES(int8x16_fromInt32x4Bits ,fromInt32x4Bits , Int8x16 ,FromInt32x4Bits )
- ASMJS_SIMD_O_NAMES(int8x16_fromInt16x8Bits ,fromInt16x8Bits , Int8x16 ,FromInt16x8Bits )
- ASMJS_SIMD_O_NAMES(int8x16_fromUint32x4Bits ,fromUint32x4Bits , Int8x16 ,FromUint32x4Bits )
- ASMJS_SIMD_O_NAMES(int8x16_fromUint16x8Bits ,fromUint16x8Bits , Int8x16 ,FromUint16x8Bits )
- ASMJS_SIMD_O_NAMES(int8x16_fromUint8x16Bits ,fromUint8x16Bits , Int8x16 ,FromUint8x16Bits )
- ASMJS_SIMD_MARKERS(Int8x16_End) // just a marker
- ASMJS_SIMD_MARKERS(Uint32x4_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Uint32x4 , Uint32x4 , Uint32x4 ,Uint32x4 )
- ASMJS_SIMD_O_NAMES(uint32x4_check , check , Uint32x4 ,Check )
- ASMJS_SIMD_O_NAMES(uint32x4_extractLane , extractLane , Uint32x4 ,ExtractLane )
- ASMJS_SIMD_O_NAMES(uint32x4_swizzle , swizzle , Uint32x4 ,Swizzle )
- ASMJS_SIMD_O_NAMES(uint32x4_shuffle , shuffle , Uint32x4 ,Shuffle )
- ASMJS_SIMD_O_NAMES(uint32x4_splat , splat , Uint32x4 ,Splat )
- ASMJS_SIMD_O_NAMES(uint32x4_replaceLane , replaceLane , Uint32x4 ,ReplaceLane )
- ASMJS_SIMD_O_NAMES(uint32x4_and , and_ , Uint32x4 ,And )
- ASMJS_SIMD_O_NAMES(uint32x4_or , or_ , Uint32x4 ,Or )
- ASMJS_SIMD_O_NAMES(uint32x4_xor , xor_ , Uint32x4 ,Xor )
- ASMJS_SIMD_O_NAMES(uint32x4_not , not_ , Uint32x4 ,Not )
- ASMJS_SIMD_O_NAMES(uint32x4_neg , neg , Uint32x4 ,Neg )
- ASMJS_SIMD_O_NAMES(uint32x4_add , add , Uint32x4 ,Add )
- ASMJS_SIMD_O_NAMES(uint32x4_sub , sub , Uint32x4 ,Sub )
- ASMJS_SIMD_O_NAMES(uint32x4_mul , mul , Uint32x4 ,Mul )
- ASMJS_SIMD_O_NAMES(uint32x4_shiftLeftByScalar , shiftLeftByScalar , Uint32x4 ,ShiftLeftByScalar )
- ASMJS_SIMD_O_NAMES(uint32x4_shiftRightByScalar, shiftRightByScalar , Uint32x4 ,ShiftRightByScalar)
- ASMJS_SIMD_O_NAMES(uint32x4_lessThan , lessThan , Uint32x4 ,LessThan )
- ASMJS_SIMD_O_NAMES(uint32x4_lessThanOrEqual , lessThanOrEqual , Uint32x4 ,LessThanOrEqual )
- ASMJS_SIMD_O_NAMES(uint32x4_equal , equal , Uint32x4 ,Equal )
- ASMJS_SIMD_O_NAMES(uint32x4_notEqual , notEqual , Uint32x4 ,NotEqual )
- ASMJS_SIMD_O_NAMES(uint32x4_greaterThan , greaterThan , Uint32x4 ,GreaterThan )
- ASMJS_SIMD_O_NAMES(uint32x4_greaterThanOrEqual, greaterThanOrEqual , Uint32x4 ,GreaterThanOrEqual)
- ASMJS_SIMD_O_NAMES(uint32x4_select , select , Uint32x4 ,Select )
- ASMJS_SIMD_O_NAMES(uint32x4_load , load , Uint32x4 ,Load )
- ASMJS_SIMD_O_NAMES(uint32x4_load1 , load1 , Uint32x4 ,Load1 )
- ASMJS_SIMD_O_NAMES(uint32x4_load2 , load2 , Uint32x4 ,Load2 )
- ASMJS_SIMD_O_NAMES(uint32x4_load3 , load3 , Uint32x4 ,Load3 )
- ASMJS_SIMD_O_NAMES(uint32x4_store , store , Uint32x4 ,Store )
- ASMJS_SIMD_O_NAMES(uint32x4_store1 , store1 , Uint32x4 ,Store1 )
- ASMJS_SIMD_O_NAMES(uint32x4_store2 , store2 , Uint32x4 ,Store2 )
- ASMJS_SIMD_O_NAMES(uint32x4_store3 , store3 , Uint32x4 ,Store3 )
- ASMJS_SIMD_O_NAMES(uint32x4_fromFloat32x4 , fromFloat32x4 , Uint32x4 ,FromFloat32x4 )
- ASMJS_SIMD_O_NAMES(uint32x4_fromFloat32x4Bits , fromFloat32x4Bits , Uint32x4 ,FromFloat32x4Bits )
- ASMJS_SIMD_O_NAMES(uint32x4_fromInt32x4Bits , fromInt32x4Bits , Uint32x4 ,FromInt32x4Bits )
- ASMJS_SIMD_O_NAMES(uint32x4_fromInt16x8Bits , fromInt16x8Bits , Uint32x4 ,FromInt16x8Bits )
- ASMJS_SIMD_O_NAMES(uint32x4_fromInt8x16Bits , fromInt8x16Bits , Uint32x4 ,FromInt8x16Bits )
- ASMJS_SIMD_O_NAMES(uint32x4_fromUint16x8Bits , fromUint16x8Bits , Uint32x4 ,FromUint16x8Bits )
- ASMJS_SIMD_O_NAMES(uint32x4_fromUint8x16Bits , fromUint8x16Bits , Uint32x4 ,FromUint8x16Bits )
- // Uint32x4 built-in IDs go here
- ASMJS_SIMD_MARKERS(Uint32x4_End) // just a marker
- ASMJS_SIMD_MARKERS(Uint16x8_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Uint16x8 , Uint16x8 , Uint16x8 ,Uint16x8 )
- ASMJS_SIMD_O_NAMES(uint16x8_check , check , Uint16x8 ,Check )
- ASMJS_SIMD_O_NAMES(uint16x8_extractLane , extractLane , Uint16x8 ,ExtractLane )
- ASMJS_SIMD_O_NAMES(uint16x8_swizzle , swizzle , Uint16x8 ,Swizzle )
- ASMJS_SIMD_O_NAMES(uint16x8_shuffle , shuffle , Uint16x8 ,Shuffle )
- ASMJS_SIMD_O_NAMES(uint16x8_splat , splat , Uint16x8 ,Splat )
- ASMJS_SIMD_O_NAMES(uint16x8_replaceLane , replaceLane , Uint16x8 ,ReplaceLane )
- ASMJS_SIMD_O_NAMES(uint16x8_and , and_ , Uint16x8 ,And )
- ASMJS_SIMD_O_NAMES(uint16x8_or , or_ , Uint16x8 ,Or )
- ASMJS_SIMD_O_NAMES(uint16x8_xor , xor_ , Uint16x8 ,Xor )
- ASMJS_SIMD_O_NAMES(uint16x8_not , not_ , Uint16x8 ,Not )
- ASMJS_SIMD_O_NAMES(uint16x8_neg , neg , Uint16x8 ,Neg )
- ASMJS_SIMD_O_NAMES(uint16x8_add , add , Uint16x8 ,Add )
- ASMJS_SIMD_O_NAMES(uint16x8_sub , sub , Uint16x8 ,Sub )
- ASMJS_SIMD_O_NAMES(uint16x8_mul , mul , Uint16x8 ,Mul )
- ASMJS_SIMD_O_NAMES(uint16x8_shiftLeftByScalar , shiftLeftByScalar , Uint16x8 ,ShiftLeftByScalar )
- ASMJS_SIMD_O_NAMES(uint16x8_shiftRightByScalar , shiftRightByScalar , Uint16x8 ,ShiftRightByScalar)
- ASMJS_SIMD_O_NAMES(uint16x8_lessThan , lessThan , Uint16x8 ,LessThan )
- ASMJS_SIMD_O_NAMES(uint16x8_lessThanOrEqual , lessThanOrEqual , Uint16x8 ,LessThanOrEqual )
- ASMJS_SIMD_O_NAMES(uint16x8_equal , equal , Uint16x8 ,Equal )
- ASMJS_SIMD_O_NAMES(uint16x8_notEqual , notEqual , Uint16x8 ,NotEqual )
- ASMJS_SIMD_O_NAMES(uint16x8_greaterThan , greaterThan , Uint16x8 ,GreaterThan )
- ASMJS_SIMD_O_NAMES(uint16x8_greaterThanOrEqual , greaterThanOrEqual , Uint16x8 ,GreaterThanOrEqual)
- ASMJS_SIMD_O_NAMES(uint16x8_select , select , Uint16x8 ,Select )
- ASMJS_SIMD_O_NAMES(uint16x8_addSaturate , addSaturate , Uint16x8 ,AddSaturate )
- ASMJS_SIMD_O_NAMES(uint16x8_subSaturate , subSaturate , Uint16x8 ,SubSaturate )
- ASMJS_SIMD_O_NAMES(uint16x8_load , load , Uint16x8 ,Load )
- ASMJS_SIMD_O_NAMES(uint16x8_store , store , Uint16x8 ,Store )
- ASMJS_SIMD_O_NAMES(uint16x8_fromFloat32x4Bits , fromFloat32x4Bits , Uint16x8 ,FromFloat32x4Bits )
- ASMJS_SIMD_O_NAMES(uint16x8_fromInt32x4Bits , fromInt32x4Bits , Uint16x8 ,FromInt32x4Bits )
- ASMJS_SIMD_O_NAMES(uint16x8_fromInt16x8Bits , fromInt16x8Bits , Uint16x8 ,FromInt16x8Bits )
- ASMJS_SIMD_O_NAMES(uint16x8_fromInt8x16Bits , fromInt8x16Bits , Uint16x8 ,FromInt8x16Bits )
- ASMJS_SIMD_O_NAMES(uint16x8_fromUint32x4Bits , fromUint32x4Bits , Uint16x8 ,FromUint32x4Bits )
- ASMJS_SIMD_O_NAMES(uint16x8_fromUint8x16Bits , fromUint8x16Bits , Uint16x8 ,FromUint8x16Bits )
- // Uint16x8 built-in IDs go here
- ASMJS_SIMD_MARKERS(Uint16x8_End) // just a marker
- ASMJS_SIMD_MARKERS(Uint8x16_Start) // just a marker
- ASMJS_SIMD_C_NAMES(Uint8x16 , Uint8x16 , Uint8x16 , Uint8x16 )
- ASMJS_SIMD_O_NAMES(uint8x16_check , check , Uint8x16 , Check )
- ASMJS_SIMD_O_NAMES(uint8x16_extractLane , extractLane , Uint8x16 , ExtractLane )
- ASMJS_SIMD_O_NAMES(uint8x16_swizzle , swizzle , Uint8x16 , Swizzle )
- ASMJS_SIMD_O_NAMES(uint8x16_shuffle , shuffle , Uint8x16 , Shuffle )
- ASMJS_SIMD_O_NAMES(uint8x16_splat , splat , Uint8x16 , Splat )
- ASMJS_SIMD_O_NAMES(uint8x16_replaceLane , replaceLane , Uint8x16 , ReplaceLane )
- ASMJS_SIMD_O_NAMES(uint8x16_and , and_ , Uint8x16 , And )
- ASMJS_SIMD_O_NAMES(uint8x16_or , or_ , Uint8x16 , Or )
- ASMJS_SIMD_O_NAMES(uint8x16_xor , xor_ , Uint8x16 , Xor )
- ASMJS_SIMD_O_NAMES(uint8x16_not , not_ , Uint8x16 , Not )
- ASMJS_SIMD_O_NAMES(uint8x16_neg , neg , Uint8x16 , Neg )
- ASMJS_SIMD_O_NAMES(uint8x16_add , add , Uint8x16 , Add )
- ASMJS_SIMD_O_NAMES(uint8x16_sub , sub , Uint8x16 , Sub )
- ASMJS_SIMD_O_NAMES(uint8x16_mul , mul , Uint8x16 , Mul )
- ASMJS_SIMD_O_NAMES(uint8x16_shiftLeftByScalar , shiftLeftByScalar , Uint8x16 , ShiftLeftByScalar )
- ASMJS_SIMD_O_NAMES(uint8x16_shiftRightByScalar , shiftRightByScalar , Uint8x16 , ShiftRightByScalar)
- ASMJS_SIMD_O_NAMES(uint8x16_lessThan , lessThan , Uint8x16 , LessThan )
- ASMJS_SIMD_O_NAMES(uint8x16_lessThanOrEqual , lessThanOrEqual , Uint8x16 , LessThanOrEqual )
- ASMJS_SIMD_O_NAMES(uint8x16_equal , equal , Uint8x16 , Equal )
- ASMJS_SIMD_O_NAMES(uint8x16_notEqual , notEqual , Uint8x16 , NotEqual )
- ASMJS_SIMD_O_NAMES(uint8x16_greaterThan , greaterThan , Uint8x16 , GreaterThan )
- ASMJS_SIMD_O_NAMES(uint8x16_greaterThanOrEqual , greaterThanOrEqual , Uint8x16 , GreaterThanOrEqual)
- ASMJS_SIMD_O_NAMES(uint8x16_select , select , Uint8x16 , Select )
- ASMJS_SIMD_O_NAMES(uint8x16_addSaturate , addSaturate , Uint8x16 , AddSaturate )
- ASMJS_SIMD_O_NAMES(uint8x16_subSaturate , subSaturate , Uint8x16 , SubSaturate )
- ASMJS_SIMD_O_NAMES(uint8x16_load , load , Uint8x16 , Load )
- ASMJS_SIMD_O_NAMES(uint8x16_store , store , Uint8x16 , Store )
- ASMJS_SIMD_O_NAMES(uint8x16_fromFloat32x4Bits , fromFloat32x4Bits , Uint8x16 , FromFloat32x4Bits )
- ASMJS_SIMD_O_NAMES(uint8x16_fromInt32x4Bits , fromInt32x4Bits , Uint8x16 , FromInt32x4Bits )
- ASMJS_SIMD_O_NAMES(uint8x16_fromInt16x8Bits , fromInt16x8Bits , Uint8x16 , FromInt16x8Bits )
- ASMJS_SIMD_O_NAMES(uint8x16_fromInt8x16Bits , fromInt8x16Bits , Uint8x16 , FromInt8x16Bits )
- ASMJS_SIMD_O_NAMES(uint8x16_fromUint32x4Bits , fromUint32x4Bits , Uint8x16 , FromUint32x4Bits )
- ASMJS_SIMD_O_NAMES(uint8x16_fromUint16x8Bits , fromUint16x8Bits , Uint8x16 , FromUint16x8Bits )
- // Uint16x8 built-in IDs go here
- ASMJS_SIMD_MARKERS(Uint8x16_End) // just a marker
- // help the caller to undefine all the macros
- #undef ASMJS_MATH_FUNC_NAMES
- #undef ASMJS_MATH_CONST_NAMES
- #undef ASMJS_ARRAY_NAMES
- #undef ASMJS_SIMD_NAMES
- #undef ASMJS_SIMD_C_NAMES
- #undef ASMJS_SIMD_O_NAMES
- #undef ASMJS_SIMD_MARKERS
|