v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::compiler::JSTypedLowering Class Referencefinal

#include <js-typed-lowering.h>

Inheritance diagram for v8::internal::compiler::JSTypedLowering:
Collaboration diagram for v8::internal::compiler::JSTypedLowering:

Public Member Functions

 JSTypedLowering (Editor *editor, JSGraph *jsgraph, JSHeapBroker *broker, Zone *zone)
 
 ~JSTypedLowering () final=default
 
const char * reducer_name () const override
 
Reduction Reduce (Node *node) final
 

Private Member Functions

Reduction ReduceJSAdd (Node *node)
 
Reduction ReduceJSBitwiseNot (Node *node)
 
Reduction ReduceJSDecrement (Node *node)
 
Reduction ReduceJSIncrement (Node *node)
 
Reduction ReduceJSNegate (Node *node)
 
Reduction ReduceJSComparison (Node *node)
 
Reduction ReduceJSLoadNamed (Node *node)
 
Reduction ReduceJSHasInPrototypeChain (Node *node)
 
Reduction ReduceJSOrdinaryHasInstance (Node *node)
 
Reduction ReduceJSHasContextExtension (Node *node)
 
Reduction ReduceJSLoadContext (Node *node)
 
Reduction ReduceJSLoadScriptContext (Node *node)
 
Reduction ReduceJSStoreContext (Node *node)
 
Reduction ReduceJSStoreScriptContext (Node *node)
 
Reduction ReduceJSLoadModule (Node *node)
 
Reduction ReduceJSStoreModule (Node *node)
 
Reduction ReduceJSEqual (Node *node)
 
Reduction ReduceJSStrictEqual (Node *node)
 
Reduction ReduceJSToLength (Node *node)
 
Reduction ReduceJSToName (Node *node)
 
Reduction ReduceJSToNumberInput (Node *input)
 
Reduction ReduceJSToNumber (Node *node)
 
Reduction ReduceJSToBigInt (Node *node)
 
Reduction ReduceJSToBigIntConvertNumber (Node *node)
 
Reduction ReduceJSToNumeric (Node *node)
 
Reduction ReduceJSToStringInput (Node *input)
 
Reduction ReduceJSToString (Node *node)
 
Reduction ReduceJSToObject (Node *node)
 
Reduction ReduceJSConstructForwardVarargs (Node *node)
 
Reduction ReduceJSConstruct (Node *node)
 
Reduction ReduceJSCallForwardVarargs (Node *node)
 
Reduction ReduceJSCall (Node *node)
 
Reduction ReduceJSForInNext (Node *node)
 
Reduction ReduceJSForInPrepare (Node *node)
 
Reduction ReduceJSLoadMessage (Node *node)
 
Reduction ReduceJSStoreMessage (Node *node)
 
Reduction ReduceJSGeneratorStore (Node *node)
 
Reduction ReduceJSGeneratorRestoreContinuation (Node *node)
 
Reduction ReduceJSGeneratorRestoreContext (Node *node)
 
Reduction ReduceJSGeneratorRestoreRegister (Node *node)
 
Reduction ReduceJSGeneratorRestoreInputOrDebugPos (Node *node)
 
Reduction ReduceNumberBinop (Node *node)
 
Reduction ReduceInt32Binop (Node *node)
 
Reduction ReduceUI32Shift (Node *node, Signedness signedness)
 
Reduction ReduceObjectIsArray (Node *node)
 
Reduction ReduceJSParseInt (Node *node)
 
Reduction ReduceJSResolvePromise (Node *node)
 
NodeBuildGetModuleCell (Node *node)
 
Reduction GenerateStringAddition (Node *node, Node *left, Node *right, Node *context, Node *frame_state, Node **effect, Node **control, bool should_create_cons_string)
 
NodeUnwrapStringWrapper (Node *string_or_wrapper, Node **effect, Node **control)
 
Factoryfactory () const
 
TFGraphgraph () const
 
JSGraphjsgraph () const
 
JSHeapBrokerbroker () const
 
CompilationDependenciesdependencies () const
 
Isolateisolate () const
 
JSOperatorBuilderjavascript () const
 
