diff options
author | Daniel Dunbar <daniel@zuster.org> | 2010-03-25 01:03:24 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2010-03-25 01:03:24 +0000 |
commit | 7c3d45a03e64ac1b5b2ecdb7153989fd7cebfd2c (patch) | |
tree | d275ab0f475a75a7fbee115915851ba82dbcb205 /lib/MC | |
parent | e9cfd685f5916a45e7cd36e51191cec16b02189d (diff) |
MC: Eliminate MC{Fragment,{Section,Symbol}Data}::getAddress.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99467 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC')
-rw-r--r-- | lib/MC/MCAssembler.cpp | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/lib/MC/MCAssembler.cpp b/lib/MC/MCAssembler.cpp index 4a5db8ce22..3fac6c8334 100644 --- a/lib/MC/MCAssembler.cpp +++ b/lib/MC/MCAssembler.cpp @@ -46,19 +46,22 @@ STATISTIC(ObjectBytes, "Number of emitted object file bytes"); /* *** */ uint64_t MCAsmLayout::getFragmentAddress(const MCFragment *F) const { - return F->getAddress(); + assert(F->getParent() && "Missing section()!"); + return getSectionAddress(F->getParent()) + F->getOffset(); } uint64_t MCAsmLayout::getSymbolAddress(const MCSymbolData *SD) const { - return SD->getAddress(); + assert(SD->getFragment() && "Invalid getAddress() on undefined symbol!"); + return getFragmentAddress(SD->getFragment()) + SD->getOffset(); } uint64_t MCAsmLayout::getSectionAddress(const MCSectionData *SD) const { - return SD->getAddress(); + assert(SD->Address != ~UINT64_C(0) && "Address not set!"); + return SD->Address; } void MCAsmLayout::setSectionAddress(MCSectionData *SD, uint64_t Value) { - SD->setAddress(Value); + SD->Address = Value; } /* *** */ @@ -78,11 +81,6 @@ MCFragment::MCFragment(FragmentType _Kind, MCSectionData *_Parent) MCFragment::~MCFragment() { } -uint64_t MCFragment::getAddress() const { - assert(getParent() && "Missing Section!"); - return getParent()->getAddress() + Offset; -} - /* *** */ MCSectionData::MCSectionData() : Section(0) {} |