V8 Project
v8::internal::compiler::JSCallFunctionAccessor Class Reference
+ Collaboration diagram for v8::internal::compiler::JSCallFunctionAccessor:

Public Member Functions

 JSCallFunctionAccessor (Node *call)
 
Node * jsfunction ()
 
Node * receiver ()
 
Node * formal_argument (size_t index)
 
size_t formal_arguments ()
 
Node * frame_state ()
 

Private Attributes

Node * call_
 

Detailed Description

Definition at line 309 of file js-inlining.cc.

Constructor & Destructor Documentation

◆ JSCallFunctionAccessor()

v8::internal::compiler::JSCallFunctionAccessor::JSCallFunctionAccessor ( Node *  call)
inlineexplicit

Definition at line 311 of file js-inlining.cc.

311  : call_(call) {
312  DCHECK_EQ(IrOpcode::kJSCallFunction, call->opcode());
313  }
#define DCHECK_EQ(v1, v2)
Definition: logging.h:206

References DCHECK_EQ.

Member Function Documentation

◆ formal_argument()

Node* v8::internal::compiler::JSCallFunctionAccessor::formal_argument ( size_t  index)
inline

Definition at line 319 of file js-inlining.cc.

319  {
320  DCHECK(index < formal_arguments());
321  return call_->InputAt(static_cast<int>(2 + index));
322  }
#define DCHECK(condition)
Definition: logging.h:205

References call_, DCHECK, and formal_arguments().

Referenced by v8::internal::compiler::JSInliner::CreateArgumentsAdaptorFrameState().

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

◆ formal_arguments()

size_t v8::internal::compiler::JSCallFunctionAccessor::formal_arguments ( )
inline

Definition at line 324 of file js-inlining.cc.

324  {
325  // {value_inputs} includes jsfunction and receiver.
326  size_t value_inputs = OperatorProperties::GetValueInputCount(call_->op());
327  DCHECK_GE(call_->InputCount(), 2);
328  return value_inputs - 2;
329  }
static int GetValueInputCount(const Operator *op)
#define DCHECK_GE(v1, v2)
Definition: logging.h:208

References call_, DCHECK_GE, and v8::internal::compiler::OperatorProperties::GetValueInputCount().

Referenced by v8::internal::compiler::JSInliner::CreateArgumentsAdaptorFrameState(), formal_argument(), and v8::internal::compiler::JSInliner::TryInlineCall().

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

◆ frame_state()

Node* v8::internal::compiler::JSCallFunctionAccessor::frame_state ( )
inline

Definition at line 331 of file js-inlining.cc.

References call_, and v8::internal::compiler::NodeProperties::GetFrameStateInput().

Referenced by v8::internal::compiler::JSInliner::CreateArgumentsAdaptorFrameState(), and v8::internal::compiler::JSInliner::TryInlineCall().

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

◆ jsfunction()

Node* v8::internal::compiler::JSCallFunctionAccessor::jsfunction ( )
inline

Definition at line 315 of file js-inlining.cc.

315 { return call_->InputAt(0); }

References call_.

Referenced by v8::internal::compiler::JSInliner::TryInlineCall().

+ Here is the caller graph for this function:

◆ receiver()

Node* v8::internal::compiler::JSCallFunctionAccessor::receiver ( )
inline

Definition at line 317 of file js-inlining.cc.

317 { return call_->InputAt(1); }

References call_.

Referenced by v8::internal::compiler::JSInliner::CreateArgumentsAdaptorFrameState().

+ Here is the caller graph for this function:

Member Data Documentation

◆ call_

Node* v8::internal::compiler::JSCallFunctionAccessor::call_
private

Definition at line 334 of file js-inlining.cc.

Referenced by formal_argument(), formal_arguments(), frame_state(), jsfunction(), and receiver().


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