5#ifndef V8_CODEGEN_TNODE_H_ 
    6#define V8_CODEGEN_TNODE_H_ 
  109#ifdef V8_ENABLE_SANDBOX 
  119#ifdef V8_COMPRESS_POINTERS 
  145#ifdef V8_COMPRESS_POINTERS 
  151#ifdef V8_ENABLE_SANDBOX 
  163template <
class T1, 
class T2>
 
  178  return (type1 == type2) ? type1
 
 
  184template <
class Type, 
class Enable = 
void>
 
  189template <
class Type, 
class Enable>
 
  217template <
class HeapObjectSubtype>
 
  220    std::enable_if_t<std::is_base_of_v<HeapObject, HeapObjectSubtype> ||
 
  221                     std::is_base_of_v<HeapObjectLayout, HeapObjectSubtype>>> {
 
 
  225template <
class HeapObjectSubtype>
 
  228    std::enable_if_t<std::is_base_of_v<HeapObject, HeapObjectSubtype> ||
 
  229                     std::is_base_of_v<HeapObjectLayout, HeapObjectSubtype>>>
:: 
  242template <
class T, 
class... Ts>
 
  248                "no common representation");
 
 
  258template <
class Type, 
class Enable = 
void>
 
  267      T::kMachineType.representation();
 
 
  293                            std::is_base_of<UntaggedT, T>::value ||
 
  294                            std::is_same<ExternalReference, T>::value;
 
 
  298template <
class T1, 
class T2>
 
  300  static const bool value =
 
 
  310  static_assert(
is_tagged, 
"union types are only possible for tagged values");
 
 
  321  static const bool value = 
true;
 
 
  325  static const bool value = 
true;
 
 
  328template <
class T, 
class U>
 
  364template <
class... Ts, 
class U>
 
  366  static const bool value =
 
  367      std::disjunction_v<types_have_common_values<Ts, U>...>;
 
 
  369template <
class T, 
class... Us>
 
  371  static const bool value =
 
  372      std::disjunction_v<types_have_common_values<T, Us>...>;
 
 
  374template <
class... Ts, 
class... Us>
 
  376  static const bool value =
 
 
  411  explicit operator bool()
 const { 
return node_ != 
nullptr; }
 
  416  template <
typename U>
 
 
  430  static_assert(!std::is_same_v<T, T>,
 
  431                "Don't write TNode<Tagged<T>>, just write TNode<T> directly.");
 
 
constexpr bool IsTagged() const
static constexpr MachineType Float64()
static constexpr MachineType Pointer()
static constexpr MachineType Uint8()
static constexpr MachineType Int32()
static constexpr MachineType Simd128()
static constexpr MachineType AnyTagged()
static constexpr MachineType Uint64()
static constexpr MachineType Uint32()
static constexpr MachineType SandboxedPointer()
static constexpr MachineType TaggedSigned()
static constexpr MachineType Uint16()
static constexpr MachineType Int16()
static constexpr MachineType Float32()
static constexpr MachineType Int64()
static constexpr MachineType None()
static constexpr MachineType TaggedPointer()
static constexpr MachineType UintPtr()
static constexpr MachineType Int8()
static constexpr MachineRepresentation PointerRepresentation()
static constexpr MachineType IntPtr()
SloppyTNode(const TNode< U > &other) V8_NOEXCEPT
SloppyTNode(compiler::Node *node)
void LazyTemplateChecks() const
TNode(const TNode &other) V8_NOEXCEPT
TNode(const TNode< U > &other) V8_NOEXCEPT
TNode(compiler::Node *node)
static TNode UncheckedCast(compiler::Node *node)
TNode operator=(TNode other)
constexpr MachineType CommonMachineType(MachineType type1, MachineType type2)
UnionOf< Object, MaybeObject > AnyTaggedT
static constexpr bool is_taggable_v
typename detail::FlattenUnionHelper< Union<>, Ts... >::type UnionOf
constexpr bool IsMachineRepresentationOf(MachineRepresentation r)
constexpr MachineRepresentation PhiMachineRepresentationOf
UnionOf< Context, Smi > ContextOrEmptyContext
#define DCHECK_NOT_NULL(val)
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static const MachineRepresentation kMachineRepresentation
static constexpr MachineType kMachineType
static const MachineRepresentation kMachineRepresentation
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static const MachineRepresentation kMachineRepresentation
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static constexpr MachineType kMachineType
static const MachineRepresentation kMachineRepresentation
static const MachineRepresentation kMachineRepresentation
static const MachineRepresentation kMachineRepresentation
static const bool is_tagged
#define T1(name, string, precedence)
#define T2(name, string, precedence)