Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Side by Side Diff: src/wasm/wasm-opcodes.h

Issue 2711863002: Implement remaining Boolean SIMD operations on ARM. (Closed)
Patch Set: Fix macro assembler test. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/compiler/wasm-compiler.cc ('k') | src/wasm/wasm-opcodes.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #ifndef V8_WASM_OPCODES_H_ 5 #ifndef V8_WASM_OPCODES_H_
6 #define V8_WASM_OPCODES_H_ 6 #define V8_WASM_OPCODES_H_
7 7
8 #include "src/globals.h" 8 #include "src/globals.h"
9 #include "src/machine-type.h" 9 #include "src/machine-type.h"
10 #include "src/runtime/runtime.h" 10 #include "src/runtime/runtime.h"
(...skipping 363 matching lines...) Expand 10 before | Expand all | Expand 10 after
374 V(S128Xor, 0xe578, s_ss) \ 374 V(S128Xor, 0xe578, s_ss) \
375 V(S128Not, 0xe579, s_s) \ 375 V(S128Not, 0xe579, s_s) \
376 V(S32x4Select, 0xe52c, s_s1x4ss) \ 376 V(S32x4Select, 0xe52c, s_s1x4ss) \
377 V(S32x4Swizzle, 0xe52d, s_s) \ 377 V(S32x4Swizzle, 0xe52d, s_s) \
378 V(S32x4Shuffle, 0xe52e, s_ss) \ 378 V(S32x4Shuffle, 0xe52e, s_ss) \
379 V(S16x8Select, 0xe54b, s_s1x8ss) \ 379 V(S16x8Select, 0xe54b, s_s1x8ss) \
380 V(S16x8Swizzle, 0xe54c, s_s) \ 380 V(S16x8Swizzle, 0xe54c, s_s) \
381 V(S16x8Shuffle, 0xe54d, s_ss) \ 381 V(S16x8Shuffle, 0xe54d, s_ss) \
382 V(S8x16Select, 0xe56a, s_s1x16ss) \ 382 V(S8x16Select, 0xe56a, s_s1x16ss) \
383 V(S8x16Swizzle, 0xe56b, s_s) \ 383 V(S8x16Swizzle, 0xe56b, s_s) \
384 V(S8x16Shuffle, 0xe56c, s_ss) 384 V(S8x16Shuffle, 0xe56c, s_ss) \
385 V(S1x4And, 0xe580, s1x4_s1x4s1x4) \
386 V(S1x4Or, 0xe581, s1x4_s1x4s1x4) \
387 V(S1x4Xor, 0xe582, s1x4_s1x4s1x4) \
388 V(S1x4Not, 0xe583, s1x4_s1x4) \
389 V(S1x4AnyTrue, 0xe584, i_s1x4) \
390 V(S1x4AllTrue, 0xe585, i_s1x4) \
391 V(S1x8And, 0xe586, s1x8_s1x8s1x8) \
392 V(S1x8Or, 0xe587, s1x8_s1x8s1x8) \
393 V(S1x8Xor, 0xe588, s1x8_s1x8s1x8) \
394 V(S1x8Not, 0xe589, s1x8_s1x8) \
395 V(S1x8AnyTrue, 0xe58a, i_s1x8) \
396 V(S1x8AllTrue, 0xe58b, i_s1x8) \
397 V(S1x16And, 0xe58c, s1x16_s1x16s1x16) \
398 V(S1x16Or, 0xe58d, s1x16_s1x16s1x16) \
399 V(S1x16Xor, 0xe58e, s1x16_s1x16s1x16) \
400 V(S1x16Not, 0xe58f, s1x16_s1x16) \
401 V(S1x16AnyTrue, 0xe590, i_s1x16) \
402 V(S1x16AllTrue, 0xe591, i_s1x16)
385 403
386 #define FOREACH_SIMD_1_OPERAND_OPCODE(V) \ 404 #define FOREACH_SIMD_1_OPERAND_OPCODE(V) \
387 V(F32x4ExtractLane, 0xe501, _) \ 405 V(F32x4ExtractLane, 0xe501, _) \
388 V(F32x4ReplaceLane, 0xe502, _) \ 406 V(F32x4ReplaceLane, 0xe502, _) \
389 V(I32x4ExtractLane, 0xe51c, _) \ 407 V(I32x4ExtractLane, 0xe51c, _) \
390 V(I32x4ReplaceLane, 0xe51d, _) \ 408 V(I32x4ReplaceLane, 0xe51d, _) \
391 V(I32x4Shl, 0xe524, _) \ 409 V(I32x4Shl, 0xe524, _) \
392 V(I32x4ShrS, 0xe525, _) \ 410 V(I32x4ShrS, 0xe525, _) \
393 V(I32x4ShrU, 0xe532, _) \ 411 V(I32x4ShrU, 0xe532, _) \
394 V(I16x8ExtractLane, 0xe539, _) \ 412 V(I16x8ExtractLane, 0xe539, _) \
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
476 V(f_l, kWasmF32, kWasmI64) \ 494 V(f_l, kWasmF32, kWasmI64) \
477 V(d_dd, kWasmF64, kWasmF64, kWasmF64) \ 495 V(d_dd, kWasmF64, kWasmF64, kWasmF64) \
478 V(d_d, kWasmF64, kWasmF64) \ 496 V(d_d, kWasmF64, kWasmF64) \
479 V(d_f, kWasmF64, kWasmF32) \ 497 V(d_f, kWasmF64, kWasmF32) \
480 V(d_i, kWasmF64, kWasmI32) \ 498 V(d_i, kWasmF64, kWasmI32) \
481 V(d_l, kWasmF64, kWasmI64) \ 499 V(d_l, kWasmF64, kWasmI64) \
482 V(d_id, kWasmF64, kWasmI32, kWasmF64) \ 500 V(d_id, kWasmF64, kWasmI32, kWasmF64) \
483 V(f_if, kWasmF32, kWasmI32, kWasmF32) \ 501 V(f_if, kWasmF32, kWasmI32, kWasmF32) \
484 V(l_il, kWasmI64, kWasmI32, kWasmI64) 502 V(l_il, kWasmI64, kWasmI32, kWasmI64)
485 503
486 #define FOREACH_SIMD_SIGNATURE(V) \ 504 #define FOREACH_SIMD_SIGNATURE(V) \
487 V(s_s, kWasmS128, kWasmS128) \ 505 V(s_s, kWasmS128, kWasmS128) \
488 V(s_f, kWasmS128, kWasmF32) \ 506 V(s_f, kWasmS128, kWasmF32) \
489 V(s_ss, kWasmS128, kWasmS128, kWasmS128) \ 507 V(s_ss, kWasmS128, kWasmS128, kWasmS128) \
490 V(s1x4_ss, kWasmS1x4, kWasmS128, kWasmS128) \ 508 V(s1x4_ss, kWasmS1x4, kWasmS128, kWasmS128) \
491 V(s1x8_ss, kWasmS1x8, kWasmS128, kWasmS128) \ 509 V(s1x8_ss, kWasmS1x8, kWasmS128, kWasmS128) \
492 V(s1x16_ss, kWasmS1x16, kWasmS128, kWasmS128) \ 510 V(s1x16_ss, kWasmS1x16, kWasmS128, kWasmS128) \
493 V(s_i, kWasmS128, kWasmI32) \ 511 V(s_i, kWasmS128, kWasmI32) \
494 V(s_si, kWasmS128, kWasmS128, kWasmI32) \ 512 V(s_si, kWasmS128, kWasmS128, kWasmI32) \
495 V(i_s, kWasmI32, kWasmS128) \ 513 V(i_s, kWasmI32, kWasmS128) \
496 V(s_s1x4ss, kWasmS128, kWasmS1x4, kWasmS128, kWasmS128) \ 514 V(i_s1x4, kWasmI32, kWasmS1x4) \
497 V(s_s1x8ss, kWasmS128, kWasmS1x8, kWasmS128, kWasmS128) \ 515 V(i_s1x8, kWasmI32, kWasmS1x8) \
498 V(s_s1x16ss, kWasmS128, kWasmS1x16, kWasmS128, kWasmS128) 516 V(i_s1x16, kWasmI32, kWasmS1x16) \
517 V(s_s1x4ss, kWasmS128, kWasmS1x4, kWasmS128, kWasmS128) \
518 V(s_s1x8ss, kWasmS128, kWasmS1x8, kWasmS128, kWasmS128) \
519 V(s_s1x16ss, kWasmS128, kWasmS1x16, kWasmS128, kWasmS128) \
520 V(s1x4_s1x4, kWasmS1x4, kWasmS1x4) \
521 V(s1x4_s1x4s1x4, kWasmS1x4, kWasmS1x4, kWasmS1x4) \
522 V(s1x8_s1x8, kWasmS1x8, kWasmS1x8) \
523 V(s1x8_s1x8s1x8, kWasmS1x8, kWasmS1x8, kWasmS1x8) \
524 V(s1x16_s1x16, kWasmS1x16, kWasmS1x16) \
525 V(s1x16_s1x16s1x16, kWasmS1x16, kWasmS1x16, kWasmS1x16)
499 526
500 #define FOREACH_PREFIX(V) \ 527 #define FOREACH_PREFIX(V) \
501 V(Simd, 0xe5) \ 528 V(Simd, 0xe5) \
502 V(Atomic, 0xe6) 529 V(Atomic, 0xe6)
503 530
504 enum WasmOpcode { 531 enum WasmOpcode {
505 // Declare expression opcodes. 532 // Declare expression opcodes.
506 #define DECLARE_NAMED_ENUM(name, opcode, sig) kExpr##name = opcode, 533 #define DECLARE_NAMED_ENUM(name, opcode, sig) kExpr##name = opcode,
507 FOREACH_OPCODE(DECLARE_NAMED_ENUM) 534 FOREACH_OPCODE(DECLARE_NAMED_ENUM)
508 #undef DECLARE_NAMED_ENUM 535 #undef DECLARE_NAMED_ENUM
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
710 default: 737 default:
711 return "<unknown>"; 738 return "<unknown>";
712 } 739 }
713 } 740 }
714 }; 741 };
715 } // namespace wasm 742 } // namespace wasm
716 } // namespace internal 743 } // namespace internal
717 } // namespace v8 744 } // namespace v8
718 745
719 #endif // V8_WASM_OPCODES_H_ 746 #endif // V8_WASM_OPCODES_H_
OLDNEW
« no previous file with comments | « src/compiler/wasm-compiler.cc ('k') | src/wasm/wasm-opcodes.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698