honggyu.kim added a comment.

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

> The `\01` is to prevent the mangler from touching the function name.  If you 
> noticed the check tags in the quoted test, some targets expect it to be 
> decorated and others do not.  What exactly do you mean that `lit` has a 
> strings matching with `\01`?  Its not a string `\01`, its the octal character 
> 1.


Thanks for the explanation.  I mean the following statement is not properly 
matched by llvm-lit even if frontend generate mcount name as 
"\01__gnu_mcount_nc".

  // CHECK-ARM-EABI-MEABI-GNU: attributes #{{[0-9]+}} = { 
{{.*}}"counting-function"="\01__gnu_mcount_nc"{{.*}} }

If I remove '\01' prefix in frontend then generate just "__gnu_mcount_nc", the  
following statement that also doesn't have '\01' prefix is matched without 
problem.

  // CHECK-ARM-EABI-MEABI-GNU: attributes #{{[0-9]+}} = { 
{{.*}}"counting-function"="__gnu_mcount_nc"{{.*}} }

Do you have any idea why this problem happens?


https://reviews.llvm.org/D22666



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to