A RetroSearch Logo

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

Search Query:

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

clang: lib/CodeGen/TargetInfo.h Source File

14#ifndef LLVM_CLANG_LIB_CODEGEN_TARGETINFO_H 15#define LLVM_CLANG_LIB_CODEGEN_TARGETINFO_H 24#include "llvm/ADT/SmallString.h" 25#include "llvm/ADT/StringRef.h" 48

std::unique_ptr<ABIInfo> Info;

58 return static_cast<const T

&

>

(*Info);

70

assert(

SwiftInfo

&&

"Swift ABI info has not been initialized"

);

83 const

llvm::MapVector<GlobalDecl, StringRef> &MangledDeclNames)

const

{}

151

llvm::Value *

Address

)

const

{

161

llvm::Value *

Address

)

const

{

171

llvm::Value *

Address

)

const

{

178 virtual

llvm::Value *

181

assert(

V

->getType()->isFloatingPointTy() &&

"V should have an FP type."

);

191

StringRef Constraint,

192

llvm::Type *Ty)

const

{

199

llvm::Type *Ty)

const

{

206

std::string &Constraints, std::vector<llvm::Type *> &ResultRegTypes,

207

std::vector<llvm::Type *> &ResultTruncRegTypes,

208

std::vector<CodeGen::LValue> &ResultRegDests, std::string &AsmString,

209 unsigned

NumOutputs)

const

{}

236 virtual

llvm::Constant *

238 return

llvm::ConstantInt::get(CGM.

Int32Ty

, 0xc105cafe);

294

llvm::StringRef

Value

,

306

llvm::PointerType *

T

,

QualType

QT)

const

;

321 bool

IsNonNull =

false

)

const

;

330

llvm::Value *

V

,

LangAS

SrcAddr,

331 LangAS

DestAddr, llvm::Type *DestTy,

332 bool

IsNonNull =

false

)

const

;

342

llvm::Type *DestTy)

const

;

352

llvm::AtomicOrdering Ordering,

353

llvm::LLVMContext &Ctx)

const

;

357

llvm::Instruction &AtomicInst,

364 typedef

std::pair<llvm::Value *, StringRef>

ValueTy

;

387 virtual

llvm::Value *

389

llvm::Function *BlockInvokeFunc,

390

llvm::Type *BlockTy)

const

;

455

llvm::AttrBuilder &FuncAttrs);

464

std::unique_ptr<TargetCodeGenInfo>

475

std::unique_ptr<TargetCodeGenInfo>

478

std::unique_ptr<TargetCodeGenInfo>

481

std::unique_ptr<TargetCodeGenInfo>

484

std::unique_ptr<TargetCodeGenInfo>

494

std::unique_ptr<TargetCodeGenInfo>

497

std::unique_ptr<TargetCodeGenInfo>

500

std::unique_ptr<TargetCodeGenInfo>

503

std::unique_ptr<TargetCodeGenInfo>

506

std::unique_ptr<TargetCodeGenInfo>

509

std::unique_ptr<TargetCodeGenInfo>

512

std::unique_ptr<TargetCodeGenInfo>

515

std::unique_ptr<TargetCodeGenInfo>

519

std::unique_ptr<TargetCodeGenInfo>

522

std::unique_ptr<TargetCodeGenInfo>

525

std::unique_ptr<TargetCodeGenInfo>

528

std::unique_ptr<TargetCodeGenInfo>

531

std::unique_ptr<TargetCodeGenInfo>

534

std::unique_ptr<TargetCodeGenInfo>

542

std::unique_ptr<TargetCodeGenInfo>

545

std::unique_ptr<TargetCodeGenInfo>

548

std::unique_ptr<TargetCodeGenInfo>

551

std::unique_ptr<TargetCodeGenInfo>

555

std::unique_ptr<TargetCodeGenInfo>

559

std::unique_ptr<TargetCodeGenInfo>

562

std::unique_ptr<TargetCodeGenInfo>

565

std::unique_ptr<TargetCodeGenInfo>

568

std::unique_ptr<TargetCodeGenInfo>

