| 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.