aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Bytecode
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Bytecode')
-rw-r--r--lib/Bytecode/Reader/ConstantReader.cpp8
-rw-r--r--lib/Bytecode/Writer/ConstantWriter.cpp4
2 files changed, 6 insertions, 6 deletions
diff --git a/lib/Bytecode/Reader/ConstantReader.cpp b/lib/Bytecode/Reader/ConstantReader.cpp
index e8cebcb..e9e578d 100644
--- a/lib/Bytecode/Reader/ConstantReader.cpp
+++ b/lib/Bytecode/Reader/ConstantReader.cpp
@@ -233,12 +233,12 @@ Constant *BytecodeParser::parseConstantValue(const unsigned char *&Buf,
case Type::StructTyID: {
const StructType *ST = cast<StructType>(Ty);
- const StructType::ElementTypes &ET = ST->getElementTypes();
std::vector<Constant *> Elements;
- Elements.reserve(ET.size());
- for (unsigned i = 0; i != ET.size(); ++i)
- Elements.push_back(getConstantValue(ET[i], read_vbr_uint(Buf, EndBuf)));
+ Elements.reserve(ST->getNumElements());
+ for (unsigned i = 0; i != ST->getNumElements(); ++i)
+ Elements.push_back(getConstantValue(ST->getElementType(i),
+ read_vbr_uint(Buf, EndBuf)));
return ConstantStruct::get(ST, Elements);
}
diff --git a/lib/Bytecode/Writer/ConstantWriter.cpp b/lib/Bytecode/Writer/ConstantWriter.cpp
index 6d49165..bb8d286 100644
--- a/lib/Bytecode/Writer/ConstantWriter.cpp
+++ b/lib/Bytecode/Writer/ConstantWriter.cpp
@@ -66,8 +66,8 @@ void BytecodeWriter::outputType(const Type *T) {
const StructType *ST = cast<StructType>(T);
// Output all of the element types...
- StructType::ElementTypes::const_iterator I = ST->getElementTypes().begin();
- for (; I != ST->getElementTypes().end(); ++I) {
+ for (StructType::element_iterator I = ST->element_begin(),
+ E = ST->element_end(); I != E; ++I) {
int Slot = Table.getSlot(*I);
assert(Slot != -1 && "Type used but not available!!");
output_vbr((unsigned)Slot, Out);