v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
machine-type.h File Reference
#include <iosfwd>
#include <limits>
#include "include/v8-fast-api-calls.h"
#include "src/base/bits.h"
#include "src/common/globals.h"
#include "src/flags/flags.h"
Include dependency graph for machine-type.h:

Go to the source code of this file.

Classes

class  v8::internal::MachineType
 

Namespaces

namespace  v8
 
namespace  v8::internal
 

Macros

#define ASSERT_CONSECUTIVE(rep1, rep2)
 

Enumerations

enum class  v8::internal::MachineRepresentation : uint8_t {
  v8::internal::kNone , v8::internal::kBit , v8::internal::kWord8 , v8::internal::kWord16 ,
  v8::internal::kWord32 , v8::internal::kWord64 , v8::internal::kMapWord , v8::internal::kTaggedSigned ,
  v8::internal::kTaggedPointer , v8::internal::kTagged , v8::internal::kCompressedPointer , v8::internal::kCompressed ,
  v8::internal::kProtectedPointer , v8::internal::kIndirectPointer , v8::internal::kSandboxedPointer , v8::internal::kFloat16RawBits ,
  v8::internal::kFloat16 , v8::internal::kFloat32 , v8::internal::kFloat64 , v8::internal::kSimd128 ,
  v8::internal::kSimd256 , v8::internal::kFirstFPRepresentation = kFloat16 , v8::internal::kLastRepresentation = kSimd256
}
 
enum class  v8::internal::MachineSemantic : uint8_t {
  v8::internal::kNone , v8::internal::kBool , v8::internal::kInt32 , v8::internal::kUint32 ,
  v8::internal::kInt64 , v8::internal::kUint64 , v8::internal::kSignedBigInt64 , v8::internal::kUnsignedBigInt64 ,
  v8::internal::kNumber , v8::internal::kHoleyFloat64 , v8::internal::kAny
}
 

Functions

bool v8::internal::IsSubtype (MachineRepresentation rep1, MachineRepresentation rep2)
 
const char * v8::internal::MachineReprToString (MachineRepresentation rep)
 
V8_EXPORT_PRIVATE constexpr int v8::internal::ElementSizeLog2Of (MachineRepresentation)
 
V8_EXPORT_PRIVATE constexpr int v8::internal::ElementSizeInBytes (MachineRepresentation)
 
V8_INLINE size_t v8::internal::hash_value (MachineRepresentation rep)
 
V8_INLINE size_t v8::internal::hash_value (MachineType type)
 
std::ostream & v8::internal::operator<< (std::ostream &os, MachineRepresentation rep)
 
std::ostream & v8::internal::operator<< (std::ostream &os, MachineSemantic type)
 
std::ostream & v8::internal::operator<< (std::ostream &os, MachineType type)
 
constexpr bool v8::internal::IsIntegral (MachineRepresentation rep)
 
constexpr bool v8::internal::IsFloatingPoint (MachineRepresentation rep)
 
constexpr bool v8::internal::IsSimd128 (MachineRepresentation rep)
 
constexpr bool v8::internal::CanBeTaggedPointer (MachineRepresentation rep)
 
constexpr bool v8::internal::CanBeTaggedSigned (MachineRepresentation rep)
 
constexpr bool v8::internal::IsAnyTagged (MachineRepresentation rep)
 
constexpr bool v8::internal::CanBeCompressedPointer (MachineRepresentation rep)
 
constexpr bool v8::internal::CanBeIndirectPointer (MachineRepresentation rep)
 
constexpr bool v8::internal::CanBeTaggedOrCompressedPointer (MachineRepresentation rep)
 
constexpr bool v8::internal::CanBeTaggedOrCompressedOrIndirectPointer (MachineRepresentation rep)
 
constexpr bool v8::internal::IsAnyCompressed (MachineRepresentation rep)
 
constexpr int v8::internal::ElementSizeInBits (MachineRepresentation rep)
 
constexpr uint64_t v8::internal::MaxUnsignedValue (MachineRepresentation rep)
 
V8_EXPORT_PRIVATE constexpr int v8::internal::ElementSizeInPointers (MachineRepresentation rep)
 
V8_EXPORT_PRIVATE constexpr int v8::internal::RepresentationBit (MachineRepresentation rep)
 

Variables

constexpr int v8::internal::kMaximumReprSizeLog2
 
constexpr int v8::internal::kMaximumReprSizeInBytes = 1 << kMaximumReprSizeLog2
 

Macro Definition Documentation

◆ ASSERT_CONSECUTIVE

#define ASSERT_CONSECUTIVE ( rep1,
rep2 )
Value:
static_assert(static_cast<uint8_t>(MachineRepresentation::k##rep1) + 1 == \
static_cast<uint8_t>(MachineRepresentation::k##rep2), \
#rep1 " and " #rep2 " must be consecutive.");

Definition at line 66 of file machine-type.h.