[Utility] Remove Triple{Environment,OS,Vendor}IsUnspecifiedUnknown from ArchSpec
authorAlex Langford <apl@fb.com>
Tue, 26 Feb 2019 23:50:19 +0000 (23:50 +0000)
committerAlex Langford <apl@fb.com>
Tue, 26 Feb 2019 23:50:19 +0000 (23:50 +0000)
commitbee015efb5ff0864884f7a17cb79373808e1958f
tree80966f9381dda482840b4765d86cb9b6f0b2209a
parent27f79151ec89048103b0427f20b6e4e927718216
[Utility] Remove Triple{Environment,OS,Vendor}IsUnspecifiedUnknown from ArchSpec

Summary:
These functions should always return the opposite of the
`Triple{Environment,OS,Vendor}WasSpecified` functions. Unspecified unknown is
the same as unspecified, which is why one set of functions should give us what
we want. It's possible to have specified unknown, which is why we can't just
rely on checking the enum values of vendor/os/environment. We must also ensure
that the names of these are empty and not "unknown".

Differential Revision: https://reviews.llvm.org/D58653

llvm-svn: 354933
lldb/include/lldb/Utility/ArchSpec.h
lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
lldb/source/Utility/ArchSpec.cpp
lldb/unittests/Utility/ArchSpecTest.cpp