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/compiler/machine-operator.cc

Issue 2045943002: [compiler] [wasm] Introduce Word32/64ReverseBytes as TF Optional Opcode (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: update on store and some optimization on load Created 4 years, 6 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
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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 "src/compiler/machine-operator.h" 5 #include "src/compiler/machine-operator.h"
6 6
7 #include "src/base/lazy-instance.h" 7 #include "src/base/lazy-instance.h"
8 #include "src/compiler/opcodes.h" 8 #include "src/compiler/opcodes.h"
9 #include "src/compiler/operator.h" 9 #include "src/compiler/operator.h"
10 10
(...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after
352 V(Simd128And, Operator::kAssociative | Operator::kCommutative, 2, 0, 1) \ 352 V(Simd128And, Operator::kAssociative | Operator::kCommutative, 2, 0, 1) \
353 V(Simd128Or, Operator::kAssociative | Operator::kCommutative, 2, 0, 1) \ 353 V(Simd128Or, Operator::kAssociative | Operator::kCommutative, 2, 0, 1) \
354 V(Simd128Xor, Operator::kAssociative | Operator::kCommutative, 2, 0, 1) \ 354 V(Simd128Xor, Operator::kAssociative | Operator::kCommutative, 2, 0, 1) \
355 V(Simd128Not, Operator::kNoProperties, 1, 0, 1) 355 V(Simd128Not, Operator::kNoProperties, 1, 0, 1)
356 356
357 #define PURE_OPTIONAL_OP_LIST(V) \ 357 #define PURE_OPTIONAL_OP_LIST(V) \
358 V(Word32Ctz, Operator::kNoProperties, 1, 0, 1) \ 358 V(Word32Ctz, Operator::kNoProperties, 1, 0, 1) \
359 V(Word64Ctz, Operator::kNoProperties, 1, 0, 1) \ 359 V(Word64Ctz, Operator::kNoProperties, 1, 0, 1) \
360 V(Word32ReverseBits, Operator::kNoProperties, 1, 0, 1) \ 360 V(Word32ReverseBits, Operator::kNoProperties, 1, 0, 1) \
361 V(Word64ReverseBits, Operator::kNoProperties, 1, 0, 1) \ 361 V(Word64ReverseBits, Operator::kNoProperties, 1, 0, 1) \
362 V(Word16ReverseBytes, Operator::kNoProperties, 1, 0, 1) \
363 V(Word32ReverseBytes, Operator::kNoProperties, 1, 0, 1) \
364 V(Word64ReverseBytes, Operator::kNoProperties, 1, 0, 1) \
362 V(Word32Popcnt, Operator::kNoProperties, 1, 0, 1) \ 365 V(Word32Popcnt, Operator::kNoProperties, 1, 0, 1) \
363 V(Word64Popcnt, Operator::kNoProperties, 1, 0, 1) \ 366 V(Word64Popcnt, Operator::kNoProperties, 1, 0, 1) \
364 V(Float32Max, Operator::kNoProperties, 2, 0, 1) \ 367 V(Float32Max, Operator::kNoProperties, 2, 0, 1) \
365 V(Float32Min, Operator::kNoProperties, 2, 0, 1) \ 368 V(Float32Min, Operator::kNoProperties, 2, 0, 1) \
366 V(Float64Max, Operator::kNoProperties, 2, 0, 1) \ 369 V(Float64Max, Operator::kNoProperties, 2, 0, 1) \
367 V(Float64Min, Operator::kNoProperties, 2, 0, 1) \ 370 V(Float64Min, Operator::kNoProperties, 2, 0, 1) \
368 V(Float32RoundDown, Operator::kNoProperties, 1, 0, 1) \ 371 V(Float32RoundDown, Operator::kNoProperties, 1, 0, 1) \
369 V(Float64RoundDown, Operator::kNoProperties, 1, 0, 1) \ 372 V(Float64RoundDown, Operator::kNoProperties, 1, 0, 1) \
370 V(Float32RoundUp, Operator::kNoProperties, 1, 0, 1) \ 373 V(Float32RoundUp, Operator::kNoProperties, 1, 0, 1) \
371 V(Float64RoundUp, Operator::kNoProperties, 1, 0, 1) \ 374 V(Float64RoundUp, Operator::kNoProperties, 1, 0, 1) \
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after
681 } 684 }
682 ATOMIC_REPRESENTATION_LIST(STORE) 685 ATOMIC_REPRESENTATION_LIST(STORE)
683 #undef STORE 686 #undef STORE
684 UNREACHABLE(); 687 UNREACHABLE();
685 return nullptr; 688 return nullptr;
686 } 689 }
687 690
688 } // namespace compiler 691 } // namespace compiler
689 } // namespace internal 692 } // namespace internal
690 } // namespace v8 693 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698