excise AccessSpreader extern-template-struct
Summary:
There appear always to be problems with `extern template struct`. In this case, some compilers either not emitting or dropping thread-local wrapper functions.
```
stderr: Undefined symbols for architecture x86_64:
"thread-local wrapper routine for folly::AccessSpreader<std::__1::atomic>::cpuCache", referenced from:
folly::AccessSpreader<std::__1::atomic>::cachedCurrent(unsigned long) in CacheLocality.cpp.o
"thread-local wrapper routine for folly::SequentialThreadId<std::__1::atomic>::currentId", referenced from:
folly::SequentialThreadId<std::__1::atomic>::get() in CacheLocality.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
```
Reviewed By: Mizuchi
Differential Revision: D27579816
fbshipit-source-id: b539816fb1f62d9e50e22d6cbc3c91a0d82ac629
Showing
Please register or sign in to comment