Kill FOLLY_ALIGNED etc
authorYedidya Feldblum <yfeldblum@fb.com>
Wed, 20 Dec 2017 19:41:29 +0000 (11:41 -0800)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Wed, 20 Dec 2017 20:02:09 +0000 (12:02 -0800)
commit8091d7199edecafa678d009b82f04c36dd8ce9a7
tree89a8ec660ce6c0718c6864748364c3b1ede0c373
parent1166fe0e3deb1548ef173f8952fc8fd7225ee8fd
Kill FOLLY_ALIGNED etc

Summary:
[Folly] Kill `FOLLY_ALIGNED` etc.

`alignas` is standardized as of C++11. Let us just use that.

Replace:
* `FOLLY_ALIGNED` with `alignas`
* `FOLLY_ALIGNED_MAX` with `alignas(folly::max_align_v)`
* `FOLLY_ALIGN_TO_AVOID_FALSE_SHARING` with `alignas(folly::hardware_destructive_interference_size)`

Because where `alignas` may be placed is more restrictive than where attributes may be placed, we also need to move these directives in some cases on top of doing the replacement.

Reviewed By: Orvid

Differential Revision: D6555167

fbshipit-source-id: 4b05b570bace3f8c0fe810b6dd58781dd45757f4
16 files changed:
folly/Conv.cpp
folly/Conv.h
folly/IndexedMemPool.h
folly/MPMCQueue.h
folly/Portability.h
folly/ProducerConsumerQueue.h
folly/SharedMutex.h
folly/TokenBucket.h
folly/concurrency/CacheLocality.h
folly/concurrency/UnboundedQueue.h
folly/concurrency/detail/ConcurrentHashMap-detail.h
folly/executors/IOThreadPoolExecutor.h
folly/executors/ThreadPoolExecutor.h
folly/experimental/flat_combining/FlatCombining.h
folly/experimental/flat_combining/test/FlatCombiningExamples.h
folly/experimental/hazptr/hazptr-impl.h