[PATCH] D22666: Frontend: Fix mcount inlining bug
Honggyu Kim via cfe-commits
cfe-commits at lists.llvm.org
Fri Aug 5 17:33:07 PDT 2016
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
More information about the cfe-commits
mailing list