[PATCH] D27410: Always issue vtables when generating coverage instrumentation
Vedant Kumar via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Dec 19 11:27:44 PST 2016
vsk added inline comments.
================
Comment at: llvm/tools/clang/test/CodeGenCXX/vtable-coverage-gen.cpp:3
+// RUN: FileCheck %s < %t
+// CHECK: @_ZTV8Category = linkonce_odr unnamed_addr constant {{.*}}, comdat,
+
----------------
vsk wrote:
> ahatanak wrote:
> > I'm not sure I understood the purpose of this test, but It looks like the vtable for Category is generated in the IR with linkonce_odr without your patch.
> Yes, I'm seeing the same thing and am also confused. I can reproduce the build failure without using any vtables. To me this suggests the problem could be elsewhere. Here is a minimal reproducer:
>
> ```
> struct Base {
> static const Base *get();
> };
>
> struct Derived : public Base {};
>
> const Base *Base::get() {
> static Derived d;
> return &d;
> }
>
> int main() { return 0; }
> ```
^ Please ignore my last comment, I made a mistake while trying to compile your reproducer. When I used a proper compile command, I could not reproduce the build failure on Darwin/MachO (-fprofile-instr-generate -fcoverage-mapping).
https://reviews.llvm.org/D27410
More information about the cfe-commits
mailing list