diff options
Diffstat (limited to 'CHANGELOG.txt')
-rw-r--r-- | CHANGELOG.txt | 308 |
1 files changed, 167 insertions, 141 deletions
diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 6c1910f..83ace3c 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,141 +1,167 @@ -| F - -- Remove type specifier from version macro; -- Add mathematical functions abs and fma; -- Update documentation; -- Remove nothrw attribute from foreach; -- Remove UB from foreach test; -- Fix parameter mismatch in foreach test; -- Use unsigned char instead of uint_least8_t; -- Remove unnecessary casts; -- Add new headers: 'zap/math.h' (for mathematical functions), 'zap/mem.h' (for memory sequence functions); -- Restructure makefile; -- Fix not using INT_LEAST8_MAX and INT_LEAST8_MIN instead of INT8_MAX and INT8_MIN; -- Remove '/build' from gitignore; - -| E - -- Fix incorrect version number; - -| D - -- Add function foreach: Run function on each element; -- Use directive globl instead of global in assembly; -- Use SIZE_MAX instead of negative one; -- Remove asflags from makefile; -- Don't require GNU Make; -- Change the type of fndbyte: (size_t (void const *,size_t,uint_least8_t)) => (size_t (void const *,size_t,unsigned char)); -- Change the type of memfill: (void (void *,size_t,uint_least8_t)) => (void (void *,size_t,unsigned char)); -- Update readme (add documentation for some functions); -- Update susinfo symbol names; - -| C - -- Fix install target; -- Remove type literals; - -| B - -- memdup: Use sus_unlikely instead of __builtin_expect; -- Rename project to zap (from rgo); -- Remove global license file (useless with MPL); -- Migrate test to C++ (for reasons which will be revealed later); -- Restructure headers; -- Add include guards to the private header; -- Add attribute useret to functions; -- Require GNU Make; -- Compile position independent code; -- Update readme; - -| A - -- Installation script: Create installation directories if they don't already exist; -- Don't use susinfo types; -- Remove declarations for getbinver; -- Add memcmp, strcmp; -- Update makefile; -- Reimplement fastimpl as a global variable; -- Change type of fastimpl (uint_least8_t => _Bool); -- Change the return types of memeq and streq (uint_least8_t => _Bool); -- Enable compilation warnings; -- Add type literals (like those from susinfo); -- Use *int_leastN_t instead of *intN_t; -- Remove restrict-qualifications; -- Remove C++ version of memdup; - -| 9 - -- Fix readme not reflecting that we now support all platforms; -- Rename the 'Building' section in the readme to 'Building & Installing'; - -| 8 - -- Use susinfo; -- Implement algorithms in C (with inline assembly on supported platforms); -- Add comments; -- Fix strcpy counting the null-terminator; -- Fix strcpy taking a pointer-to-const as the output; -- Implement strcpy, streq in IA-32; -- Optimise streq: Only use the lower eight bytes for the return value; -- Optimise strlen: Use fewer registers; -- Fix memfill taking a pointer-to-const as the output; -- Fix strfill taking a pointer-to-const as the output; -- Update readme; -- Add private header; -- Remove assembly-specific version macro; - -| 7 - -- Relicense under MPL2; -- Instead of throwing an error, define a macro when the header is included on an unsupported platform; - -| 6 - -- Remove stupid debug return from memcpy; - -| 5 - -- Fix compile flags not indicating new relative header location; - -| 4 - -- Add install target to makefile; -- Merge makefiles; - -| 3 - -- Enable compiler optimisations; -- Optimise memfill; -- Optimise memcpy: Use movdqu instead of movups (AMD64, i386 SSE2), add 256-bit copy (AMD64 AVX, i386 AVX); -- Update makefile; -- Implement fndbyte, fndchr, strlen in IA-32; -- Fix bug in test; -- Update readme; -- Add new planned architectures: Motorola 68000, Power ISA, RISC-V, Sparc; - -| 2 - -- Fix target purge in makefile not being labeled phony; -- Add machien architecture check in header; -- Implement memcpy, memeq, memfill in IA-32; -- Fix some incorrect comments; -- Use a different register order for temporaries and optimise register usage; -- Fix bug in memeq: Should jump if zero, not if equal; -- Update readme; - -| 1 - -- Fix indentation in license notices; -- Fix incorrect declaration for rgo_strcpy, rgo_streq; -- Implement fndbyte,memeq,strcpy,streq; -- Add new tests; -- Fix bug in memcpy: Should jump if zero, not if equal; -- Remove declaration for rgo_memcmp; -- Add macro rgo_ver, defined to the current version number; -- Add assembly declaration for rgo_fndchr, rgo_fndbyte; -- Fix some incorrect comments; -- Use movups instead of movdqu in memcpy; - -| 0 - -- Initial. +# 10.0 + +* Update readme; +* Fix typo in makefile; +* Include headers inside header guard; +* Remove unneeded includes; +* Rename private include directory: 'include-priv' => 'include-private'; +* Remove assembly support from (public) headers; +* Remove fastimpl (assembly algorithms are still used); +* Add copyright/license notices to makefiles; +* Seperate sources according to header; +* Require GNU Make; +* Move (most) C-implementations into a seperate project: zapx; +* Restructure assembly; +* Implement strfill in assembly; +* Use new versioning system (api.ver); +* Remove documentation; +* Add features from latest standard; +* Temporarily remove i386 implementations; +* Update readme format; +* Update changelog format; +* Remove impl; +* Remove stdver; +* Readd ver; +* Use git tagging; + +# F + +* Remove type specifier from version macro; +* Add mathematical functions abs and fma; +* Update documentation; +* Remove nothrw attribute from foreach; +* Remove UB from foreach test; +* Fix parameter mismatch in foreach test; +* Use unsigned char instead of uint_least8_t; +* Remove unnecessary casts; +* Add new headers: 'zap/math.h' (for mathematical functions), 'zap/mem.h' (for memory sequence functions); +* Restructure makefile; +* Fix not using INT_LEAST8_MAX and INT_LEAST8_MIN instead of INT8_MAX and INT8_MIN; +* Remove '/build' from gitignore; + +# E + +* Fix incorrect version number; + +# D + +* Add function foreach: Run function on each element; +* Use directive globl instead of global in assembly; +* Use SIZE_MAX instead of negative one; +* Remove asflags from makefile; +* Don't require GNU Make; +* Change the type of fndbyte: (size_t (void const *,size_t,uint_least8_t)) => (size_t (void const *,size_t,unsigned char)); +* Change the type of memfill: (void (void *,size_t,uint_least8_t)) => (void (void *,size_t,unsigned char)); +* Update readme (add documentation for some functions); +* Update susinfo symbol names; + +# C + +* Fix install target; +* Remove type literals; + +# B + +* memdup: Use sus_unlikely instead of __builtin_expect; +* Rename project to zap (from rgo); +* Remove global license file (useless with MPL); +* Migrate test to C++ (for reasons which will be revealed later); +* Restructure headers; +* Add include guards to the private header; +* Add attribute useret to functions; +* Require GNU Make; +* Compile position independent code; +* Update readme; + +# A + +* Installation script: Create installation directories if they don't already exist; +* Don't use susinfo types; +* Remove declarations for getbinver; +* Add memcmp, strcmp; +* Update makefile; +* Reimplement fastimpl as a global variable; +* Change type of fastimpl (uint_least8_t => _Bool); +* Change the return types of memeq and streq (uint_least8_t => _Bool); +* Enable compilation warnings; +* Add type literals (like those from susinfo); +* Use *int_leastN_t instead of *intN_t; +* Remove restrict-qualifications; +* Remove C++ version of memdup; + +# 9 + +* Fix readme not reflecting that we now support all platforms; +* Rename the 'Building' section in the readme to 'Building & Installing'; + +# 8 + +* Use susinfo; +* Implement algorithms in C (with inline assembly on supported platforms); +* Add comments; +* Fix strcpy counting the null-terminator; +* Fix strcpy taking a pointer-to-const as the output; +* Implement strcpy, streq in IA-32; +* Optimise streq: Only use the lower eight bytes for the return value; +* Optimise strlen: Use fewer registers; +* Fix memfill taking a pointer-to-const as the output; +* Fix strfill taking a pointer-to-const as the output; +* Update readme; +* Add private header; +* Remove assembly-specific version macro; + +# 7 + +* Relicense under MPL2; +* Instead of throwing an error, define a macro when the header is included on an unsupported platform; + +# 6 + +* Remove stupid debug return from memcpy; + +# 5 + +* Fix compile flags not indicating new relative header location; + +# 4 + +* Add install target to makefile; +* Merge makefiles; + +# 3 + +* Enable compiler optimisations; +* Optimise memfill; +* Optimise memcpy: Use movdqu instead of movups (AMD64, i386 SSE2), add 256-bit copy (AMD64 AVX, i386 AVX); +* Update makefile; +* Implement fndbyte, fndchr, strlen in IA-32; +* Fix bug in test; +* Update readme; +* Add new planned architectures: Motorola 68000, Power ISA, RISC-V, Sparc; + +# 2 + +* Fix target purge in makefile not being labeled phony; +* Add machien architecture check in header; +* Implement memcpy, memeq, memfill in IA-32; +* Fix some incorrect comments; +* Use a different register order for temporaries and optimise register usage; +* Fix bug in memeq: Should jump if zero, not if equal; +* Update readme; + +# 1 + +* Fix indentation in license notices; +* Fix incorrect declaration for rgo_strcpy, rgo_streq; +* Implement fndbyte,memeq,strcpy,streq; +* Add new tests; +* Fix bug in memcpy: Should jump if zero, not if equal; +* Remove declaration for rgo_memcmp; +* Add macro rgo_ver, defined to the current version number; +* Add assembly declaration for rgo_fndchr, rgo_fndbyte; +* Fix some incorrect comments; +* Use movups instead of movdqu in memcpy; + +# 0 + +* Initial. |