This is an archive of the discontinued LLVM Phabricator instance.

Refactor LLDB's Windows process plugin (NFC)
ClosedPublic

Authored by amccarth on Nov 22 2016, 3:53 PM.

Details

Reviewers
zturner
labath
Summary

The Windows process plugin was broken up into multiple pieces a while back in order to share code between debugging live processes and minidumps (postmortem) debugging. The minidump portion was replaced by a cross-platform solution. This left the plugin split into a formerly "common" base classes and the derived classes for live debugging. This extra layer made the code harder to understand and work with.

This patch simplifies these class hierarchies by rolling the live debugging concrete classes up to the base classes. Last week I posted my intent to make this change to lldb-dev, and I didn't hear any objections.

This involved moving code and changing references to classes like ProcessWindowsLive to ProcessWindows. It still builds for both 32- and 64-bit, and the tests still pass on 32-bit. (Tests on 64-bit weren't passing before this refactor for unrelated reasons.) I don't expect a thorough review; I'm posting this as a sanity check.

A subsequent patch will eliminate the unnecessary "Common" subdirectory.

Diff Detail

Event Timeline

amccarth updated this revision to Diff 78968.Nov 22 2016, 3:53 PM
amccarth retitled this revision from to Refactor LLDB's Windows process plugin (NFC).
amccarth updated this object.
amccarth added reviewers: zturner, labath.
amccarth added a subscriber: lldb-commits.
labath accepted this revision.Nov 23 2016, 8:32 AM
labath edited edge metadata.

seems reasonable.

This revision is now accepted and ready to land.Nov 23 2016, 8:32 AM
amccarth closed this revision.Mar 14 2017, 4:41 PM

Committed in r287770.

source/Plugins/Process/Windows/MiniDump/x64/RegisterContextWindowsMiniDump_x64.h