v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::BuiltinsReducer< Next > Class Template Reference

#include <turboshaft-builtins-assembler-inl.h>

Inheritance diagram for v8::internal::BuiltinsReducer< Next >:
Collaboration diagram for v8::internal::BuiltinsReducer< Next >:

Public Types

using BuiltinArgumentsTS = detail::BuiltinArgumentsTS<assembler_t>
 

Public Member Functions

void EmitBuiltinProlog (Builtin builtin_id)
 
void EmitEpilog (Block *catch_block)
 
V< ContextJSContextParameter ()
 
void PerformStackCheck (V< Context > context)
 
void PopAndReturn (BuiltinArgumentsTS &arguments, compiler::turboshaft::V< Object > return_value)
 
V< Word32TruncateTaggedToWord32 (V< Context > context, V< Object > value)
 
V< Word32IsBigIntInstanceType (ConstOrV< Word32 > instance_type)
 
V< Word32IsSmallBigInt (V< BigInt > value)
 
V< Word32InstanceTypeEqual (ConstOrV< Word32 > instance_type, ConstOrV< Word32 > other_instance_type)
 
V< WordPtrAlignTagged (V< WordPtr > size)
 
V< WordPtrElementOffsetFromIndex (ConstOrV< WordPtr > index, ElementsKind kind, intptr_t base_size)
 
std::optional< intptr_t > TryToIntPtrConstant (ConstOrV< WordPtr > index)
 
template<Object::Conversion Conversion>
void TaggedToWord32OrBigIntImpl (V< Context > context, V< Object > value, IsKnownTaggedPointer is_known_tagged_pointer, Label< Word32 > &if_number, Label< BigInt > *if_bigint=nullptr, Label< BigInt > *if_bigint64=nullptr)
 

Private Member Functions

Isolateisolate ()
 

Private Attributes

compiler::turboshaft::OperationMatcher matcher_ {__ data()->graph()}
 

Detailed Description

template<typename Next>
class v8::internal::BuiltinsReducer< Next >

Definition at line 384 of file turboshaft-builtins-assembler-inl.h.

Member Typedef Documentation

◆ BuiltinArgumentsTS

template<typename Next >
using v8::internal::BuiltinsReducer< Next >::BuiltinArgumentsTS = detail::BuiltinArgumentsTS<assembler_t>

Definition at line 388 of file turboshaft-builtins-assembler-inl.h.

Member Function Documentation

◆ AlignTagged()

template<typename Next >
V< WordPtr > v8::internal::BuiltinsReducer< Next >::AlignTagged ( V< WordPtr > size)
inline

Definition at line 478 of file turboshaft-builtins-assembler-inl.h.

◆ ElementOffsetFromIndex()

template<typename Next >
V< WordPtr > v8::internal::BuiltinsReducer< Next >::ElementOffsetFromIndex ( ConstOrV< WordPtr > index,
ElementsKind kind,
intptr_t base_size )
inline

Definition at line 483 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:

◆ EmitBuiltinProlog()

template<typename Next >
void v8::internal::BuiltinsReducer< Next >::EmitBuiltinProlog ( Builtin builtin_id)
inline

Definition at line 390 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:

◆ EmitEpilog()

template<typename Next >
void v8::internal::BuiltinsReducer< Next >::EmitEpilog ( Block * catch_block)
inline

Definition at line 408 of file turboshaft-builtins-assembler-inl.h.

◆ InstanceTypeEqual()

template<typename Next >
V< Word32 > v8::internal::BuiltinsReducer< Next >::InstanceTypeEqual ( ConstOrV< Word32 > instance_type,
ConstOrV< Word32 > other_instance_type )
inline

Definition at line 473 of file turboshaft-builtins-assembler-inl.h.

Here is the caller graph for this function:

◆ IsBigIntInstanceType()

template<typename Next >
V< Word32 > v8::internal::BuiltinsReducer< Next >::IsBigIntInstanceType ( ConstOrV< Word32 > instance_type)
inline

Definition at line 469 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isolate()

template<typename Next >
Isolate * v8::internal::BuiltinsReducer< Next >::isolate ( )
inlineprivate

Definition at line 588 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsSmallBigInt()

template<typename Next >
V< Word32 > v8::internal::BuiltinsReducer< Next >::IsSmallBigInt ( V< BigInt > value)
inline

Definition at line 472 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ JSContextParameter()

template<typename Next >
V< Context > v8::internal::BuiltinsReducer< Next >::JSContextParameter ( )
inline

Definition at line 425 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PerformStackCheck()

template<typename Next >
void v8::internal::BuiltinsReducer< Next >::PerformStackCheck ( V< Context > context)
inline

Definition at line 431 of file turboshaft-builtins-assembler-inl.h.

Here is the caller graph for this function:

◆ PopAndReturn()

template<typename Next >
void v8::internal::BuiltinsReducer< Next >::PopAndReturn ( BuiltinArgumentsTS & arguments,
compiler::turboshaft::V< Object > return_value )
inline

Definition at line 437 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:

◆ TaggedToWord32OrBigIntImpl()

template<typename Next >
template<Object::Conversion Conversion>
void v8::internal::BuiltinsReducer< Next >::TaggedToWord32OrBigIntImpl ( V< Context > context,
V< Object > value,
IsKnownTaggedPointer is_known_tagged_pointer,
Label< Word32 > & if_number,
Label< BigInt > * if_bigint = nullptr,
Label< BigInt > * if_bigint64 = nullptr )
inline

Definition at line 509 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TruncateTaggedToWord32()

template<typename Next >
V< Word32 > v8::internal::BuiltinsReducer< Next >::TruncateTaggedToWord32 ( V< Context > context,
V< Object > value )
inline

Definition at line 460 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:

◆ TryToIntPtrConstant()

template<typename Next >
std::optional< intptr_t > v8::internal::BuiltinsReducer< Next >::TryToIntPtrConstant ( ConstOrV< WordPtr > index)
inline

Definition at line 499 of file turboshaft-builtins-assembler-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ matcher_

template<typename Next >
compiler::turboshaft::OperationMatcher v8::internal::BuiltinsReducer< Next >::matcher_ {__ data()->graph()}
private

Definition at line 587 of file turboshaft-builtins-assembler-inl.h.


The documentation for this class was generated from the following file: