Beman
|
8c36890e77
|
Test and doc updates for Pierre Talbot's int8_t/uint8_t reverse_value() and templated reverse() patch.
|
2014-04-16 13:52:24 -04:00 |
|
Beman
|
d339470e6e
|
Remove "explicit" from Endian type constructors. Rationale: Having to write "cntr.insert(big_int32_t(value))" instead of "cntr.insert(value)" gets old fast when you are writing application code and the use case arises more or less continuously. Additionally, the use of an endian type is an implementation detail that should not leak into the application code that needs to create values of the type. Furthermore, the ambiguities that caused the constructors to be made explicit no longer occur; they were eliminated when BOOST_MINIMAL_INTEGER_COVER_OPERATORS was introduced to removed a dependency on boost/operators.hpp. If an ambiguity does arise, it is easy to clear via a static_cast or a function-style cast.
|
2013-09-06 10:36:54 -04:00 |
|
Beman
|
016d3b2e7c
|
Rename the endian typedefs. Rationale: Subjective - during three months working on the B-tree library, the *un_t names were a constant source of irritation. Objective - the new scheme, which reverts the *un_t names to having no alignment decoration, provides consistent *_align* decoration for both FP and integer types. Also, the library now provides conversion functions which may reduce use of aligned endian types.
|
2013-09-01 08:40:32 -04:00 |
|
Beman
|
a40d580782
|
Get 64-bit builds working. Update timings to reflect 64-bit build.
|
2013-06-06 08:00:28 -04:00 |
|
Beman
|
74b122c581
|
Alignment of 64-bit integers on a 32-bit system may be to a 32-bit boundary!
|
2013-05-30 10:07:16 -04:00 |
|
Beman
|
cd985897e6
|
By default use a shorter test, but add coverage of the aligned types.
|
2013-05-30 09:19:42 -04:00 |
|
Beman
|
30c44461f6
|
Only do relational tests if signedness is the same, to quiet GCC warnings. Start using lightweight test.
|
2013-05-30 08:57:09 -04:00 |
|
Beman
|
db3864b3d4
|
Fix boo boos detected by inspect program.
|
2013-05-29 09:40:35 -04:00 |
|
Beman
|
9c25d54d38
|
Finalize index.html discussion.
|
2013-05-28 09:42:04 -04:00 |
|
Beman
|
a55a44c67b
|
Loop test time work in progress.
|
2013-05-28 07:37:52 -04:00 |
|
Beman
|
50b5488997
|
loop_time_test current work-in-progress
|
2013-05-27 08:53:18 -04:00 |
|
Beman
|
32b04869e8
|
Initial commit loop_time_test.cpp and its infrastructure.
|
2013-05-27 07:44:29 -04:00 |
|
Beman
|
7f9d91e6d2
|
Rename unaligned integers to fit the floating point pattern. Unifies the naming pattern, deliberately makes the unaligned type names a bit uglier.
|
2013-05-26 12:05:33 -04:00 |
|
Beman
|
dff7c1254e
|
Add unaligned floating point types and supporting infrastructure.
|
2013-05-26 08:25:10 -04:00 |
|
Beman
|
a7ba65f830
|
Implement, test, float and double endian types.
|
2013-05-25 12:16:32 -04:00 |
|
Beman
|
f8f8d90b1f
|
Eliminate addition as not adding any useful information.
|
2013-05-24 13:22:48 -04:00 |
|
Beman
|
77520edff1
|
Change speed_test.cpp output to HTML
|
2013-05-24 11:28:26 -04:00 |
|
Beman
|
2f85e370b6
|
Add 16 and 64 bit varieties
|
2013-05-23 10:19:56 -04:00 |
|
Beman
|
8f55000f6f
|
Finally getting useful speed_test results from both GCC and VC++
|
2013-05-23 10:11:29 -04:00 |
|
Beman
|
c7beb10785
|
Add alignment test cases for aligned endian types.
|
2013-05-22 08:46:56 -04:00 |
|
Beman
|
6f84684e9e
|
Add separate big and little specializations for aligned case; the attempt to combine into a single specialization was selecting the unaligned specialization. Rework speed_test to try to get more meaningful results and cover more test cases.
|
2013-05-22 08:14:51 -04:00 |
|
Beman
|
4d6f7001fa
|
Create separate synopsis section
|
2013-05-21 08:38:24 -04:00 |
|
Beman
|
ddb5936b68
|
Yet another naming scheme for type synonyms. Aligned type names now exactly follow the <cstdint> pattern, while the unaligned names elide "int".
|
2013-05-21 07:56:27 -04:00 |
|
Beman
|
870b542456
|
Rename endian types to a scheme that mimics cstdint.hpp. Change test and example code accordingly.
|
2013-05-20 17:03:12 -04:00 |
|
Beman
|
f13a9cd6a4
|
Rename integers.hpp to types.hpp in case floating point is someday supported.
|
2013-05-20 09:07:01 -04:00 |
|
Beman
|
9089eb037b
|
Rename header converters.hpp back to conversion.hpp. Clean up infrastructure.
|
2013-05-18 16:14:30 -04:00 |
|
Beman
|
de91bcd571
|
Cleanup residue from prior changes.
|
2013-05-18 15:09:51 -04:00 |
|
Beman
|
c0fc4cdf8c
|
Somewhat more interesting results after redoing loop based on iteration count rather than time. Release builds particularly interesting.
|
2013-05-18 10:27:18 -04:00 |
|
Beman
|
2b18459db0
|
Speed_test working, although not yielding useful results.
|
2013-05-18 08:28:27 -04:00 |
|
Beman
|
b587bab1db
|
Add speed_test infrastructure.
|
2013-05-17 13:19:45 -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
|
8b4bd2adfc
|
Add synonyms based on names popularized by BSD, e.g. OS X, Linux.
|
2013-05-15 08:51:05 -04:00 |
|
Beman
|
09b361e161
|
Simulated function template partial specialization working. converter_test and pair_test passing.
|
2013-05-14 17:59:50 -04:00 |
|
Beman
|
72880a1416
|
Initial commit udt_conversion_example.cpp
|
2013-05-14 14:54:11 -04:00 |
|
Beman
|
c16fd1384f
|
Teaks
|
2013-05-14 10:32:51 -04:00 |
|
Beman
|
1a496f277e
|
Signs of life
|
2013-05-14 09:59:18 -04:00 |
|
Beman
|
e7c14b9ff2
|
pair_test infrastructure initial commit.
|
2013-05-14 07:20:53 -04:00 |
|
Beman
|
db2f30b77c
|
Better fix that works with more compilers, old and new, VC++ and GCC.
|
2013-05-13 11:05:31 -04:00 |
|
Beman
|
62915438e3
|
Fix converter_test cases. converter_test now passes on big-endian mac.
|
2013-05-13 10:43:56 -04:00 |
|
Beman
|
4c0bd87c18
|
Tweaks to get tests running with various compilers.
|
2013-05-12 17:42:48 -04:00 |
|
Beman
|
6c00b65eb4
|
Add light test of modify-in-place interface
|
2013-05-12 11:31:32 -04:00 |
|
Beman
|
ec3aacd132
|
Remove cruft left over from refactoring.
|
2013-05-12 10:55:18 -04:00 |
|
Beman
|
0fef88ab3f
|
Change names to make room for modify-in-place names.
|
2013-05-12 08:58:44 -04:00 |
|
Beman
|
854c27939a
|
Change name of conditional conversion functions to big_endian and little_endian.
|
2013-05-12 07:52:42 -04:00 |
|
Beman
|
50c1a27386
|
Change name convert_bytes to convert. Given the namespace, template parameters, and function arguments, it is obvious what is being converted, and "bytes" is too low level for this function.
|
2013-05-12 07:25:12 -04:00 |
|
Beman
|
3877219925
|
Remove spurious semi-colon.
|
2013-05-12 07:21:37 -04:00 |
|
Beman
|
2794810b29
|
converter_test.cpp refactoring complete
|
2013-05-11 17:41:06 -04:00 |
|
Beman
|
97b024bcf6
|
Continue refactoring converter_test.cpp.
|
2013-05-11 17:18:17 -04:00 |
|
Beman
|
c349e35e91
|
Enable double, fix bug in generic reverse_bytes implementation. Begin refactoring converter_test code.
|
2013-05-11 16:08:15 -04:00 |
|