571

std::unique_ptr<TargetCodeGenInfo>

575

std::unique_ptr<TargetCodeGenInfo>

578

std::unique_ptr<TargetCodeGenInfo>

581

std::unique_ptr<TargetCodeGenInfo>

589

std::unique_ptr<TargetCodeGenInfo>

600

CodeGenModule &CGM,

bool

DarwinVectorABI,

bool

Win32StructABI,

601 unsigned

NumRegisterParameters,

bool

SoftFloatABI);

603

std::unique_ptr<TargetCodeGenInfo>

606 unsigned

NumRegisterParameters);

608

std::unique_ptr<TargetCodeGenInfo>

611

std::unique_ptr<TargetCodeGenInfo>

614

std::unique_ptr<TargetCodeGenInfo>

enum clang::sema::@1704::IndirectLocalPathEntry::EntryKind Kind

Forward-declares and imports various common LLVM datatypes that clang wants to use unqualified.

Provides definitions for the atomic synchronization scopes.

C Language Family Type Representation.

AtomicExpr - Variadic atomic builtins: __atomic_exchange, __atomic_fetch_*, __atomic_load,...

ABIInfo - Target specific hooks for defining how a type should be passed or returned from functions.

Like RawAddress, an abstract representation of an aligned address, but the pointer contained in this ...

CGBlockInfo - Information to generate a block literal.

CallArgList - Type for representing both the value and type of arguments in a call.

CodeGenFunction - This class organizes the per-function state that is used while generating LLVM code...

This class organizes the cross-function state that is used while generating LLVM code.

LValue - This represents an lvalue references.

Target specific hooks for defining how a type should be passed or returned from functions with one of...

Interface class for filling custom fields of a block literal for OpenCL.

TargetOpenCLBlockHelper()

virtual llvm::SmallVector< llvm::Type *, 1 > getCustomFieldTypes()=0

Get the custom field types for OpenCL blocks.

virtual ~TargetOpenCLBlockHelper()

virtual llvm::SmallVector< llvm::Constant *, 1 > getCustomFieldValues(CodeGenModule &CGM, const CGBlockInfo &Info)=0

Get the custom field values for OpenCL blocks if all values are LLVM constants.

virtual bool areAllCustomFieldValuesConstant(const CGBlockInfo &Info)=0

virtual llvm::SmallVector< ValueTy, 1 > getCustomFieldValues(CodeGenFunction &CGF, const CGBlockInfo &Info)=0

Get the custom field values for OpenCL blocks.

std::pair< llvm::Value *, StringRef > ValueTy

TargetCodeGenInfo - This class organizes various target-specific codegeneration issues,...

virtual void addReturnRegisterOutputs(CodeGen::CodeGenFunction &CGF, CodeGen::LValue ReturnValue, std::string &Constraints, std::vector< llvm::Type * > &ResultRegTypes, std::vector< llvm::Type * > &ResultTruncRegTypes, std::vector< CodeGen::LValue > &ResultRegDests, std::string &AsmString, unsigned NumOutputs) const

Adds constraints and types for result registers.

virtual bool emitCUDADeviceBuiltinSurfaceDeviceCopy(CodeGenFunction &CGF, LValue Dst, LValue Src) const

Emit the device-side copy of the builtin surface type.

virtual llvm::Type * getWasmFuncrefReferenceType() const

Return the WebAssembly funcref reference type.

virtual unsigned getSizeOfUnwindException() const

Determines the size of struct _Unwind_Exception on this platform, in 8-bit units.

virtual llvm::Type * getWasmExternrefReferenceType() const

Return the WebAssembly externref reference type.

virtual llvm::Type * getOpenCLType(CodeGenModule &CGM, const Type *T) const

Return an LLVM type that corresponds to an OpenCL type.

virtual bool emitCUDADeviceBuiltinTextureDeviceCopy(CodeGenFunction &CGF, LValue Dst, LValue Src) const

Emit the device-side copy of the builtin texture type.

virtual bool doesReturnSlotInterfereWithArgs() const

