summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-10-16 18:26:16 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-10-16 18:26:16 +0000
commit49978e61250a7229ad1040b002a609858f158584 (patch)
tree7dd3b8091d247aa545a73e16fcc6f22b7d559a00 /include
parent2906b519d1f47f1b269ed1be9c70f752b3dca928 (diff)
downloadllvm-49978e61250a7229ad1040b002a609858f158584.tar.gz
llvm-49978e61250a7229ad1040b002a609858f158584.tar.bz2
llvm-49978e61250a7229ad1040b002a609858f158584.tar.xz
Fix MCDataAtom never calling remap when adding data.
This patch fixes a small mistake in MCDataAtom::addData() where it doesn't ever call remap(): - if (Data.size() > Begin - End - 1) + if (Data.size() > End + 1 - Begin) remap(Begin, End + 1); This is currently not visible because of another bug is the disassembler, so the patch includes a unit test. Patch by Stephen Checkoway. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192823 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/MC/MCAtom.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/llvm/MC/MCAtom.h b/include/llvm/MC/MCAtom.h
index 686f8e1158..4758588ac3 100644
--- a/include/llvm/MC/MCAtom.h
+++ b/include/llvm/MC/MCAtom.h
@@ -188,7 +188,9 @@ private:
friend class MCModule;
// Private constructor - only callable by MCModule
MCDataAtom(MCModule *P, uint64_t Begin, uint64_t End)
- : MCAtom(DataAtom, P, Begin, End), Data(End - Begin) {}
+ : MCAtom(DataAtom, P, Begin, End) {
+ Data.reserve(End + 1 - Begin);
+ }
};
}