v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
write-barrier-kind.h
Go to the documentation of this file.
1// Copyright 2019 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_COMPILER_WRITE_BARRIER_KIND_H_
6#define V8_COMPILER_WRITE_BARRIER_KIND_H_
7
8#include <ostream>
9
10#include "src/base/logging.h"
11
12namespace v8 {
13namespace internal {
14namespace compiler {
15
16// Write barrier kinds supported by compiler.
26
28 return static_cast<uint8_t>(kind);
29}
30
31inline std::ostream& operator<<(std::ostream& os, WriteBarrierKind kind) {
32 switch (kind) {
33 case kNoWriteBarrier:
34 return os << "NoWriteBarrier";
36 return os << "AssertNoWriteBarrier";
38 return os << "MapWriteBarrier";
40 return os << "PointerWriteBarrier";
42 return os << "IndirectPointerWriteBarrier";
44 return os << "EphemeronKeyWriteBarrier";
46 return os << "FullWriteBarrier";
47 }
49}
50
51} // namespace compiler
52} // namespace internal
53} // namespace v8
54
55#endif // V8_COMPILER_WRITE_BARRIER_KIND_H_
Builtins::Kind kind
Definition builtins.cc:40
size_t hash_value(const BranchParameters &p)
std::ostream & operator<<(std::ostream &os, AccessMode access_mode)