doesReturnSlotInterfereWithArgs - Return true if the target uses an argument slot for an 'sret' type.

virtual bool wouldInliningViolateFunctionCallABI(const FunctionDecl *Caller, const FunctionDecl *Callee) const

Returns true if inlining the function call would produce incorrect code for the current target and sh...

std::unique_ptr< SwiftABIInfo > SwiftInfo

virtual void setCUDAKernelCallingConvention(const FunctionType *&FT) const

virtual llvm::Type * getCUDADeviceBuiltinSurfaceDeviceType() const

Return the device-side type for the CUDA device builtin surface type.

virtual llvm::Type * adjustInlineAsmType(CodeGen::CodeGenFunction &CGF, StringRef Constraint, llvm::Type *Ty) const

Corrects the low-level LLVM type for a given constraint and "usual" type.

virtual void getDependentLibraryOption(llvm::StringRef Lib, llvm::SmallString< 24 > &Opt) const

Gets the linker options necessary to link a dependent library on this platform.

virtual StringRef getARCRetainAutoreleasedReturnValueMarker() const

Retrieve the address of a function to call immediately before calling objc_retainAutoreleasedReturnVa...

const SwiftABIInfo & getSwiftABIInfo() const

Returns Swift ABI info helper for the target.

Address performAddrSpaceCast(CodeGen::CodeGenFunction &CGF, Address Addr, LangAS SrcAddr, LangAS DestAddr, llvm::Type *DestTy, bool IsNonNull=false) const

virtual llvm::Type * getHLSLType(CodeGenModule &CGM, const Type *T) const

Return an LLVM type that corresponds to a HLSL type.

virtual llvm::Value * encodeReturnAddress(CodeGen::CodeGenFunction &CGF, llvm::Value *Address) const

Performs the code-generation required to convert the address of an instruction into a return address ...

virtual llvm::SyncScope::ID getLLVMSyncScopeID(const LangOptions &LangOpts, SyncScope Scope, llvm::AtomicOrdering Ordering, llvm::LLVMContext &Ctx) const

Get the syncscope used in LLVM IR.

static void setBranchProtectionFnAttributes(const TargetInfo::BranchProtectionInfo &BPI, llvm::Function &F)

virtual void checkFunctionCallABI(CodeGenModule &CGM, SourceLocation CallLoc, const FunctionDecl *Caller, const FunctionDecl *Callee, const CallArgList &Args, QualType ReturnType) const

Any further codegen related checks that need to be done on a function call in a target specific manne...

virtual llvm::Value * decodeReturnAddress(CodeGen::CodeGenFunction &CGF, llvm::Value *Address) const

Performs the code-generation required to convert a return address as stored by the system into the ac...

virtual bool initDwarfEHRegSizeTable(CodeGen::CodeGenFunction &CGF, llvm::Value *Address) const

Initializes the given DWARF EH register-size table, a char*.

const T & getABIInfo() const

virtual unsigned getOpenCLKernelCallingConv() const

Get LLVM calling convention for OpenCL kernel.

virtual LangAS getGlobalVarAddressSpace(CodeGenModule &CGM, const VarDecl *D) const

Get target favored AST address space of a global variable for languages other than OpenCL and CUDA.

virtual void setTargetAttributes(const Decl *D, llvm::GlobalValue *GV, CodeGen::CodeGenModule &M) const

setTargetAttributes - Provides a convenient hook to handle extra target-specific attributes for the g...

virtual llvm::Type * getCUDADeviceBuiltinTextureDeviceType() const

Return the device-side type for the CUDA device builtin texture type.

virtual void checkFunctionABI(CodeGenModule &CGM, const FunctionDecl *Decl) const

Any further codegen related checks that need to be done on a function signature in a target specific ...

virtual bool isScalarizableAsmOperand(CodeGen::CodeGenFunction &CGF, llvm::Type *Ty) const

Target hook to decide whether an inline asm operand can be passed by value.

static std::string qualifyWindowsLibrary(StringRef Lib)

void addStackProbeTargetAttributes(const Decl *D, llvm::GlobalValue *GV, CodeGen::CodeGenModule &CGM) const

