A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://clang.llvm.org/doxygen/classclang_1_1interp_1_1Function.html below:

clang: clang::interp::Function Class Reference

Bytecode function. More...

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/AST/ByteCode/Function.h"

Bytecode function.

Contains links to the bytecode of the function, as well as metadata describing all arguments and stack-local variables.

Calling Convention

When calling a function, all argument values must be on the stack.

If the function has a This pointer (i.e. hasThisPointer() returns true, the argument values need to be preceeded by a Pointer for the This object.

If the function uses Return Value Optimization, the arguments (and potentially the This pointer) need to be preceeded by a Pointer pointing to the location to construct the returned value.

After the function has been called, it will remove all arguments, including RVO and This pointer, from the stack.

Definition at line 81 of file Function.h.

◆ arg_reverse_iterator

Range over argument types.

Definition at line 134 of file Function.h.

◆ ParamDescriptor ◆ FunctionKind Enumerator Normal  Ctor  Dtor  LambdaStaticInvoker  LambdaCallOperator 

Definition at line 83 of file Function.h.

◆ args_reverse() ◆ dump() [1/2] LLVM_DUMP_METHOD void Function::dump ( ) const

Dumps the disassembled bytecode to llvm::errs().

Definition at line 71 of file Disasm.cpp.

References dump().

◆ dump() [2/2] LLVM_DUMP_METHOD void Function::dump ( llvm::raw_ostream &  OS ) const ◆ getArgSize() unsigned clang::interp::Function::getArgSize ( ) const inline

Returns the size of the argument stack.

Definition at line 95 of file Function.h.

◆ getBuiltinID() unsigned clang::interp::Function::getBuiltinID ( ) const inline ◆ getCodeBegin() CodePtr clang::interp::Function::getCodeBegin ( ) const inline ◆ getCodeEnd() CodePtr clang::interp::Function::getCodeEnd ( ) const inline

Returns a pointer to the end of the code.

Definition at line 100 of file Function.h.

◆ getDecl() const FunctionDecl * clang::interp::Function::getDecl ( ) const inline

Returns the original FunctionDecl.

Definition at line 103 of file Function.h.

Referenced by clang::interp::CheckCallable(), clang::interp::CheckNonNullArgs(), funcHasUsableBody(), clang::interp::InterpFrame::getCallee(), getName(), clang::interp::Pointer::getSource(), hasNonNullAttr(), clang::interp::interp__builtin_inf(), clang::interp::interp__builtin_nan(), clang::interp::InterpFrame::isStdFunction(), shouldSkipInBacktrace(), and clang::interp::FunctionPointer::toAPValue().

◆ getExpr() const BlockExpr * clang::interp::Function::getExpr ( ) const inline ◆ getFrameSize() unsigned clang::interp::Function::getFrameSize ( ) const inline ◆ getName() const std::string clang::interp::Function::getName ( ) const inline ◆ getNumParams() unsigned clang::interp::Function::getNumParams ( ) const inline ◆ getNumWrittenParams() unsigned clang::interp::Function::getNumWrittenParams ( ) const inline ◆ getParamDescriptor() ◆ getParamOffset() ◆ getParamType() ◆ getParentDecl() const CXXRecordDecl * clang::interp::Function::getParentDecl ( ) const inline ◆ getScope() [1/2] ◆ getScope() [2/2] ◆ getSource() ◆ getWrittenArgSize() unsigned clang::interp::Function::getWrittenArgSize ( ) const inline ◆ hasBody() bool clang::interp::Function::hasBody ( ) const inline ◆ hasNonNullAttr() bool clang::interp::Function::hasNonNullAttr ( ) const inline ◆ hasRVO() bool clang::interp::Function::hasRVO ( ) const inline ◆ hasThisPointer() bool clang::interp::Function::hasThisPointer ( ) const inline ◆ isBuiltin() bool clang::interp::Function::isBuiltin ( ) const inline ◆ isConstexpr() bool clang::interp::Function::isConstexpr ( ) const inline ◆ isConstructor() bool clang::interp::Function::isConstructor ( ) const inline ◆ isDefined() bool clang::interp::Function::isDefined ( ) const inline

Checks if the function is defined.

Definition at line 187 of file Function.h.

◆ isDestructor() bool clang::interp::Function::isDestructor ( ) const inline ◆ isFullyCompiled() bool clang::interp::Function::isFullyCompiled ( ) const inline

Checks if the function is fully done compiling.

Definition at line 179 of file Function.h.

◆ isLambdaCallOperator() bool clang::interp::Function::isLambdaCallOperator ( ) const inline ◆ isLambdaStaticInvoker() bool clang::interp::Function::isLambdaStaticInvoker ( ) const inline ◆ isThisPointerExplicit() bool clang::interp::Function::isThisPointerExplicit ( ) const inline

Definition at line 209 of file Function.h.

◆ isUnevaluatedBuiltin() ◆ isVariadic() bool clang::interp::Function::isVariadic ( ) const inline

Definition at line 189 of file Function.h.

◆ isVirtual() bool clang::interp::Function::isVirtual ( ) const inline ◆ scopes() llvm::iterator_range< llvm::SmallVector< Scope, 2 >::const_iterator > clang::interp::Function::scopes ( ) const inline ◆ ByteCodeEmitter ◆ Program

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


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4