Lines Matching refs:APValue
1 //===--- APValue.cpp - Union class for APFloat/APSInt/Complex -------------===//
10 // This file implements the APValue class.
14 #include "clang/AST/APValue.h"
28 llvm::PointerIntPair<APValue::LValueBase, 1, bool> BaseAndIsOnePastTheEnd;
35 struct APValue::LV : LVBase {
76 struct APValue::MemberPointerData : MemberPointerBase {
108 APValue::Arr::Arr(unsigned NumElts, unsigned Size) :
109 Elts(new APValue[NumElts + (NumElts != Size ? 1 : 0)]),
111 APValue::Arr::~Arr() { delete [] Elts; }
113 APValue::StructData::StructData(unsigned NumBases, unsigned NumFields) :
114 Elts(new APValue[NumBases+NumFields]),
116 APValue::StructData::~StructData() {
120 APValue::UnionData::UnionData() : Field(0), Value(new APValue) {}
121 APValue::UnionData::~UnionData () {
125 APValue::APValue(const APValue &RHS) : Kind(Uninitialized) {
189 void APValue::DestroyDataAndMakeUninit() {
215 void APValue::swap(APValue &RHS) {
223 void APValue::dump() const {
236 void APValue::dump(raw_ostream &OS) const {
306 llvm_unreachable("Unknown APValue kind!");
309 void APValue::printPretty(raw_ostream &Out, ASTContext &Ctx, QualType Ty) const{
311 case APValue::Uninitialized:
314 case APValue::Int:
320 case APValue::Float:
323 case APValue::Vector: {
334 case APValue::ComplexInt:
337 case APValue::ComplexFloat:
341 case APValue::LValue: {
432 case APValue::Array: {
451 case APValue::Struct: {
478 case APValue::Union:
486 case APValue::MemberPointer:
495 case APValue::AddrLabelDiff:
501 llvm_unreachable("Unknown APValue kind!");
504 std::string APValue::getAsString(ASTContext &Ctx, QualType Ty) const {
512 const APValue::LValueBase APValue::getLValueBase() const {
517 bool APValue::isLValueOnePastTheEnd() const {
522 CharUnits &APValue::getLValueOffset() {
527 bool APValue::hasLValuePath() const {
532 ArrayRef<APValue::LValuePathEntry> APValue::getLValuePath() const {
538 unsigned APValue::getLValueCallIndex() const {
543 void APValue::setLValue(LValueBase B, const CharUnits &O, NoLValuePath,
554 void APValue::setLValue(LValueBase B, const CharUnits &O,
567 const ValueDecl *APValue::getMemberPointerDecl() const {
573 bool APValue::isMemberPointerToDerivedMember() const {
579 ArrayRef<const CXXRecordDecl*> APValue::getMemberPointerPath() const {
585 void APValue::MakeLValue() {
592 void APValue::MakeArray(unsigned InitElts, unsigned Size) {
598 void APValue::MakeMemberPointer(const ValueDecl *Member, bool IsDerivedMember,