This is an archive of the discontinued LLVM Phabricator instance.

Move FileAction, ProcessInfo and ProcessLaunchInfo from Target to Host
ClosedPublic

Authored by labath on Jan 11 2019, 8:08 AM.

Details

Summary

These classes describe the details of the process we are about to
launch, and so they are naturally used by the launching code in the Host
module. Previously they were present in Target because that is the most
important (but by far not the only) user of the launching code.

Since the launching code has other customers, must of which do not care
about Targets, it makes sense to move these classes to the Host layer,
next to the launching code.

This move reduces the number of times that Target is included from host
to 8 (it used to be 14).

Diff Detail

Repository
rL LLVM

Event Timeline

labath created this revision.Jan 11 2019, 8:08 AM
zturner accepted this revision.Jan 29 2019, 1:20 PM

Seems I had forgotten about this. It looks pretty good to me, and I'm glad we're very close to breaking this dependency.

This revision is now accepted and ready to land.Jan 29 2019, 1:20 PM
labath added a comment.Feb 4 2019, 6:26 AM

Yep, I have only one or two more of these to do and then the only source of circular dependencies will be Host/$OS/Symbols.cpp. That one is going to be tricky, but I have some ideas how to solve that. I'll send an email about that once I'm ready.

This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptFeb 4 2019, 6:28 AM
lldb/trunk/source/Target/ProcessInfo.cpp