[llvm] r308235 - [PDB] Merge in types and items from type servers (/Zi)
Reid Kleckner via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 17 17:21:25 PDT 2017
Author: rnk
Date: Mon Jul 17 17:21:25 2017
New Revision: 308235
URL: http://llvm.org/viewvc/llvm-project?rev=308235&view=rev
Log:
[PDB] Merge in types and items from type servers (/Zi)
Summary:
Object files compiled with /Zi emit type information into a type server
PDB. The .debug$S section will contain a single TypeServer2Record with
the absolute path and GUID of the type server. LLD needs to load the
type server PDB and merge all types and items it finds in it into the
destination PDB.
Depends on D35495
Reviewers: ruiu, inglorion
Subscribers: zturner, llvm-commits
Differential Revision: https://reviews.llvm.org/D35504
Modified:
llvm/trunk/include/llvm/DebugInfo/CodeView/GUID.h
Modified: llvm/trunk/include/llvm/DebugInfo/CodeView/GUID.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/CodeView/GUID.h?rev=308235&r1=308234&r2=308235&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/CodeView/GUID.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/CodeView/GUID.h Mon Jul 17 17:21:25 2017
@@ -27,6 +27,26 @@ inline bool operator==(const GUID &LHS,
return 0 == ::memcmp(LHS.Guid, RHS.Guid, sizeof(LHS.Guid));
}
+inline bool operator<(const GUID &LHS, const GUID &RHS) {
+ return ::memcmp(LHS.Guid, RHS.Guid, sizeof(LHS.Guid)) < 0;
+}
+
+inline bool operator<=(const GUID &LHS, const GUID &RHS) {
+ return ::memcmp(LHS.Guid, RHS.Guid, sizeof(LHS.Guid)) <= 0;
+}
+
+inline bool operator>(const GUID &LHS, const GUID &RHS) {
+ return !(LHS <= RHS);
+}
+
+inline bool operator>=(const GUID &LHS, const GUID &RHS) {
+ return !(LHS < RHS);
+}
+
+inline bool operator!=(const GUID &LHS, const GUID &RHS) {
+ return !(LHS == RHS);
+}
+
raw_ostream &operator<<(raw_ostream &OS, const GUID &Guid);
} // namespace codeview
More information about the llvm-commits
mailing list