Annotate some static locals as "library-local" v2016.11.07.00
authorAndrew Gallagher <andrewjcg@fb.com>
Mon, 7 Nov 2016 04:06:46 +0000 (20:06 -0800)
committerFacebook Github Bot <facebook-github-bot-bot@fb.com>
Mon, 7 Nov 2016 04:08:48 +0000 (20:08 -0800)
Summary:
This tags certain static locals, wich may get duplicated via dynamic
linking and inlining, as safe to have multiple copies at runtime,
making this subtle behavior explicit.

Reviewed By: igorsugak

Differential Revision: D4082929

fbshipit-source-id: ba4e23cb121e957a43f5659a1ca3432cb89cb8f3

folly/test/FBStringTestBenchmarks.cpp.h

index 632f7bd61fddde143f34b240e949a88f5bb48219..f353001eea4a79ec0eec825cd0da46b09829b25b 100644 (file)
@@ -60,7 +60,7 @@ void BENCHFUN(ctorFromArray)(size_t iters, size_t arg) {
 BENCHMARK_PARAM(BENCHFUN(ctorFromArray), 32768);
 
 void BENCHFUN(ctorFromTwoPointers)(size_t iters, size_t arg) {
-  static STRING s;
+  /* library-local */ static STRING s;
   BENCHMARK_SUSPEND {
     if (s.size() < arg) s.resize(arg);
   }