ArchSpec::SetTriple was taking a Platform as an argument, and used it to
fill in missing pieces of the specified triple. I invert the dependency
by moving this code to other classes. For this purpose, I've created
three new functions.
- HostInfo::GetAugmentedArchSpec: fills in the triple using the host platform (this used to be implemented by passing a null platform pointer). By putting this code in the Host module, we can provide a way to anyone who does not have a platform instance (lldb-server) an easy way to get Host data.
- Platform::GetAugmentedArchSpec: if you have a platform instance, you can call this to let it fill in the triple.
- static Platform::GetAugmentedArchSpec: implements the "if platform == 0 then use_host() else use_platform()" part.
After this change, it becomes possible to move the ArchSpec into the
Utility module, as it has no external dependencies.
s/contains/does/