CommonOperatorBuildercommon () const
 
SimplifiedOperatorBuildersimplified () const
 

Private Attributes

JSGraphjsgraph_
 
JSHeapBrokerbroker_
 
Type empty_string_type_
 
Type pointer_comparable_type_
 
TypeCache const * type_cache_
 

Friends

class JSBinopReduction
 

Detailed Description

Definition at line 30 of file js-typed-lowering.h.

Constructor & Destructor Documentation

◆ JSTypedLowering()

v8::internal::compiler::JSTypedLowering::JSTypedLowering ( Editor * editor,
JSGraph * jsgraph,
JSHeapBroker * broker,
Zone * zone )

Definition at line 517 of file js-typed-lowering.cc.

◆ ~JSTypedLowering()

v8::internal::compiler::JSTypedLowering::~JSTypedLowering ( )
finaldefault

Member Function Documentation

◆ broker()

JSHeapBroker * v8::internal::compiler::JSTypedLowering::broker ( ) const
inlineprivate

Definition at line 106 of file js-typed-lowering.h.

Here is the caller graph for this function:

◆ BuildGetModuleCell()

Node * v8::internal::compiler::JSTypedLowering::BuildGetModuleCell ( Node * node)
private

Definition at line 1864 of file js-typed-lowering.cc.

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

◆ common()

CommonOperatorBuilder * v8::internal::compiler::JSTypedLowering::common ( ) const
private

Definition at line 2962 of file js-typed-lowering.cc.

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

◆ dependencies()

CompilationDependencies * v8::internal::compiler::JSTypedLowering::dependencies ( ) const
private

Definition at line 2952 of file js-typed-lowering.cc.

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

◆ factory()

Factory * v8::internal::compiler::JSTypedLowering::factory ( ) const
private

Definition at line 2948 of file js-typed-lowering.cc.

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

◆ GenerateStringAddition()

Reduction v8::internal::compiler::JSTypedLowering::GenerateStringAddition ( Node * node,
Node * left,
Node * right,
Node * context,
Node * frame_state,
Node ** effect,
Node ** control,
bool should_create_cons_string )
private

Definition at line 595 of file js-typed-lowering.cc.

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

◆ graph()

TFGraph * v8::internal::compiler::JSTypedLowering::graph ( ) const
private

Definition at line 2950 of file js-typed-lowering.cc.

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

◆ isolate()

Isolate * v8::internal::compiler::JSTypedLowering::isolate ( ) const
private

Definition at line 2956 of file js-typed-lowering.cc.

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

◆ javascript()

JSOperatorBuilder * v8::internal::compiler::JSTypedLowering::javascript ( ) const
private

Definition at line 2958 of file js-typed-lowering.cc.

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

◆ jsgraph()

JSGraph * v8::internal::compiler::JSTypedLowering::jsgraph ( ) const
inlineprivate

Definition at line 105 of file js-typed-lowering.h.

Here is the caller graph for this function:

◆ Reduce()

Reduction v8::internal::compiler::JSTypedLowering::Reduce ( Node * node)
final

Definition at line 2837 of file js-typed-lowering.cc.

Here is the call graph for this function:

◆ ReduceInt32Binop()

Reduction v8::internal::compiler::JSTypedLowering::ReduceInt32Binop ( Node * node)
private

Definition at line 829 of file js-typed-lowering.cc.

Here is the caller graph for this function:

◆ ReduceJSAdd()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSAdd ( Node * node)
private

Definition at line 697 of file js-typed-lowering.cc.

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

◆ ReduceJSBitwiseNot()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSBitwiseNot ( Node * node)
private

Definition at line 532 of file js-typed-lowering.cc.

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

◆ ReduceJSCall()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSCall ( Node * node)
private

Definition at line 2126 of file js-typed-lowering.cc.

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

◆ ReduceJSCallForwardVarargs()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSCallForwardVarargs ( Node * node)
private

Definition at line 2096 of file js-typed-lowering.cc.

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

◆ ReduceJSComparison()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSComparison ( Node * node)
private

Definition at line 851 of file js-typed-lowering.cc.

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

