]> granicus.if.org Git - clang/commit
[codeview] Expose -gcodeview-ghash for global type hashing
authorReid Kleckner <rnk@google.com>
Fri, 16 Nov 2018 18:47:41 +0000 (18:47 +0000)
committerReid Kleckner <rnk@google.com>
Fri, 16 Nov 2018 18:47:41 +0000 (18:47 +0000)
commit9bb670a6fd5843d7cb9ba98460671c4d5f15f4ea
treef1a44ed8d3f58eee2196b09aef21181759707a46
parent3819766f40f1df6ceb43a63a3aaaa930659c1001
[codeview] Expose -gcodeview-ghash for global type hashing

Summary:
Experience has shown that the functionality is useful. It makes linking
optimized clang with debug info for me a lot faster, 20s to 13s. The
type merging phase of PDB writing goes from 10s to 3s.

This removes the LLVM cl::opt and replaces it with a metadata flag.

After this change, users can do the following to use ghash:
- add -gcodeview-ghash to compiler flags
- replace /DEBUG with /DEBUG:GHASH in linker flags

Reviewers: zturner, hans, thakis, takuto.ikuta

Subscribers: aprantl, hiraditya, JDevlieghere, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@347072 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Driver/Options.td
include/clang/Frontend/CodeGenOptions.def
lib/CodeGen/CodeGenModule.cpp
lib/Driver/ToolChains/Clang.cpp
lib/Frontend/CompilerInvocation.cpp
test/CodeGenCXX/debug-info-ms-abi.cpp