OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2017 the V8 project authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef V8_ASMJS_ASM_NAMES_H_ | |
6 #define V8_ASMJS_ASM_NAMES_H_ | |
7 | |
8 #define STDLIB_MATH_VALUE_LIST(V) \ | |
9 V(E) \ | |
10 V(LN10) \ | |
11 V(LN2) \ | |
12 V(LOG2E) \ | |
13 V(LOG10E) \ | |
14 V(PI) \ | |
15 V(SQRT1_2) \ | |
16 V(SQRT2) | |
17 | |
18 #define STDLIB_MATH_FUNCTION_MONOMORPHIC_LIST(V) \ | |
Karl
2017/03/14 18:00:47
Consider adding a comment describing what each par
bradn
2017/03/15 07:53:04
Done.
| |
19 V(acos, Acos, kExprF64Acos, dq2d) \ | |
20 V(asin, Asin, kExprF64Asin, dq2d) \ | |
21 V(atan, Atan, kExprF64Atan, dq2d) \ | |
22 V(cos, Cos, kExprF64Cos, dq2d) \ | |
23 V(sin, Sin, kExprF64Sin, dq2d) \ | |
24 V(tan, Tan, kExprF64Tan, dq2d) \ | |
25 V(exp, Exp, kExprF64Exp, dq2d) \ | |
26 V(log, Log, kExprF64Log, dq2d) \ | |
27 V(atan2, Atan2, kExprF64Atan2, dqdq2d) \ | |
28 V(pow, Pow, kExprF64Pow, dqdq2d) \ | |
29 V(imul, Imul, kExprI32Mul, ii2s) \ | |
30 V(clz32, Clz32, kExprI32Clz, i2s) | |
31 | |
32 #define STDLIB_MATH_FUNCTION_CEIL_LIKE_LIST(V) \ | |
33 V(ceil, Ceil, x, ceil_like) \ | |
34 V(floor, Floor, x, ceil_like) \ | |
35 V(sqrt, Sqrt, x, ceil_like) | |
36 | |
37 #define STDLIB_MATH_FUNCTION_LIST(V) \ | |
38 V(min, Min, x, minmax) \ | |
39 V(max, Max, x, minmax) \ | |
40 V(abs, Abs, x, abs) \ | |
41 V(fround, Fround, x, fround) \ | |
42 STDLIB_MATH_FUNCTION_MONOMORPHIC_LIST(V) \ | |
43 STDLIB_MATH_FUNCTION_CEIL_LIKE_LIST(V) | |
44 | |
45 #define STDLIB_ARRAY_TYPE_LIST(V) \ | |
46 V(Int8Array, Mem8S, Mem8, I32) \ | |
47 V(Uint8Array, Mem8U, Mem8, I32) \ | |
48 V(Int16Array, Mem16S, Mem16, I32) \ | |
49 V(Uint16Array, Mem16U, Mem16, I32) \ | |
50 V(Int32Array, Mem, Mem, I32) \ | |
51 V(Uint32Array, Mem, Mem, I32) \ | |
52 V(Float32Array, Mem, Mem, F32) \ | |
53 V(Float64Array, Mem, Mem, F64) | |
54 | |
55 #define STDLIB_OTHER_LIST(V) \ | |
56 V(Infinity) \ | |
57 V(NaN) \ | |
58 V(Math) | |
59 | |
60 #define KEYWORD_NAME_LIST(V) \ | |
61 V(arguments) \ | |
62 V(break) \ | |
63 V(case) \ | |
64 V(const) \ | |
65 V(continue) \ | |
66 V(default) \ | |
67 V(do) \ | |
68 V(else) \ | |
69 V(eval) \ | |
70 V(for) \ | |
71 V(function) \ | |
72 V(if) \ | |
73 V(new) \ | |
74 V(return ) \ | |
marja
2017/03/14 11:11:48
Nit: extra space?
bradn
2017/03/15 07:53:04
Done.
| |
75 V(switch) \ | |
76 V(var) \ | |
77 V(while) | |
78 | |
79 #define LONG_SYMBOL_NAME_LIST(V) \ | |
80 V("<=", LE) \ | |
81 V(">=", GE) \ | |
82 V("==", EQ) \ | |
83 V("!=", NE) \ | |
84 V("<<", SHL) \ | |
85 V(">>", SAR) \ | |
86 V(">>>", SHR) \ | |
87 V("'use asm'", UseAsm) | |
88 | |
89 #endif | |
OLD | NEW |