◆ ReduceJSConstruct()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSConstruct ( Node * node)
private

Definition at line 2058 of file js-typed-lowering.cc.

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

◆ ReduceJSConstructForwardVarargs()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSConstructForwardVarargs ( Node * node)
private

Definition at line 2023 of file js-typed-lowering.cc.

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

◆ ReduceJSDecrement()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSDecrement ( Node * node)
private

Definition at line 548 of file js-typed-lowering.cc.

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

◆ ReduceJSEqual()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSEqual ( Node * node)
private

Definition at line 918 of file js-typed-lowering.cc.

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

◆ ReduceJSForInNext()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSForInNext ( Node * node)
private

Definition at line 2310 of file js-typed-lowering.cc.

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

◆ ReduceJSForInPrepare()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSForInPrepare ( Node * node)
private

Definition at line 2423 of file js-typed-lowering.cc.

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

◆ ReduceJSGeneratorRestoreContext()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSGeneratorRestoreContext ( Node * node)
private

Definition at line 2645 of file js-typed-lowering.cc.

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

◆ ReduceJSGeneratorRestoreContinuation()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSGeneratorRestoreContinuation ( Node * node)
private

Definition at line 2625 of file js-typed-lowering.cc.

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

◆ ReduceJSGeneratorRestoreInputOrDebugPos()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSGeneratorRestoreInputOrDebugPos ( Node * node)
private

Definition at line 2683 of file js-typed-lowering.cc.

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

◆ ReduceJSGeneratorRestoreRegister()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSGeneratorRestoreRegister ( Node * node)
private

Definition at line 2660 of file js-typed-lowering.cc.

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

◆ ReduceJSGeneratorStore()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSGeneratorStore ( Node * node)
private

Definition at line 2584 of file js-typed-lowering.cc.

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

◆ ReduceJSHasContextExtension()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSHasContextExtension ( Node * node)
private

Definition at line 1529 of file js-typed-lowering.cc.

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

◆ ReduceJSHasInPrototypeChain()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSHasInPrototypeChain ( Node * node)
private

Definition at line 1359 of file js-typed-lowering.cc.

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

◆ ReduceJSIncrement()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSIncrement ( Node * node)
private

Definition at line 564 of file js-typed-lowering.cc.

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

◆ ReduceJSLoadContext()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSLoadContext ( Node * node)
private

Definition at line 1585 of file js-typed-lowering.cc.

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

◆ ReduceJSLoadMessage()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSLoadMessage ( Node * node)
private

Definition at line 2564 of file js-typed-lowering.cc.

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

◆ ReduceJSLoadModule()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSLoadModule ( Node * node)
private

Definition at line 1902 of file js-typed-lowering.cc.

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

◆ ReduceJSLoadNamed()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSLoadNamed ( Node * node)
private

Definition at line 1344 of file js-typed-lowering.cc.

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

◆ ReduceJSLoadScriptContext()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSLoadScriptContext ( Node * node)
private

Definition at line 1606 of file js-typed-lowering.cc.

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

◆ ReduceJSNegate()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSNegate ( Node * node)
private

Definition at line 580 of file js-typed-lowering.cc.

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

◆ ReduceJSOrdinaryHasInstance()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSOrdinaryHasInstance ( Node * node)
private

Definition at line 1501 of file js-typed-lowering.cc.

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

◆ ReduceJSParseInt()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSParseInt ( Node * node)
private

Definition at line 2802 of file js-typed-lowering.cc.

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

◆ ReduceJSResolvePromise()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSResolvePromise ( Node * node)
private

Definition at line 2821 of file js-typed-lowering.cc.

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

◆ ReduceJSStoreContext()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSStoreContext ( Node * node)
private

Definition at line 1735 of file js-typed-lowering.cc.

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

◆ ReduceJSStoreMessage()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSStoreMessage ( Node * node)
private

Definition at line 2573 of file js-typed-lowering.cc.

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

◆ ReduceJSStoreModule()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSStoreModule ( Node * node)
private

Definition at line 1917 of file js-typed-lowering.cc.

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

◆ ReduceJSStoreScriptContext()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSStoreScriptContext ( Node * node)
private

