clang
6.0.0
|
LValue - This represents an lvalue references. More...
#include "/work/www-prereleases/6.0.0/rc2/docsbuild/llvm.src/tools/clang/lib/CodeGen/CGValue.h"
Static Public Member Functions | |
static LValue | MakeAddr (Address address, QualType type, ASTContext &Context, LValueBaseInfo BaseInfo, TBAAAccessInfo TBAAInfo) |
static LValue | MakeVectorElt (Address vecAddress, llvm::Value *Idx, QualType type, LValueBaseInfo BaseInfo, TBAAAccessInfo TBAAInfo) |
static LValue | MakeExtVectorElt (Address vecAddress, llvm::Constant *Elts, QualType type, LValueBaseInfo BaseInfo, TBAAAccessInfo TBAAInfo) |
static LValue | MakeBitfield (Address Addr, const CGBitFieldInfo &Info, QualType type, LValueBaseInfo BaseInfo, TBAAAccessInfo TBAAInfo) |
Create a new object to represent a bit-field access. More... | |
static LValue | MakeGlobalReg (Address Reg, QualType type) |
LValue - This represents an lvalue references.
Because C/C++ allow bitfields, this is not a simple LLVM pointer, it may be a pointer plus a bitrange.
|
inline |
Definition at line 428 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::convertTempToRValue(), and clang::CodeGen::CodeGenFunction::EmitRValueForField().
|
inline |
Definition at line 324 of file CGValue.h.
Referenced by AddVariableConstraints(), drillIntoBlockVariable(), clang::CodeGen::CodeGenFunction::EmitARCStoreStrong(), clang::CodeGen::CodeGenFunction::EmitAtomicCompareExchange(), clang::CodeGen::CodeGenFunction::EmitAtomicLoad(), clang::CodeGen::CodeGenFunction::EmitAtomicStore(), emitCombinerOrInitializer(), clang::CodeGen::CodeGenFunction::EmitConstructorBody(), clang::CodeGen::CodeGenFunction::EmitCXXMemberOrOperatorMemberCallExpr(), clang::CodeGen::ReductionCodeGen::emitInitialization(), clang::CodeGen::CodeGenFunction::EmitInitializerForField(), clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfReference(), clang::CodeGen::CodeGenFunction::EmitLoadOfScalar(), clang::CodeGen::CodeGenFunction::EmitLValueForField(), clang::CodeGen::CodeGenFunction::EmitLValueForFieldInitialization(), EmitMemberInitializer(), emitOMPArraySectionBase(), clang::CodeGen::CodeGenFunction::EmitOMPDistributeLoop(), clang::CodeGen::CodeGenFunction::EmitOMPReductionClauseInit(), clang::CodeGen::CodeGenFunction::EmitOMPWorksharingLoop(), clang::CodeGen::CodeGenFunction::EmitParmDecl(), emitPrivatesInit(), emitProxyTaskFunction(), emitReduceFiniFunction(), clang::CodeGen::CodeGenFunction::EmitScalarInit(), clang::CodeGen::CodeGenFunction::EmitStoreOfScalar(), clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue(), emitWriteback(), emitWritebackArg(), findPeephole(), forConstantArrayExpansion(), clang::CodeGen::AggValueSlot::forLValue(), clang::CodeGen::CodeGenFunction::generateObjCGetterBody(), clang::CodeGen::CodeGenFunction::GenerateObjCSetter(), loadToBegin(), rewriteInputConstraintReferences(), clang::CodeGen::CodeGenFunction::StartFunction(), tryEmitARCCopyWeakInit(), and tryEmitARCRetainLoadOfScalar().
|
inline |
Definition at line 311 of file CGValue.h.
References clang::Qualifiers::getAddressSpace().
|
inline |
Definition at line 313 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitARCStoreStrong(), emitReduceFiniFunction(), and isFullSizeType().
|
inline |
Definition at line 316 of file CGValue.h.
Referenced by EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfScalar(), clang::CodeGen::CodeGenFunction::EmitLValueForField(), clang::CodeGen::CodeGenFunction::EmitLValueForFieldInitialization(), emitOMPArraySectionBase(), clang::CodeGen::CodeGenFunction::EmitStoreOfScalar(), and loadToBegin().
|
inline |
Definition at line 302 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 352 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitConstructorBody(), clang::CodeGen::CodeGenFunction::EmitLoadOfBitfieldLValue(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughBitfieldLValue().
|
inline |
Definition at line 356 of file CGValue.h.
Referenced by EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfBitfieldLValue(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughBitfieldLValue().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 362 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitLoadOfGlobalRegLValue(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughGlobalRegLValue().
|
inline |
Definition at line 263 of file CGValue.h.
References clang::Qualifiers::getObjCLifetime().
Referenced by clang::CodeGen::CodeGenFunction::EmitScalarInit(), emitWriteback(), and emitWritebackArg().
|
inline |
Definition at line 320 of file CGValue.h.
Referenced by AddVariableConstraints(), clang::CodeGen::ReductionCodeGen::adjustPrivateAddress(), emitCPPObjectAtomicSetterCall(), emitPrivatesInit(), emitProxyTaskFunction(), emitReduceFiniFunction(), clang::CodeGen::CodeGenFunction::EmitRValueForField(), emitStructSetterCall(), and isFullSizeType().
|
inline |
Definition at line 308 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), clang::CodeGen::CodeGenFunction::EmitLValueForField(), clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue(), clang::CodeGen::AggValueSlot::forLValue(), and clang::CodeGen::CodeGenFunction::generateObjCGetterBody().
|
inline |
|
inline |
Definition at line 305 of file CGValue.h.
Referenced by EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfReference(), clang::CodeGen::CodeGenFunction::EmitLoadOfScalar(), clang::CodeGen::CodeGenFunction::EmitLValueForField(), emitPrivatesInit(), clang::CodeGen::CodeGenFunction::EmitStoreOfScalar(), and clang::CodeGen::CodeGenModule::getTBAAInfoForSubobject().
|
inline |
Definition at line 261 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitARCStoreStrong(), clang::CodeGen::CodeGenFunction::EmitAtomicLoad(), clang::CodeGen::CodeGenFunction::EmitAtomicStore(), EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitExtVectorElementLValue(), clang::CodeGen::ReductionCodeGen::emitInitialization(), clang::CodeGen::CodeGenFunction::EmitLoadOfBitfieldLValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfExtVectorElementLValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfGlobalRegLValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfReference(), clang::CodeGen::CodeGenFunction::EmitLoadOfReferenceLValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfScalar(), clang::CodeGen::CodeGenFunction::EmitLValueForField(), clang::CodeGen::CodeGenFunction::EmitNullabilityCheck(), clang::CodeGen::CodeGenFunction::emitOMPSimpleStore(), emitPrivatesInit(), emitReduceFiniFunction(), clang::CodeGen::CodeGenFunction::EmitScalarInit(), clang::CodeGen::CodeGenFunction::EmitStoreOfScalar(), clang::CodeGen::CodeGenFunction::EmitStoreThroughBitfieldLValue(), clang::CodeGen::CodeGenFunction::EmitStoreThroughExtVectorComponentLValue(), clang::CodeGen::CodeGenFunction::EmitStoreThroughGlobalRegLValue(), clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue(), isBlockVarRef(), isSimpleZero(), loadToBegin(), clang::CodeGen::CodeGenFunction::LValueIsSuitableForInlineAtomic(), and rewriteInputConstraintReferences().
|
inline |
Definition at line 332 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 336 of file CGValue.h.
Referenced by EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
|
inline |
Definition at line 257 of file CGValue.h.
References clang::Qualifiers::getCVRQualifiers().
Referenced by clang::CodeGen::CodeGenFunction::EmitLValueForField().
|
inline |
Definition at line 282 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitARCStoreStrong(), and emitWriteback().
|
inline |
Definition at line 251 of file CGValue.h.
Referenced by EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitConstructorBody(), clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 252 of file CGValue.h.
Referenced by EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 276 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 253 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), emitSimpleAtomicStore(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 273 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 288 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitLoadOfScalar(), and clang::CodeGen::CodeGenFunction::EmitStoreOfScalar().
|
inline |
Definition at line 267 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 294 of file CGValue.h.
References clang::Qualifiers::getObjCGCAttr().
Referenced by EmitDeclInit(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 291 of file CGValue.h.
References clang::Qualifiers::getObjCGCAttr().
Referenced by EmitDeclInit(), clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 256 of file CGValue.h.
References clang::Qualifiers::hasRestrict().
|
inline |
Definition at line 249 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitAtomicLoad(), clang::CodeGen::CodeGenFunction::EmitAtomicStore(), EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitInitializerForField(), clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue(), findPeephole(), forConstantArrayExpansion(), and isFullSizeType().
|
inline |
Definition at line 279 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 250 of file CGValue.h.
Referenced by EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), and clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue().
|
inline |
Definition at line 298 of file CGValue.h.
References clang::Qualifiers::hasVolatile().
Referenced by clang::CodeGen::CodeGenFunction::EmitLoadOfReference(), clang::CodeGen::CodeGenFunction::EmitLoadOfScalar(), emitSimpleAtomicStore(), clang::CodeGen::CodeGenFunction::EmitStoreOfScalar(), and clang::CodeGen::CodeGenFunction::LValueIsSuitableForInlineAtomic().
|
inline |
Definition at line 255 of file CGValue.h.
References clang::Qualifiers::hasVolatile().
Referenced by clang::CodeGen::CodeGenFunction::EmitAtomicLoad(), clang::CodeGen::CodeGenFunction::EmitAtomicStore(), clang::CodeGen::CodeGenFunction::EmitLoadOfBitfieldLValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfExtVectorElementLValue(), clang::CodeGen::CodeGenFunction::EmitLoadOfLValue(), EmitMemberInitializer(), clang::CodeGen::CodeGenFunction::EmitStoreThroughBitfieldLValue(), clang::CodeGen::CodeGenFunction::EmitStoreThroughExtVectorComponentLValue(), clang::CodeGen::CodeGenFunction::EmitStoreThroughLValue(), and GetIntrinsic().
|
inlinestatic |
Definition at line 364 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitLoadOfScalar(), clang::CodeGen::CodeGenFunction::EmitStoreOfScalar(), and clang::CodeGen::CodeGenFunction::MakeNaturalAlignAddrLValue().
|
inlinestatic |
Create a new object to represent a bit-field access.
Addr | - The base address of the bit-field sequence this bit-field refers to. |
Info | - The information describing how to perform the bit-field access. |
Definition at line 407 of file CGValue.h.
References BitFieldInfo, clang::CodeGen::Address::getAlignment(), clang::CodeGen::Address::getPointer(), and clang::QualType::getQualifiers().
Referenced by EmitAtomicUpdateValue(), clang::CodeGen::CodeGenFunction::EmitLValueForField(), and clang::CodeGen::CGObjCRuntime::EmitValueForIvarAtOffset().
|
inlinestatic |
Definition at line 389 of file CGValue.h.
References clang::CodeGen::Address::getAlignment(), clang::CodeGen::Address::getPointer(), clang::QualType::getQualifiers(), and VectorElts.
Referenced by EmitAtomicUpdateValue().
Definition at line 419 of file CGValue.h.
References clang::CodeGen::Address::getAlignment(), clang::CodeGen::Address::getPointer(), and clang::QualType::getQualifiers().
|
inlinestatic |
Definition at line 377 of file CGValue.h.
References clang::CodeGen::Address::getAlignment(), clang::CodeGen::Address::getPointer(), clang::QualType::getQualifiers(), and VectorIdx.
Referenced by EmitAtomicUpdateValue().
|
inline |
Definition at line 325 of file CGValue.h.
References clang::CodeGen::Address::getAlignment(), clang::CodeGen::Address::getPointer(), and clang::CharUnits::getQuantity().
Referenced by drillIntoBlockVariable(), clang::CodeGen::CodeGenFunction::EmitScalarInit(), and rewriteInputConstraintReferences().
|
inline |
Definition at line 314 of file CGValue.h.
References clang::CharUnits::getQuantity().
|
inline |
Definition at line 285 of file CGValue.h.
References clang::CodeGen::ARCImpreciseLifetime.
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 274 of file CGValue.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitAutoVarInit().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
const CGBitFieldInfo* clang::CodeGen::LValue::BitFieldInfo |
Definition at line 186 of file CGValue.h.
Referenced by MakeBitfield().
llvm::Constant* clang::CodeGen::LValue::VectorElts |
Definition at line 183 of file CGValue.h.
Referenced by MakeExtVectorElt().
llvm::Value* clang::CodeGen::LValue::VectorIdx |
Definition at line 180 of file CGValue.h.
Referenced by MakeVectorElt().