1 #ifndef BOOST_SMART_PTR_DETAIL_QUICK_ALLOCATOR_HPP_INCLUDED
2 #define BOOST_SMART_PTR_DETAIL_QUICK_ALLOCATOR_HPP_INCLUDED
6 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
36 template<
unsigned size,
unsigned align_>
union freeblock
63 #if defined(BOOST_QA_PAGE_SIZE)
73 #ifdef BOOST_HAS_THREADS
82 static lightweight_mutex * mutex_init;
92 #ifdef BOOST_HAS_THREADS
114 static inline void *
alloc(std::size_t n)
118 return ::operator
new(n);
122 #ifdef BOOST_HAS_THREADS
147 #ifdef BOOST_HAS_THREADS
156 static inline void dealloc(
void * pv, std::size_t n)
160 ::operator
delete(pv);
164 #ifdef BOOST_HAS_THREADS
174 #ifdef BOOST_HAS_THREADS
176 template<
unsigned size,
unsigned align_>
177 lightweight_mutex * allocator_impl<size, align_>::mutex_init = &allocator_impl<size, align_>::mutex();
181 template<
unsigned size,
unsigned align_>
184 template<
unsigned size,
unsigned align_>
187 template<
unsigned size,
unsigned align_>
199 #endif // #ifndef BOOST_SMART_PTR_DETAIL_QUICK_ALLOCATOR_HPP_INCLUDED