Definition at line 1757 of file js-typed-lowering.cc.

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

◆ ReduceJSStrictEqual()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSStrictEqual ( Node * node)
private

Definition at line 1012 of file js-typed-lowering.cc.

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

◆ ReduceJSToBigInt()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToBigInt ( Node * node)
private

Definition at line 1183 of file js-typed-lowering.cc.

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

◆ ReduceJSToBigIntConvertNumber()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToBigIntConvertNumber ( Node * node)
private

Definition at line 1194 of file js-typed-lowering.cc.

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

◆ ReduceJSToLength()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToLength ( Node * node)
private

Definition at line 1101 of file js-typed-lowering.cc.

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

◆ ReduceJSToName()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToName ( Node * node)
private

Definition at line 1090 of file js-typed-lowering.cc.

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

◆ ReduceJSToNumber()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToNumber ( Node * node)
private

Definition at line 1161 of file js-typed-lowering.cc.

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

◆ ReduceJSToNumberInput()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToNumberInput ( Node * input)
private

Definition at line 1126 of file js-typed-lowering.cc.

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

◆ ReduceJSToNumeric()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToNumeric ( Node * node)
private

Definition at line 1216 of file js-typed-lowering.cc.

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

◆ ReduceJSToObject()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToObject ( Node * node)
private

Definition at line 1275 of file js-typed-lowering.cc.

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

◆ ReduceJSToString()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToString ( Node * node)
private

Definition at line 1263 of file js-typed-lowering.cc.

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

◆ ReduceJSToStringInput()

Reduction v8::internal::compiler::JSTypedLowering::ReduceJSToStringInput ( Node * input)
private

Definition at line 1230 of file js-typed-lowering.cc.

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

◆ ReduceNumberBinop()

Reduction v8::internal::compiler::JSTypedLowering::ReduceNumberBinop ( Node * node)
private

Definition at line 820 of file js-typed-lowering.cc.

Here is the caller graph for this function:

◆ ReduceObjectIsArray()

Reduction v8::internal::compiler::JSTypedLowering::ReduceObjectIsArray ( Node * node)
private

Definition at line 2699 of file js-typed-lowering.cc.

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

◆ reducer_name()

const char * v8::internal::compiler::JSTypedLowering::reducer_name ( ) const
inlineoverride

Definition at line 37 of file js-typed-lowering.h.

◆ ReduceUI32Shift()

Reduction v8::internal::compiler::JSTypedLowering::ReduceUI32Shift ( Node * node,
Signedness signedness )
private

Definition at line 839 of file js-typed-lowering.cc.

Here is the caller graph for this function:

◆ simplified()

SimplifiedOperatorBuilder * v8::internal::compiler::JSTypedLowering::simplified ( ) const
private

Definition at line 2966 of file js-typed-lowering.cc.

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

◆ UnwrapStringWrapper()

Node * v8::internal::compiler::JSTypedLowering::UnwrapStringWrapper ( Node * string_or_wrapper,
Node ** effect,
Node ** control )
private

Definition at line 665 of file js-typed-lowering.cc.

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

Friends And Related Symbol Documentation

◆ JSBinopReduction

friend class JSBinopReduction
friend

Definition at line 42 of file js-typed-lowering.h.

Member Data Documentation

◆ broker_

JSHeapBroker* v8::internal::compiler::JSTypedLowering::broker_
private

Definition at line 114 of file js-typed-lowering.h.

◆ empty_string_type_

Type v8::internal::compiler::JSTypedLowering::empty_string_type_
private

Definition at line 115 of file js-typed-lowering.h.

◆ jsgraph_

JSGraph* v8::internal::compiler::JSTypedLowering::jsgraph_
private

Definition at line 113 of file js-typed-lowering.h.

◆ pointer_comparable_type_

Type v8::internal::compiler::JSTypedLowering::pointer_comparable_type_
private

Definition at line 116 of file js-typed-lowering.h.

◆ type_cache_

TypeCache const* v8::internal::compiler::JSTypedLowering::type_cache_
private

Definition at line 117 of file js-typed-lowering.h.


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