[llvm-commits] CVS: llvm-java/lib/ClassFile/ClassFile.cpp
Alkis Evlogimenos
alkis at cs.uiuc.edu
Wed Mar 23 17:04:40 PST 2005
Changes in directory llvm-java/lib/ClassFile:
ClassFile.cpp updated: 1.41 -> 1.42
---
Log message:
Add option to dump constant pool of a classfile.
---
Diffs of the changes: (+19 -10)
ClassFile.cpp | 29 +++++++++++++++++++----------
1 files changed, 19 insertions(+), 10 deletions(-)
Index: llvm-java/lib/ClassFile/ClassFile.cpp
diff -u llvm-java/lib/ClassFile/ClassFile.cpp:1.41 llvm-java/lib/ClassFile/ClassFile.cpp:1.42
--- llvm-java/lib/ClassFile/ClassFile.cpp:1.41 Sun Feb 13 16:15:31 2005
+++ llvm-java/lib/ClassFile/ClassFile.cpp Wed Mar 23 19:04:28 2005
@@ -426,7 +426,7 @@
std::ostream& ConstantClass::dump(std::ostream& os) const
{
- return os << *getName();
+ return os << "class (Name=" << nameIdx_ << ')';
}
ConstantMemberRef::ConstantMemberRef(const ClassFile* cf, std::istream& is)
@@ -437,9 +437,22 @@
}
-std::ostream& ConstantMemberRef::dump(std::ostream& os) const
+std::ostream& ConstantFieldRef::dump(std::ostream& os) const
{
- return os << *getNameAndType() << '(' << *getClass() << ')';
+ return os << "fieldRef (class=" << classIdx_
+ << ", nameAndType=" << nameAndTypeIdx_ << ')';
+}
+
+std::ostream& ConstantMethodRef::dump(std::ostream& os) const
+{
+ return os << "methodRef (class=" << classIdx_
+ << ", nameAndType=" << nameAndTypeIdx_ << ')';
+}
+
+std::ostream& ConstantInterfaceMethodRef::dump(std::ostream& os) const
+{
+ return os << "interfaceMethodRef (class=" << classIdx_
+ << ", nameAndType=" << nameAndTypeIdx_ << ')';
}
ConstantString::ConstantString(const ClassFile* cf, std::istream& is)
@@ -451,7 +464,7 @@
std::ostream& ConstantString::dump(std::ostream& os) const
{
- return os << "String " << *getValue();
+ return os << "string (utf8=" << stringIdx_ << ')';
}
ConstantInteger::ConstantInteger(const ClassFile* cf, std::istream& is)
@@ -512,12 +525,8 @@
std::ostream& ConstantNameAndType::dump(std::ostream& os) const
{
- if (getName()->str() == "<init>")
- os << "\"<init>\"";
- else
- os << *getName();
-
- return os << ':' << *getDescriptor();
+ return os << "nameAndType (name=" << nameIdx_
+ << ", descriptor=" << descriptorIdx_ << ')';
}
ConstantUtf8::ConstantUtf8(const ClassFile* cf, std::istream& is)
More information about the llvm-commits
mailing list