const ABIInfo & getABIInfo() const

getABIInfo() - Returns ABI info helper for the target.

virtual bool shouldEmitDWARFBitFieldSeparators() const

virtual LangAS getAddrSpaceOfCxaAtexitPtrParam() const

Get address space of pointer parameter for __cxa_atexit.

virtual bool extendPointerWithSExt() const

Controls whether __builtin_extend_pointer should sign-extend pointers to uint64_t or zero-extend them...

virtual llvm::Constant * getNullPointer(const CodeGen::CodeGenModule &CGM, llvm::PointerType *T, QualType QT) const

Get target specific null pointer.

static void initBranchProtectionFnAttributes(const TargetInfo::BranchProtectionInfo &BPI, llvm::AttrBuilder &FuncAttrs)

virtual TargetOpenCLBlockHelper * getTargetOpenCLBlockHelper() const

virtual LangAS getASTAllocaAddressSpace() const

Get the AST address space for alloca.

virtual int getDwarfEHStackPointer(CodeGen::CodeGenModule &M) const

Determines the DWARF register number for the stack pointer, for exception-handling purposes.

virtual void emitTargetMetadata(CodeGen::CodeGenModule &CGM, const llvm::MapVector< GlobalDecl, StringRef > &MangledDeclNames) const

emitTargetMetadata - Provides a convenient hook to handle extra target-specific metadata for the give...

virtual void setTargetAtomicMetadata(CodeGenFunction &CGF, llvm::Instruction &AtomicInst, const AtomicExpr *Expr=nullptr) const

Allow the target to apply other metadata to an atomic instruction.

virtual llvm::Value * createEnqueuedBlockKernel(CodeGenFunction &CGF, llvm::Function *BlockInvokeFunc, llvm::Type *BlockTy) const

Create an OpenCL kernel for an enqueued block.

virtual llvm::Value * testFPKind(llvm::Value *V, unsigned BuiltinID, CGBuilderTy &Builder, CodeGenModule &CGM) const

Performs a target specific test of a floating point value for things like IsNaN, Infinity,...

virtual bool markARCOptimizedReturnCallsAsNoTail() const

Determine whether a call to objc_retainAutoreleasedReturnValue or objc_unsafeClaimAutoreleasedReturnV...

virtual void emitTargetGlobals(CodeGen::CodeGenModule &CGM) const

Provides a convenient hook to handle extra target-specific globals.

virtual ~TargetCodeGenInfo()

virtual void getDetectMismatchOption(llvm::StringRef Name, llvm::StringRef Value, llvm::SmallString< 32 > &Opt) const

Gets the linker options necessary to detect object file mismatches on this platform.

virtual llvm::Constant * getUBSanFunctionSignature(CodeGen::CodeGenModule &CGM) const

Return a constant used by UBSan as a signature to identify functions possessing type information,...

virtual bool shouldEmitStaticExternCAliases() const

virtual bool isNoProtoCallVariadic(const CodeGen::CallArgList &args, const FunctionNoProtoType *fnType) const

Determine whether a call to an unprototyped functions under the given calling convention should use t...

Decl - This represents one declaration (or definition), e.g.

This represents one expression.

Represents a function declaration or definition.

Represents a K&R-style 'int foo()' function, which has no information available about its arguments.

FunctionType - C99 6.7.5.3 - Function Declarators.

Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...

A (possibly-)qualified type.

Scope - A scope is a transient data structure that is used while parsing the program.

Encodes a location in the source.

The base class of the type hierarchy.

Represents a variable declaration or definition.

Defines the clang::TargetInfo interface.

std::unique_ptr< TargetCodeGenInfo > createARMTargetCodeGenInfo(CodeGenModule &CGM, ARMABIKind Kind)

std::unique_ptr< TargetCodeGenInfo > createM68kTargetCodeGenInfo(CodeGenModule &CGM)

@ Decl

The l-value was an access to a declared entity or something equivalently strong, like the address of ...

