v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
register-base.h File Reference
#include "src/base/bits.h"
#include "src/base/bounds.h"
#include "src/common/globals.h"
Include dependency graph for register-base.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  v8::internal::RegisterBase< SubType, kAfterLastRegister >
 

Namespaces

namespace  v8
 
namespace  v8::internal
 

Macros

#define DEFINE_REGISTER_NAMES_NAME(name)
 
#define DEFINE_REGISTER_NAMES(RegType, LIST)
 

Functions

template<typename RegType , typename = decltype(RegisterName(std::declval<RegType>()))>
std::ostream & v8::internal::operator<< (std::ostream &os, RegType reg)
 

Macro Definition Documentation

◆ DEFINE_REGISTER_NAMES

#define DEFINE_REGISTER_NAMES ( RegType,
LIST )
Value:
inline const char* RegisterName(RegType reg) { \
static constexpr const char* Names[] = {LIST(DEFINE_REGISTER_NAMES_NAME)}; \
static_assert(arraysize(Names) == RegType::kNumRegisters); \
return reg.is_valid() ? Names[reg.code()] : "invalid"; \
}
#define LIST(s)
LiftoffRegister reg
#define DEFINE_REGISTER_NAMES_NAME(name)
#define arraysize(array)
Definition macros.h:67

Definition at line 82 of file register-base.h.

◆ DEFINE_REGISTER_NAMES_NAME

#define DEFINE_REGISTER_NAMES_NAME ( name)
Value:
#name,

Definition at line 81 of file register-base.h.