[LLVMbugs] [Bug 889] NEW: Eliminate Virtual Methods In VMCore To Make Value Objects Smaller

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Sat Aug 26 21:12:46 PDT 2006


http://llvm.org/bugs/show_bug.cgi?id=889

           Summary: Eliminate Virtual Methods In VMCore To Make Value
                    Objects Smaller
           Product: libraries
           Version: 1.0
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Core LLVM classes
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: rspencer at x10sys.com


After PR792 is fixed, the "print" and "dump" methods will be removed from the
Value class. This will leave only the destructor as the only virtual method. The
destruction hierarchy could be done using the isa<Class> facility. Something like:

Value::~Value() {
  switch (ValKind) {
    case Constant: Constant::destroythis((Constant*)this);
    ...
}

This has the potential to shrink all VMCore Value objects by 4 bytes (32-bit
platform) or 8 bytes (64-bit platform) by removal of the virtual table pointer
from the objects.



------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



More information about the llvm-bugs mailing list