std::unique_ptr< TargetCodeGenInfo > createBPFTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createMSP430TargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createX86_64TargetCodeGenInfo(CodeGenModule &CGM, X86AVXABILevel AVXLevel)

std::unique_ptr< TargetCodeGenInfo > createWebAssemblyTargetCodeGenInfo(CodeGenModule &CGM, WebAssemblyABIKind K)

std::unique_ptr< TargetCodeGenInfo > createPPC64_SVR4_TargetCodeGenInfo(CodeGenModule &CGM, PPC64_SVR4_ABIKind Kind, bool SoftFloatABI)

std::unique_ptr< TargetCodeGenInfo > createMIPSTargetCodeGenInfo(CodeGenModule &CGM, bool IsOS32)

std::unique_ptr< TargetCodeGenInfo > createHexagonTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createNVPTXTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createSystemZTargetCodeGenInfo(CodeGenModule &CGM, bool HasVector, bool SoftFloatABI)

std::unique_ptr< TargetCodeGenInfo > createWinX86_32TargetCodeGenInfo(CodeGenModule &CGM, bool DarwinVectorABI, bool Win32StructABI, unsigned NumRegisterParameters)

std::unique_ptr< TargetCodeGenInfo > createAIXTargetCodeGenInfo(CodeGenModule &CGM, bool Is64Bit)

std::unique_ptr< TargetCodeGenInfo > createAMDGPUTargetCodeGenInfo(CodeGenModule &CGM)

X86AVXABILevel

The AVX ABI level for X86 targets.

std::unique_ptr< TargetCodeGenInfo > createTCETargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createWindowsARMTargetCodeGenInfo(CodeGenModule &CGM, ARMABIKind K)

std::unique_ptr< TargetCodeGenInfo > createAVRTargetCodeGenInfo(CodeGenModule &CGM, unsigned NPR, unsigned NRR)

std::unique_ptr< TargetCodeGenInfo > createDirectXTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createARCTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createDefaultTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createAArch64TargetCodeGenInfo(CodeGenModule &CGM, AArch64ABIKind Kind)

std::unique_ptr< TargetCodeGenInfo > createSPIRVTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createWindowsMIPSTargetCodeGenInfo(CodeGenModule &CGM, bool IsOS32)

std::unique_ptr< TargetCodeGenInfo > createSparcV8TargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createVETargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createCommonSPIRTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createRISCVTargetCodeGenInfo(CodeGenModule &CGM, unsigned XLen, unsigned FLen, bool EABI)

std::unique_ptr< TargetCodeGenInfo > createWindowsAArch64TargetCodeGenInfo(CodeGenModule &CGM, AArch64ABIKind K)

std::unique_ptr< TargetCodeGenInfo > createSparcV9TargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createPNaClTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createX86_32TargetCodeGenInfo(CodeGenModule &CGM, bool DarwinVectorABI, bool Win32StructABI, unsigned NumRegisterParameters, bool SoftFloatABI)

std::unique_ptr< TargetCodeGenInfo > createLanaiTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createPPC32TargetCodeGenInfo(CodeGenModule &CGM, bool SoftFloatABI)

std::unique_ptr< TargetCodeGenInfo > createLoongArchTargetCodeGenInfo(CodeGenModule &CGM, unsigned GRLen, unsigned FLen)

std::unique_ptr< TargetCodeGenInfo > createPPC64TargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createWinX86_64TargetCodeGenInfo(CodeGenModule &CGM, X86AVXABILevel AVXLevel)

std::unique_ptr< TargetCodeGenInfo > createXCoreTargetCodeGenInfo(CodeGenModule &CGM)

std::unique_ptr< TargetCodeGenInfo > createCSKYTargetCodeGenInfo(CodeGenModule &CGM, unsigned FLen)

The JSON file list parser is used to communicate input to InstallAPI.

LangAS

Defines the address space values used by the address space qualifier of QualType.

const FunctionProtoType * T

SyncScope

Defines synch scope values used internally by clang.

Diagnostic wrappers for TextAPI types for error reporting.

llvm::IntegerType * Int32Ty


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