DebugInfo: Move DIExpression bit-piece API to MDExpression

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234286 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Duncan P. N. Exon Smith
2015-04-07 03:49:59 +00:00
parent fb2e97e4aa
commit c6ac80b701
4 changed files with 30 additions and 25 deletions

View File

@ -445,6 +445,24 @@ bool MDExpression::isValid() const {
return true;
}
bool MDExpression::isBitPiece() const {
assert(isValid() && "Expected valid expression");
if (unsigned N = getNumElements())
if (N >= 3)
return getElement(N - 3) == dwarf::DW_OP_bit_piece;
return false;
}
uint64_t MDExpression::getBitPieceOffset() const {
assert(isBitPiece() && "Expected bit piece");
return getElement(getNumElements() - 2);
}
uint64_t MDExpression::getBitPieceSize() const {
assert(isBitPiece() && "Expected bit piece");
return getElement(getNumElements() - 1);
}
MDObjCProperty *MDObjCProperty::getImpl(
LLVMContext &Context, MDString *Name, Metadata *File, unsigned Line,
MDString *GetterName, MDString *SetterName, unsigned Attributes,