OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <stdint.h> | 5 #include <stdint.h> |
6 #include <stdlib.h> | 6 #include <stdlib.h> |
7 #include <string.h> | 7 #include <string.h> |
8 | 8 |
9 #include "src/wasm/wasm-macro-gen.h" | 9 #include "src/wasm/wasm-macro-gen.h" |
10 | 10 |
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
210 TestInt32Binop(kExprI32DivS, -66, -4777344, 72384); | 210 TestInt32Binop(kExprI32DivS, -66, -4777344, 72384); |
211 TestInt32Binop(kExprI32DivU, 805306368, 0xF0000000, 5); | 211 TestInt32Binop(kExprI32DivU, 805306368, 0xF0000000, 5); |
212 TestInt32Binop(kExprI32RemS, -3, -3003, 1000); | 212 TestInt32Binop(kExprI32RemS, -3, -3003, 1000); |
213 TestInt32Binop(kExprI32RemU, 4, 4004, 1000); | 213 TestInt32Binop(kExprI32RemU, 4, 4004, 1000); |
214 TestInt32Binop(kExprI32And, 0xEE, 0xFFEE, 0xFF0000FF); | 214 TestInt32Binop(kExprI32And, 0xEE, 0xFFEE, 0xFF0000FF); |
215 TestInt32Binop(kExprI32Ior, 0xF0FF00FF, 0xF0F000EE, 0x000F0011); | 215 TestInt32Binop(kExprI32Ior, 0xF0FF00FF, 0xF0F000EE, 0x000F0011); |
216 TestInt32Binop(kExprI32Xor, 0xABCDEF01, 0xABCDEFFF, 0xFE); | 216 TestInt32Binop(kExprI32Xor, 0xABCDEF01, 0xABCDEFFF, 0xFE); |
217 TestInt32Binop(kExprI32Shl, 0xA0000000, 0xA, 28); | 217 TestInt32Binop(kExprI32Shl, 0xA0000000, 0xA, 28); |
218 TestInt32Binop(kExprI32ShrU, 0x07000010, 0x70000100, 4); | 218 TestInt32Binop(kExprI32ShrU, 0x07000010, 0x70000100, 4); |
219 TestInt32Binop(kExprI32ShrS, 0xFF000000, 0x80000000, 7); | 219 TestInt32Binop(kExprI32ShrS, 0xFF000000, 0x80000000, 7); |
| 220 TestInt32Binop(kExprI32Ror, 0x01000000, 0x80000000, 7); |
| 221 TestInt32Binop(kExprI32Ror, 0x01000000, 0x80000000, 39); |
| 222 TestInt32Binop(kExprI32Rol, 0x00000040, 0x80000000, 7); |
| 223 TestInt32Binop(kExprI32Rol, 0x00000040, 0x80000000, 39); |
220 TestInt32Binop(kExprI32Eq, 1, -99, -99); | 224 TestInt32Binop(kExprI32Eq, 1, -99, -99); |
221 TestInt32Binop(kExprI32Ne, 0, -97, -97); | 225 TestInt32Binop(kExprI32Ne, 0, -97, -97); |
222 | 226 |
223 TestInt32Binop(kExprI32LtS, 1, -4, 4); | 227 TestInt32Binop(kExprI32LtS, 1, -4, 4); |
224 TestInt32Binop(kExprI32LeS, 0, -2, -3); | 228 TestInt32Binop(kExprI32LeS, 0, -2, -3); |
225 TestInt32Binop(kExprI32LtU, 1, 0, -6); | 229 TestInt32Binop(kExprI32LtU, 1, 0, -6); |
226 TestInt32Binop(kExprI32LeU, 1, 98978, 0xF0000000); | 230 TestInt32Binop(kExprI32LeU, 1, 98978, 0xF0000000); |
227 | 231 |
228 TestInt32Binop(kExprI32GtS, 1, 4, -4); | 232 TestInt32Binop(kExprI32GtS, 1, 4, -4); |
229 TestInt32Binop(kExprI32GeS, 0, -3, -2); | 233 TestInt32Binop(kExprI32GeS, 0, -3, -2); |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
375 TestInt64Binop(kExprI64DivS, -66, -4777344, 72384); | 379 TestInt64Binop(kExprI64DivS, -66, -4777344, 72384); |
376 TestInt64Binop(kExprI64DivU, 805306368, 0xF0000000, 5); | 380 TestInt64Binop(kExprI64DivU, 805306368, 0xF0000000, 5); |
377 TestInt64Binop(kExprI64RemS, -3, -3003, 1000); | 381 TestInt64Binop(kExprI64RemS, -3, -3003, 1000); |
378 TestInt64Binop(kExprI64RemU, 4, 4004, 1000); | 382 TestInt64Binop(kExprI64RemU, 4, 4004, 1000); |
379 TestInt64Binop(kExprI64And, 0xEE, 0xFFEE, 0xFF0000FF); | 383 TestInt64Binop(kExprI64And, 0xEE, 0xFFEE, 0xFF0000FF); |
380 TestInt64Binop(kExprI64Ior, 0xF0FF00FF, 0xF0F000EE, 0x000F0011); | 384 TestInt64Binop(kExprI64Ior, 0xF0FF00FF, 0xF0F000EE, 0x000F0011); |
381 TestInt64Binop(kExprI64Xor, 0xABCDEF01, 0xABCDEFFF, 0xFE); | 385 TestInt64Binop(kExprI64Xor, 0xABCDEF01, 0xABCDEFFF, 0xFE); |
382 TestInt64Binop(kExprI64Shl, 0xA0000000, 0xA, 28); | 386 TestInt64Binop(kExprI64Shl, 0xA0000000, 0xA, 28); |
383 TestInt64Binop(kExprI64ShrU, 0x0700001000123456LL, 0x7000010001234567LL, 4); | 387 TestInt64Binop(kExprI64ShrU, 0x0700001000123456LL, 0x7000010001234567LL, 4); |
384 TestInt64Binop(kExprI64ShrS, 0xFF00000000000000LL, 0x8000000000000000LL, 7); | 388 TestInt64Binop(kExprI64ShrS, 0xFF00000000000000LL, 0x8000000000000000LL, 7); |
| 389 TestInt64Binop(kExprI64Ror, 0x0100000000000000LL, 0x8000000000000000LL, 7); |
| 390 TestInt64Binop(kExprI64Ror, 0x0100000000000000LL, 0x8000000000000000LL, 71); |
| 391 TestInt64Binop(kExprI64Rol, 0x0000000000000040LL, 0x8000000000000000LL, 7); |
| 392 TestInt64Binop(kExprI64Rol, 0x0000000000000040LL, 0x8000000000000000LL, 71); |
385 TestInt64Cmp(kExprI64Eq, 1, -9999, -9999); | 393 TestInt64Cmp(kExprI64Eq, 1, -9999, -9999); |
386 TestInt64Cmp(kExprI64Ne, 1, -9199, -9999); | 394 TestInt64Cmp(kExprI64Ne, 1, -9199, -9999); |
387 TestInt64Cmp(kExprI64LtS, 1, -4, 4); | 395 TestInt64Cmp(kExprI64LtS, 1, -4, 4); |
388 TestInt64Cmp(kExprI64LeS, 0, -2, -3); | 396 TestInt64Cmp(kExprI64LeS, 0, -2, -3); |
389 TestInt64Cmp(kExprI64LtU, 1, 0, -6); | 397 TestInt64Cmp(kExprI64LtU, 1, 0, -6); |
390 TestInt64Cmp(kExprI64LeU, 1, 98978, 0xF0000000); | 398 TestInt64Cmp(kExprI64LeU, 1, 98978, 0xF0000000); |
391 } | 399 } |
392 | 400 |
393 | 401 |
394 TEST(Run_WasmInt64Clz) { | 402 TEST(Run_WasmInt64Clz) { |
(...skipping 2987 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3382 | 3390 |
3383 #if WASM_64 | 3391 #if WASM_64 |
3384 TEST(Compile_Wasm_CallIndirect_Many_i64) { CompileCallIndirectMany(kAstI64); } | 3392 TEST(Compile_Wasm_CallIndirect_Many_i64) { CompileCallIndirectMany(kAstI64); } |
3385 #endif | 3393 #endif |
3386 | 3394 |
3387 | 3395 |
3388 TEST(Compile_Wasm_CallIndirect_Many_f32) { CompileCallIndirectMany(kAstF32); } | 3396 TEST(Compile_Wasm_CallIndirect_Many_f32) { CompileCallIndirectMany(kAstF32); } |
3389 | 3397 |
3390 | 3398 |
3391 TEST(Compile_Wasm_CallIndirect_Many_f64) { CompileCallIndirectMany(kAstF64); } | 3399 TEST(Compile_Wasm_CallIndirect_Many_f64) { CompileCallIndirectMany(kAstF64); } |
OLD | NEW |