Skip to content
  • Jakob Stoklund Olesen's avatar
    Don't call destructors on MachineInstr and MachineOperand. · dc5285f1
    Jakob Stoklund Olesen authored
    The series of patches leading up to this one makes llc -O0 run 8% faster.
    
    When deallocating a MachineFunction, there is no need to visit all
    MachineInstr and MachineOperand objects to deallocate them. All their
    memory come from a BumpPtrAllocator that is about to be purged, and they
    have empty destructors anyway.
    
    This only applies when deallocating the MachineFunction.
    DeleteMachineInstr() should still be used to recycle MI memory during
    the codegen passes.
    
    Remove the LeakDetector support for MachineInstr. I've never seen it
    used before, and now it definitely doesn't work. With this patch, leaked
    MachineInstrs would be much less of a problem since all of their memory
    will be reclaimed by ~MachineFunction().
    
    llvm-svn: 171599
    dc5285f1
Loading