v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
maglev-interpreter-frame-state.h File Reference
Include dependency graph for maglev-interpreter-frame-state.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  v8::internal::maglev::NodeInfo
 
struct  v8::internal::maglev::NodeInfo::ClearUnstableMapsOnCopy
 
class  v8::internal::maglev::NodeInfo::AlternativeNodes
 
struct  v8::internal::maglev::KnownNodeAspects
 
class  v8::internal::maglev::KnownNodeAspects::LoadedPropertyMapKey
 
struct  v8::internal::maglev::KnownNodeAspects::AvailableExpression
 
class  v8::internal::maglev::InterpreterFrameState
 
class  v8::internal::maglev::CompactInterpreterFrameState
 
class  v8::internal::maglev::MergePointRegisterState
 
class  v8::internal::maglev::MergePointInterpreterFrameState
 
class  v8::internal::maglev::MergePointInterpreterFrameState::Alternatives
 
struct  v8::internal::maglev::MergePointInterpreterFrameState::LoopMetadata
 
struct  v8::internal::maglev::LoopEffects
 

Namespaces

namespace  v8
 
namespace  v8::internal
 
namespace  v8::internal::maglev
 

Macros

#define ALTERNATIVES(V)
 
#define KIND(name, Name)
 
#define API(name, Name)
 

Typedefs

using v8::internal::maglev::PossibleMaps = compiler::ZoneRefSet<Map>
 

Functions

template<typename Key , typename Value , typename MergeFunc = std::equal_to<Value>>
void v8::internal::maglev::DestructivelyIntersect (ZoneMap< Key, Value > &lhs_map, const ZoneMap< Key, Value > &rhs_map, MergeFunc &&func=MergeFunc())
 

Macro Definition Documentation

◆ ALTERNATIVES

#define ALTERNATIVES ( V)
Value:
V(tagged, Tagged) \
V(int32, Int32) \
V(truncated_int32_to_number, TruncatedInt32ToNumber) \
V(float64, Float64) \
V(checked_value, CheckedValue)
#define V(Name)

Definition at line 102 of file maglev-interpreter-frame-state.h.

◆ API

#define API ( name,
Name )
Value:
ValueNode* name() const { return store_[Kind::k##Name]; } \
ValueNode* set_##name(ValueNode* val) { \
return store_[Kind::k##Name] = val; \
} \
template <typename Function> \
ValueNode* get_or_set_##name(Function create) { \
if (store_[Kind::k##Name]) return store_[Kind::k##Name]; \
return store_[Kind::k##Name] = create(); \
}
const char * name
Definition builtins.cc:39
ZoneVector< InstructionOperand > * set_

Definition at line 116 of file maglev-interpreter-frame-state.h.

◆ KIND

#define KIND ( name,
Name )
Value:
k##Name,

Definition at line 110 of file maglev-interpreter-frame-state.h.