[PATCH] D22666: Frontend: Fix mcount inlining bug

Honggyu Kim via cfe-commits cfe-commits at lists.llvm.org
Thu Aug 11 02:15:16 PDT 2016

honggyu.kim added a comment.

In https://reviews.llvm.org/D22666#509904, @compnerd wrote:

> Theres a frontend mangler and a backend mangler.  You should try this on Windows GNU environments :-).

Thanks for the confirmation :)
If so, would it be okay if I put one more backslash for each mcount name with '\0' prefix? It shows the output properly with '\0' in IR generation. For example,

  @@ -4920,7 +4920,7 @@ public:
       if (Triple.getOS() == llvm::Triple::Linux ||
           Triple.getOS() == llvm::Triple::UnknownOS)
         this->MCountName =
  -          Opts.EABIVersion == "gnu" ? "\01__gnu_mcount_nc" : "\01mcount";
  +          Opts.EABIVersion == "gnu" ? "\\01__gnu_mcount_nc" : "\\01mcount";
     StringRef getABI() const override { return ABI; }

`test-mcount.c` test above can be passed with this modification.


More information about the cfe-commits mailing list