bmdef.h File Reference

#include <cassert>
Include dependency graph for bmdef.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define BM_x86
#define BM_ASSERT   assert
#define FULL_BLOCK_ADDR   bm::all_set<true>::_block._p
#define IS_VALID_ADDR(addr)   (addr && (addr != FULL_BLOCK_ADDR))
#define IS_FULL_BLOCK(addr)   (addr == FULL_BLOCK_ADDR)
#define IS_EMPTY_BLOCK(addr)   (addr == 0)
#define BMPTR_SETBIT0(ptr)   ( ((bm::id64_t)ptr) | 1 )
#define BMPTR_CLEARBIT0(ptr)   ( ((bm::id64_t)ptr) & ~(bm::id64_t)1 )
#define BMPTR_TESTBIT0(ptr)   ( ((bm::id64_t)ptr) & 1 )
#define BMGAP_PTR(ptr)   ((bm::gap_word_t*)BMPTR_CLEARBIT0(ptr))
#define BMSET_PTRGAP(ptr)   ptr = (bm::word_t*)BMPTR_SETBIT0(ptr)
#define BM_IS_GAP(ptr)   ( BMPTR_TESTBIT0(ptr)!=0 )
#define BMFORCEINLINE   inline
#define BM_SET_MMX_GUARD   sse_empty_guard bm_mmx_guard_;
#define BM_ALIGN16ATTR   __attribute__((aligned(16)))
#define BM_INCWORD_BITCOUNT(cnt, w)   cnt += _mm_popcnt_u32(w);

Define Documentation

#define BM_ALIGN16ATTR   __attribute__((aligned(16)))
#define BM_ASSERT   assert

Definition at line 50 of file bmdef.h.

