@@ -21,94 +21,93 @@ if (typeof globalScope.ASC_TARGET === "undefined") {
21
21
Object . defineProperties (
22
22
globalScope [ "i8" ] = function i8 ( value ) { return value << 24 >> 24 ; } ,
23
23
{
24
- "MIN_VALUE" : { value : - 128 , writable : false } ,
25
- "MAX_VALUE" : { value : 127 , writable : false }
24
+ "MIN_VALUE" : { value : - 128 } ,
25
+ "MAX_VALUE" : { value : 127 }
26
26
}
27
27
) ;
28
28
29
29
Object . defineProperties (
30
30
globalScope [ "i16" ] = function i16 ( value ) { return value << 16 >> 16 ; } ,
31
31
{
32
- "MIN_VALUE" : { value : - 32768 , writable : false } ,
33
- "MAX_VALUE" : { value : 32767 , writable : false }
32
+ "MIN_VALUE" : { value : - 32768 } ,
33
+ "MAX_VALUE" : { value : 32767 }
34
34
}
35
35
) ;
36
36
37
37
Object . defineProperties (
38
38
globalScope [ "i32" ] = globalScope [ "isize" ] = function i32 ( value ) { return value | 0 ; } ,
39
39
{
40
- "MIN_VALUE" : { value : - 2147483648 , writable : false } ,
41
- "MAX_VALUE" : { value : 2147483647 , writable : false }
40
+ "MIN_VALUE" : { value : - 2147483648 } ,
41
+ "MAX_VALUE" : { value : 2147483647 }
42
42
}
43
43
) ;
44
44
45
45
Object . defineProperties (
46
46
globalScope [ "u8" ] = function u8 ( value ) { return value & 0xff ; } ,
47
47
{
48
- "MIN_VALUE" : { value : 0 , writable : false } ,
49
- "MAX_VALUE" : { value : 255 , writable : false }
48
+ "MIN_VALUE" : { value : 0 } ,
49
+ "MAX_VALUE" : { value : 255 }
50
50
}
51
51
) ;
52
52
53
53
Object . defineProperties (
54
54
globalScope [ "u16" ] = function u16 ( value ) { return value & 0xffff ; } ,
55
55
{
56
- "MIN_VALUE" : { value : 0 , writable : false } ,
57
- "MAX_VALUE" : { value : 65535 , writable : false }
56
+ "MIN_VALUE" : { value : 0 } ,
57
+ "MAX_VALUE" : { value : 65535 }
58
58
}
59
59
) ;
60
60
61
61
Object . defineProperties (
62
62
globalScope [ "u32" ] = globalScope [ "usize" ] = function u32 ( value ) { return value >>> 0 ; } ,
63
63
{
64
- "MIN_VALUE" : { value : 0 , writable : false } ,
65
- "MAX_VALUE" : { value : 4294967295 , writable : false }
64
+ "MIN_VALUE" : { value : 0 } ,
65
+ "MAX_VALUE" : { value : 4294967295 }
66
66
}
67
67
) ;
68
68
69
69
Object . defineProperties (
70
70
globalScope [ "bool" ] = function bool ( value ) { return ! ! value ; } ,
71
71
{
72
- "MIN_VALUE" : { value : false , writable : false } ,
73
- "MAX_VALUE" : { value : true , writable : false }
72
+ "MIN_VALUE" : { value : false } ,
73
+ "MAX_VALUE" : { value : true }
74
74
}
75
75
) ;
76
76
77
77
Object . defineProperties (
78
78
globalScope [ "f32" ] = function f32 ( value ) { return Math . fround ( value ) ; } ,
79
79
{
80
- "EPSILON" : { value : 1.1920928955078125e-07 , writable : false } ,
81
- "MIN_VALUE" : { value : 1.401298464324817e-45 , writable : false } ,
82
- "MAX_VALUE" : { value : 3.4028234663852886e+38 , writable : false } ,
83
- "MIN_NORMAL_VALUE" : { value : 1.1754943508222875e-38 , writable : false } ,
84
- "MIN_SAFE_INTEGER" : { value : - 16777215 , writable : false } ,
85
- "MAX_SAFE_INTEGER" : { value : 16777215 , writable : false } ,
86
- "POSITIVE_INFINITY" : { value : Infinity , writable : false } ,
87
- "NEGATIVE_INFINITY" : { value : - Infinity , writable : false } ,
88
- "NaN" : { value : NaN , writable : false }
80
+ "EPSILON" : { value : 1.1920928955078125e-07 } ,
81
+ "MIN_VALUE" : { value : 1.401298464324817e-45 } ,
82
+ "MAX_VALUE" : { value : 3.4028234663852886e+38 } ,
83
+ "MIN_NORMAL_VALUE" : { value : 1.1754943508222875e-38 } ,
84
+ "MIN_SAFE_INTEGER" : { value : - 16777215 } ,
85
+ "MAX_SAFE_INTEGER" : { value : 16777215 } ,
86
+ "POSITIVE_INFINITY" : { value : Infinity } ,
87
+ "NEGATIVE_INFINITY" : { value : - Infinity } ,
88
+ "NaN" : { value : NaN }
89
89
}
90
90
) ;
91
91
92
92
Object . defineProperties (
93
93
globalScope [ "f64" ] = function f64 ( value ) { return + value ; } ,
94
94
{
95
- "EPSILON" : { value : 2.2204460492503131e-016 , writable : false } ,
96
- "MIN_VALUE" : { value : 5e-324 , writable : false } ,
97
- "MAX_VALUE" : { value : 1.7976931348623157e+308 , writable : false } ,
98
- "MIN_NORMAL_VALUE" : { value : 2.2250738585072014e-308 , writable : false } ,
99
- "MIN_SAFE_INTEGER" : { value : - 9007199254740991 , writable : false } ,
100
- "MAX_SAFE_INTEGER" : { value : 9007199254740991 , writable : false } ,
101
- "POSITIVE_INFINITY" : { value : Infinity , writable : false } ,
102
- "NEGATIVE_INFINITY" : { value : - Infinity , writable : false } ,
103
- "NaN" : { value : NaN , writable : false }
95
+ "EPSILON" : { value : 2.2204460492503131e-016 } ,
96
+ "MIN_VALUE" : { value : 5e-324 } ,
97
+ "MAX_VALUE" : { value : 1.7976931348623157e+308 } ,
98
+ "MIN_NORMAL_VALUE" : { value : 2.2250738585072014e-308 } ,
99
+ "MIN_SAFE_INTEGER" : { value : - 9007199254740991 } ,
100
+ "MAX_SAFE_INTEGER" : { value : 9007199254740991 } ,
101
+ "POSITIVE_INFINITY" : { value : Infinity } ,
102
+ "NEGATIVE_INFINITY" : { value : - Infinity } ,
103
+ "NaN" : { value : NaN }
104
104
}
105
105
) ;
106
106
107
107
globalScope [ "clz" ] = Math . clz32 ;
108
108
109
109
globalScope [ "ctz" ] = function ctz ( value ) {
110
- var c = Math . clz32 ( value & - value ) ;
111
- return value ? 31 - c : c ;
110
+ return 32 - Math . clz32 ( ~ value & ( value - 1 ) ) ;
112
111
} ;
113
112
114
113
globalScope [ "popcnt" ] = function popcnt ( value ) {
@@ -306,6 +305,15 @@ if (typeof globalScope.ASC_TARGET === "undefined") {
306
305
configurable : true
307
306
} ) ;
308
307
}
308
+
309
+ if ( Ctr != Array ) {
310
+ Object . defineProperty ( Ctr , "wrap" , {
311
+ value : function wrap ( buffer , byteOffset , length ) {
312
+ return new Ctr ( buffer , byteOffset , length ) ;
313
+ } ,
314
+ configurable : true
315
+ } ) ;
316
+ }
309
317
} ) ;
310
318
311
319
globalScope [ "isInteger" ] = Number . isInteger ;
@@ -388,60 +396,6 @@ if (typeof globalScope.ASC_TARGET === "undefined") {
388
396
if ( n ) message += Array . prototype . slice . call ( arguments , 2 , 2 + n ) ;
389
397
console . error ( "trace: " + message ) ;
390
398
} ;
391
-
392
- Object . defineProperty ( Int8Array , "wrap" , {
393
- value : function wrap ( buffer , byteOffset , length ) {
394
- return new Int8Array ( buffer , byteOffset , length ) ;
395
- }
396
- } ) ;
397
-
398
- Object . defineProperty ( Uint8Array , "wrap" , {
399
- value : function wrap ( buffer , byteOffset , length ) {
400
- return new Uint8Array ( buffer , byteOffset , length ) ;
401
- }
402
- } ) ;
403
-
404
- Object . defineProperty ( Uint8ClampedArray , "wrap" , {
405
- value : function wrap ( buffer , byteOffset , length ) {
406
- return new Uint8ClampedArray ( buffer , byteOffset , length ) ;
407
- }
408
- } ) ;
409
-
410
- Object . defineProperty ( Int16Array , "wrap" , {
411
- value : function wrap ( buffer , byteOffset , length ) {
412
- return new Int16Array ( buffer , byteOffset , length ) ;
413
- }
414
- } ) ;
415
-
416
- Object . defineProperty ( Uint16Array , "wrap" , {
417
- value : function wrap ( buffer , byteOffset , length ) {
418
- return new Uint16Array ( buffer , byteOffset , length ) ;
419
- }
420
- } ) ;
421
-
422
- Object . defineProperty ( Int32Array , "wrap" , {
423
- value : function wrap ( buffer , byteOffset , length ) {
424
- return new Int32Array ( buffer , byteOffset , length ) ;
425
- }
426
- } ) ;
427
-
428
- Object . defineProperty ( Uint32Array , "wrap" , {
429
- value : function wrap ( buffer , byteOffset , length ) {
430
- return new Uint32Array ( buffer , byteOffset , length ) ;
431
- }
432
- } ) ;
433
-
434
- Object . defineProperty ( Float32Array , "wrap" , {
435
- value : function wrap ( buffer , byteOffset , length ) {
436
- return new Float32Array ( buffer , byteOffset , length ) ;
437
- }
438
- } ) ;
439
-
440
- Object . defineProperty ( Float64Array , "wrap" , {
441
- value : function wrap ( buffer , byteOffset , length ) {
442
- return new Float64Array ( buffer , byteOffset , length ) ;
443
- }
444
- } ) ;
445
399
} else {
446
400
console . warn ( "compiler mismatch: std/portable included twice" ) ;
447
401
}
0 commit comments