// Copyright 2021 the V8 project authors. All rights reserved.// Use of this source code is governed by a BSD-style license that can be// found in the LICENSE file.#ifndef V8_CODEGEN_ATOMIC_MEMORY_ORDER_H_#define V8_CODEGEN_ATOMIC_MEMORY_ORDER_H_#include <ostream>#include "src/base/logging.h"namespacev8{namespaceinternal{// Atomic memory orders supported by the compiler.enumclassAtomicMemoryOrder:uint8_t{kAcqRel,kSeqCst};inlinesize_thash_value(AtomicMemoryOrderorder){returnstatic_cast<uint8_t>(order);}inlinestd::ostream&operator<<(std::ostream&os,AtomicMemoryOrderorder){switch(order){caseAtomicMemoryOrder::kAcqRel:returnos<<"kAcqRel";caseAtomicMemoryOrder::kSeqCst:returnos<<"kSeqCst";}UNREACHABLE();}}// namespace internal}// namespace v8#endif // V8_CODEGEN_ATOMIC_MEMORY_ORDER_H_