Commit Graph
37 Commits
Author SHA1 Message Date
Peter Dimov a4bc0f1a44 Make endian_reverse constexpr when possible 2019-10-11 19:43:02 +03:00
Peter Dimov cc28f5d658 Add BOOST_CONSTEXPR to endian_reverse functions 2019-10-11 18:49:06 +03:00
Peter Dimov e68d8f939c static_assert the requirements of endian_load and endian_store 2019-05-01 00:13:22 +03:00
Peter Dimov 79c3add907 Support any expanding loads in endian_load 2019-04-30 23:53:39 +03:00
Peter Dimov 8df14956d4 Support any truncating store in endian_store 2019-04-30 20:39:17 +03:00
Peter Dimov d40a3ac3f4 Switch the parameter order of endian_store 2019-04-30 05:13:47 +03:00
Peter Dimov b29b3dfc10 Move all deprecated names to endian.hpp; add deprecated_test.cpp to test/Jamfile 2019-04-29 00:36:21 +03:00
Peter Dimov 630e09942b Remove endian/detail/cover_operators.hpp 2019-04-28 00:58:29 +03:00
Peter Dimov 8e3eccaa14 Do not include conversion.hpp from endian_load, endian_store.hpp 2019-04-27 19:15:28 +03:00
Peter Dimov e58970b167 Remove endian/detail/lightweight_test.hpp 2019-04-27 02:32:24 +03:00
Peter Dimov a2025a9320 Refactor endian_reverse into its own header, make it work for long and long long 2019-04-26 20:24:27 +03:00
Peter Dimov de33887009 Identify and static-assert the requirements of endian_load/endian_store 2019-03-13 01:44:29 +02:00
Peter Dimov 95178e3cfb Add endian_store, use it in buffers.hpp 2019-03-12 20:21:11 +02:00
Peter Dimov 019fb85ea9 Add endian_load, use it in buffers.hpp 2019-03-12 19:42:35 +02:00
Peter Dimov bde5937912 A header named _pop should presumably pop instead of push 2018-09-15 03:40:33 +03:00
Peter Dimov e5753d13e2 Remove unused header 2018-09-15 03:38:52 +03:00
arvidn 4b4123a0fa [cleanup] remove trailing whitespace from source code files 2017-11-04 13:07:54 +01:00
Beman 1b0a41e6cb Add Clang/c2 solution with conversion_test_clang project. Clang/c2 uses the Microsoft rather than GCC intrinsics, so check for defined(_MSC_VER) before defined(__clang__) 2015-12-11 08:15:25 -05:00
Beman e532e9c34d BOOST_TEST_MEM_EQ() macro returns bool to aid code that adds additional reporting on errors. 2015-03-20 07:41:54 -04:00
Beman 4f2a715c9f Fully implement float_value_test and double_value_test 2015-03-09 17:11:54 -04:00
Beman 09ae6c961f Rename BOOST_TEST_MEMCMP_EQ to BOOST_TEST_MEM_EQ. Add float_test to Jamfile. Add float_value_test() and double_value_test(). 2015-03-08 10:50:39 -04:00
Beman 072b495240 Add Endian specific lightweight_test.hpp with new macro BOOST_TEST_MEMCMP_EQ that uses std::memcmp(...)==0 to determine equality. Bitwise equality is the standard we want floating point round trips to be held to, since NaN's are then equal. 2015-03-05 10:52:28 -05:00
Beman 35f4c47a22 Add endian_buffer stream inserter and extractor, beef up buffer_test a bit. 2015-01-17 10:25:29 -05:00
Beman 6c173766e3 Eliminate gcc -Wconversion warnings. 2014-12-10 15:03:06 -05:00
Beman dcde9463fc Do not define _SCL_SECURE_NO_WARNINGS or _CRT_SECURE_NO_WARNINGS if already defined (such as on the command line), plus related cleanups. 2014-12-10 10:26:49 -05:00
Beman e9f6d2c37c Re-implement the endian types by inheriting from endian_buffer. 2014-11-15 21:04:19 -05:00
Beman c41521cead For the endian types, add stream inserters and extractors as requested during the formal review. 2014-11-11 21:08:08 -05:00
Beman 41f0c15844 Initial done_list.html. Improve general FAQ. Update example. Add BOOST_NOEXCEPT to types.hpp and cover_operators.hpp. 2013-05-22 13:26:51 -04:00
Beman 4a2ccdcfc8 Fix failure to define BOOST_ENDIAN_INTRINSIC_MSG when user defines BOOST_ENDIAN_NO_INTRINSICS 2013-05-16 17:48:47 -04:00
Beman 9a1d520572 Use a more robust detection of __builtin_bswap funtions for Clang. Fix Clang lack of __builtin_bswap16 in some releases. To be conservative only, fallback to byteswap.h if __linux__ is defined. Fix intrinsic_test so that <cstdint> isn't required. 2013-05-16 17:22:38 -04:00
Beman 4066443d89 Rework intrinsic.hpp to handle GCC and Clang __builtin_bswap* if available. Add test program. 2013-05-16 10:40:18 -04:00
Beman 88268249a9 Remove inclusion of unreferenced headers. Add comment about Microsoft/Visual Studio availability of intrinsics. 2013-05-15 15:38:34 -04:00
Beman 2f6dba3ab6 Fixes for older gcc. Fixes for big endian machines. 2013-05-13 10:09:25 -04:00
Beman 4c0bd87c18 Tweaks to get tests running with various compilers. 2013-05-12 17:42:48 -04:00
Beman 9e96faf4c1 float showing signs of life. 2013-05-11 08:13:55 -04:00
Beman 553d6a2426 Work in progress. Detect wrong endianness reported by boost/detail/endian.hpp. Add intrinsic timing to benchmark.cpp. Add boost/endian/detail/intrinsic.hpp. Use intrinsics in converters when available. Begin adding convert_bytes tests to converter_test.cpp. 2013-05-10 16:51:24 -04:00
Beman 8b25b2148c Directory reorg to follow Boost Git practice. 2013-03-18 15:02:04 -04:00