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

Side by Side Diff: src/compiler/mips64/instruction-selector-mips64.cc

Issue 2799863002: [Atomics] use TFJ builtins for atomic add, sub, and, or, and xor (Closed)
Patch Set: [Atomics] use TFJ builtins for atomic add, sub, and, or, and xor Created 3 years, 8 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/base/adapters.h" 5 #include "src/base/adapters.h"
6 #include "src/base/bits.h" 6 #include "src/base/bits.h"
7 #include "src/compiler/instruction-selector-impl.h" 7 #include "src/compiler/instruction-selector-impl.h"
8 #include "src/compiler/node-matchers.h" 8 #include "src/compiler/node-matchers.h"
9 #include "src/compiler/node-properties.h" 9 #include "src/compiler/node-properties.h"
10 10
(...skipping 2640 matching lines...) Expand 10 before | Expand all | Expand 10 after
2651 addr_reg, g.TempImmediate(0), g.UseRegisterOrImmediateZero(value)); 2651 addr_reg, g.TempImmediate(0), g.UseRegisterOrImmediateZero(value));
2652 } 2652 }
2653 } 2653 }
2654 2654
2655 void InstructionSelector::VisitAtomicExchange(Node* node) { UNIMPLEMENTED(); } 2655 void InstructionSelector::VisitAtomicExchange(Node* node) { UNIMPLEMENTED(); }
2656 2656
2657 void InstructionSelector::VisitAtomicCompareExchange(Node* node) { 2657 void InstructionSelector::VisitAtomicCompareExchange(Node* node) {
2658 UNIMPLEMENTED(); 2658 UNIMPLEMENTED();
2659 } 2659 }
2660 2660
2661 void InstructionSelector::VisitAtomicAdd(Node* node) { UNIMPLEMENTED(); }
2662
2663 void InstructionSelector::VisitAtomicSub(Node* node) { UNIMPLEMENTED(); }
2664
2665 void InstructionSelector::VisitAtomicAnd(Node* node) { UNIMPLEMENTED(); }
2666
2667 void InstructionSelector::VisitAtomicOr(Node* node) { UNIMPLEMENTED(); }
2668
2669 void InstructionSelector::VisitAtomicXor(Node* node) { UNIMPLEMENTED(); }
2670
2661 void InstructionSelector::VisitInt32AbsWithOverflow(Node* node) { 2671 void InstructionSelector::VisitInt32AbsWithOverflow(Node* node) {
2662 UNREACHABLE(); 2672 UNREACHABLE();
2663 } 2673 }
2664 2674
2665 void InstructionSelector::VisitInt64AbsWithOverflow(Node* node) { 2675 void InstructionSelector::VisitInt64AbsWithOverflow(Node* node) {
2666 UNREACHABLE(); 2676 UNREACHABLE();
2667 } 2677 }
2668 2678
2669 void InstructionSelector::VisitI32x4Splat(Node* node) { 2679 void InstructionSelector::VisitI32x4Splat(Node* node) {
2670 VisitRR(this, kMips64I32x4Splat, node); 2680 VisitRR(this, kMips64I32x4Splat, node);
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
2758 } else { 2768 } else {
2759 DCHECK(kArchVariant == kMips64r2); 2769 DCHECK(kArchVariant == kMips64r2);
2760 return MachineOperatorBuilder::AlignmentRequirements:: 2770 return MachineOperatorBuilder::AlignmentRequirements::
2761 NoUnalignedAccessSupport(); 2771 NoUnalignedAccessSupport();
2762 } 2772 }
2763 } 2773 }
2764 2774
2765 } // namespace compiler 2775 } // namespace compiler
2766 } // namespace internal 2776 } // namespace internal
2767 } // namespace v8 2777 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698