// Copyright 2014 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. #include "src/compiler/machine-type.h" #include "src/ostreams.h" namespace v8 { namespace internal { namespace compiler { #define PRINT(bit) \ if (type & bit) { \ if (before) os << "|"; \ os << #bit; \ before = true; \ } OStream& operator<<(OStream& os, const MachineType& type) { bool before = false; PRINT(kRepBit); PRINT(kRepWord8); PRINT(kRepWord16); PRINT(kRepWord32); PRINT(kRepWord64); PRINT(kRepFloat32); PRINT(kRepFloat64); PRINT(kRepTagged); PRINT(kTypeBool); PRINT(kTypeInt32); PRINT(kTypeUint32); PRINT(kTypeInt64); PRINT(kTypeUint64); PRINT(kTypeNumber); PRINT(kTypeAny); return os; } #undef PRINT } // namespace compiler } // namespace internal } // namespace v8