Fix StaticTracepoint argument size type identification
Summary: We need to determine the size of the Tracepoint arguments in the Macro. The only exception that we can not simply take `sizeof` is arrays, where `sizeof` will return size of the array where we really want is size of a pointer. Before we specifically check this with `FOLLY_SDT_ISARRAY` which checks if `__builtin_classify_type` of the argument is 14. However in recent update of LLVM, some arrays will be reported with type 5 (pointer type). Originally we didn't add that because we thought if the type of the argument is already a pointer then just take a `sizeof` on it would still be correct. This Diff fixes the issue. LLVM change in question is https://reviews.llvm.org/rL333126 Reviewed By: taewookoh Differential Revision: D10453657 fbshipit-source-id: 154fdfc78fe6438cd66cf256203c8d174773c1a8
Showing
Please register or sign in to comment