Referenced by bm::mem_alloc< BA, PA >::alloc_gap_block(), bm::bit_block_any_range(), bm::bit_block_calc_count(), bm::bit_block_calc_count_change(), bm::bit_block_calc_count_range(), bm::bit_convert_to_gap(), bm::bit_count_change32(), bm::bit_count_nonzero_size(), bm::bit_for_each_4(), bm::bit_iblock_make_pcv(), bm::bit_iblock_pcv_stat(), bm::bit_iblock_reduce(), bm::bit_operation_and(), bm::bit_operation_or(), bm::bit_operation_sub(), bm::bit_operation_xor(), bm::bitcmp(), bm::block_range_scan(), bm::globals< T >::bo::bo(), bm::combine_and_sorted(), bm::combine_count_operation_with_block(), bm::bvector< Alloc >::combine_operation(), bm::combine_or(), bm::combine_sub(), bm::combine_xor(), bm::compute_tmatrix_rstat(), bm::bvector< Alloc >::count_range(), bm::iterator_deserializer< BV, SerialIterator >::deserialize(), bm::operation_deserializer< BV >::deserialize(), bm::deserializer< BV, DEC >::deserialize(), bm::deserialize(), bm::deserializer< BV, DEC >::deserialize_gap(), bm::serializer< BV >::encode_bit_interval(), bm::serializer< BV >::encode_gap_block(), bm::export_array(), bm::mem_alloc< BA, PA >::free_gap_block(), bm::bit_out< TEncoder >::gamma(), bm::gap_add_to_bitset_l(), bm::gap_add_value(), bm::gap_and_to_bitset(), bm::gap_bfind(), bm::gap_bit_count_range(), bm::gap_bitset_and_any(), bm::gap_bitset_and_count(), bm::gap_bitset_or_any(), bm::gap_bitset_or_count(), bm::gap_bitset_sub_any(), bm::gap_bitset_sub_count(), bm::gap_bitset_xor_any(), bm::gap_bitset_xor_count(), bm::gap_calc_level(), bm::gap_control_sum(), bm::gap_find_in_block(), bm::gap_init_range_block(), bm::gap_overhead(), bm::gap_set_all(), bm::gap_set_value(), bm::gap_sub_to_bitset(), bm::gap_test(), bm::gap_xor_to_bitset(), bm::bit_grabber< T, BPC >::get(), bm::serial_stream_iterator< DEC >::get_arr_bit(), bm::serial_stream_iterator< DEC >::get_bit(), bm::bvector< Alloc >::get_bit(), bm::serial_stream_iterator< DEC >::get_bit_block(), bm::serial_stream_iterator< DEC >::get_bit_block_AND(), bm::serial_stream_iterator< DEC >::get_bit_block_ASSIGN(), bm::serial_stream_iterator< DEC >::get_bit_block_COUNT(), bm::serial_stream_iterator< DEC >::get_bit_block_COUNT_A(), bm::serial_stream_iterator< DEC >::get_bit_block_COUNT_AND(), bm::serial_stream_iterator< DEC >::get_bit_block_COUNT_OR(), bm::serial_stream_iterator< DEC >::get_bit_block_COUNT_SUB_AB(), bm::serial_stream_iterator< DEC >::get_bit_block_COUNT_SUB_BA(), bm::serial_stream_iterator< DEC >::get_bit_block_COUNT_XOR(), bm::serial_stream_iterator< DEC >::get_bit_block_OR(), bm::serial_stream_iterator< DEC >::get_bit_block_SUB(), bm::serial_stream_iterator< DEC >::get_bit_block_XOR(), bm::serial_stream_iterator< DEC >::get_gap_block(), bm::bvector< Alloc >::enumerator::go_first(), bm::bvector< Alloc >::enumerator::go_up(), bm::improve_gap_levels(), bm::serial_stream_iterator< DEC >::next(), bm::operation2metric(), bm::bvector< Alloc >::insert_iterator::operator=(), bm::bvector< Alloc >::operator[](), bm::bit_out< TEncoder >::put_bit(), bm::deseriaizer_base< DEC >::read_gap_block(), bm::deseriaizer_base< DEC >::read_id_list(), bm::serializer< BV >::serialize(), bm::bvector< Alloc >::set_bit(), bm::bvector< Alloc >::set_bit_and(), bm::bvector< Alloc >::set_bit_conditional(), bm::set_gap_level(), bm::bvector< Alloc >::set_range(), bm::setop2op(), bm::serial_stream_iterator< DEC >::skip_mono_blocks(), bm::bvector_mini< A >::swap(), bm::tmatrix_reduce(), bm::tmatrix_restore(), bm::gap_transpose_engine< GT, BT, BLOCK_SIZE >::transpose(), bm::gap_transpose_engine< GT, BT, BLOCK_SIZE >::trestore(), bm::vect_bit_transpose(), and bm::xor_swap().

#define BM_IS_GAP ( ptr   )     ( BMPTR_TESTBIT0(ptr)!=0 )
#define BM_SET_MMX_GUARD   sse_empty_guard bm_mmx_guard_;
#define BM_x86

Definition at line 21 of file bmdef.h.

#define BMFORCEINLINE   inline

Definition at line 110 of file bmdef.h.

#define BMGAP_PTR ( ptr   )     ((bm::gap_word_t*)BMPTR_CLEARBIT0(ptr))
#define BMPTR_CLEARBIT0 ( ptr   )     ( ((bm::id64_t)ptr) & ~(bm::id64_t)1 )

Definition at line 75 of file bmdef.h.

#define BMPTR_SETBIT0 ( ptr   )     ( ((bm::id64_t)ptr) | 1 )

Definition at line 74 of file bmdef.h.

#define BMPTR_TESTBIT0 ( ptr   )     ( ((bm::id64_t)ptr) & 1 )

Definition at line 76 of file bmdef.h.

#define BMSET_PTRGAP ( ptr   )     ptr = (bm::word_t*)BMPTR_SETBIT0(ptr)
#define FULL_BLOCK_ADDR   bm::all_set<true>::_block._p
#define IS_EMPTY_BLOCK ( addr   )     (addr == 0)
#define IS_FULL_BLOCK ( addr   )     (addr == FULL_BLOCK_ADDR)
#define IS_VALID_ADDR ( addr   )     (addr && (addr != FULL_BLOCK_ADDR))

Generated on Sun Apr 25 09:37:31 2010 for BitMagic by  doxygen 1.6.1