rcx

miscellaneous C library
git clone git://git.rr3.xyz/rcx
Log | Files | Refs | README | LICENSE

DateCommit messageAuthorFiles+-
2025-08-17 20:52Add def.h include to simd.hRobert Russell1+2-0
2025-02-02 01:05Remove bit zipsRobert Russell1+9-59
2025-01-25 18:28Remove vestigial duplication in bit zipsRobert Russell1+7-12
2025-01-13 18:43Remove likely useless high-arity bit zips, and inline restRobert Russell3+50-76
2025-01-13 07:52Add floored divisionRobert Russell1+36-0
2025-01-13 07:19Add full width signed multipliesRobert Russell3+84-37
2025-01-13 03:25Assign high after low in add, sub, and mulRobert Russell1+15-19
2025-01-13 03:16Change add/sub with carry to arbitrary ternary add/subRobert Russell1+64-70
2025-01-13 02:02Change type of r_trandRobert Russell2+2-2
2025-01-13 01:46Fix addc/subc detectionRobert Russell1+16-16
2025-01-13 00:28Rewrite sign extension functions to support weird bit lengthsRobert Russell1+20-12
2025-01-12 09:12Add add/sub with carry/borrowRobert Russell1+94-0
2025-01-05 04:58Add sign extensionRobert Russell1+19-0
2025-01-05 00:24Add bit zipsRobert Russell3+81-0
2024-12-23 20:43Add TODO to READMERobert Russell1+2-0
2024-11-12 02:24Refine vmem moduleRobert Russell2+122-47
2024-11-03 19:32Upgrade logging moduleRobert Russell2+71-18
2024-10-26 23:28Add the sign operation to the math moduleRobert Russell1+28-14
2024-10-26 22:10Add linear algebra moduleRobert Russell2+250-0
2024-10-26 19:06Create new math module, for now with clamp functionsRobert Russell2+54-0
2024-10-26 18:46Fix renaming bug from previous commitRobert Russell1+17-17
2024-10-20 01:57Remove p- prefix on AVX256 OR and XORRobert Russell2+20-18
2024-08-26 10:03Add READMERobert Russell1+28-0
2024-07-18 02:59Add new module "conv" for string/number conversionsRobert Russell4+110-0
2024-07-18 00:43Leave a noteRobert Russell1+5-0
2024-07-18 00:37Clean up array operations in def.hRobert Russell1+2-1
2024-07-18 00:20Change LICENSE to ISCRobert Russell1+13-18
2024-07-18 00:19Rename throw to r_throw, and leave notes to my future selfRobert Russell4+9-3
2024-07-18 00:10Rename unicode_category to r_unicode_categoryRobert Russell2+3-2
2024-07-07 00:58Add SET macro for assigning arraysRobert Russell1+2-0
2024-07-06 23:39Add c64 and c128 typedefs, and complex/imaginary pseudo-keywordsRobert Russell2+14-2
2024-07-06 23:25Add f32 and f64 typedefsRobert Russell1+3-0
2024-07-06 23:25Expand SIMDRobert Russell1+107-35
2023-10-08 03:29Report error for misnamed allocator optionsRobert Russell4+16-0
2023-10-03 01:48Make default allocators non-e versionsRobert Russell4+4-3
2023-10-01 22:19Allow indices to be negative in list ptr, get, and setRobert Russell2+18-12
2023-10-01 22:15Add a few list methodsRobert Russell1+26-0
2023-10-01 06:06Fix redefinition bug in sets and dictsRobert Russell2+4-4
2023-10-01 06:06Add str_find_byteRobert Russell1+6-0
2023-09-27 02:19Make METHOD option mandatory or optional, as appropriateRobert Russell4+17-16
2023-09-26 17:51Update listRobert Russell15+150-141
2023-09-26 17:36Update setRobert Russell15+99-91
2023-09-26 17:27Make dict table.h pragma onceRobert Russell1+2-0
2023-09-26 06:41Update dictRobert Russell15+136-135
2023-09-26 06:30Don't import alloc.h with only TABLE_TYPESRobert Russell1+3-1
2023-09-26 06:19Fix MakefileRobert Russell1+1-0
2023-09-26 06:09Rework interface to table data structureRobert Russell21+215-208
2023-09-25 06:33Add generic set implementationRobert Russell9+132-0
2023-09-25 06:13Rename typedef options in dict and tableRobert Russell8+22-22
2023-09-25 04:37Add generic dict implementationRobert Russell9+192-0
2023-09-25 03:15Typedef the spec struct for tablesRobert Russell3+7-3
2023-09-25 02:52Document PAGE_LEN and LF_{NUM,DEN}Robert Russell2+11-13
2023-09-25 02:40Abstract dict implementation to generic table data structureRobert Russell13+579-509
2023-09-25 01:33Rename r8search -> rzbRobert Russell1+8-8
2023-09-24 22:40Preserve errno in list freeRobert Russell2+7-1
2023-09-24 20:24Always include alloc.h in listRobert Russell4+4-3
2023-09-24 20:17Remove vector.h from all.hRobert Russell1+0-1
2023-09-24 20:09Rewrite generic dynamic array data stuctureRobert Russell11+214-150
2023-09-24 18:15Add STRINGIFY helper macro, analogous to JOINRobert Russell1+3-0
2023-08-21 00:05Add back str_slice_to_endRobert Russell1+6-3
2023-08-20 23:44Include stdbool.h appropriatelyRobert Russell3+4-0
2023-08-20 23:40Remove Buf and RcStr; reorganize Str stuffRobert Russell6+19-304
2023-08-13 22:15Improve readability in dict.cRobert Russell3+116-84
2023-08-13 19:53Add static_assert macroRobert Russell2+8-4
2023-08-13 19:19Capitalize assert and requireRobert Russell11+40-31
2023-06-15 03:04Prev commit, but for dequesRobert Russell2+15-6
2023-06-15 03:03Prev commit, but for vectorsRobert Russell2+21-9
2023-06-15 02:57Move setting of dict defaults to separate headerRobert Russell3+19-8
2023-06-14 20:41Add buf_slice_to_end{,_rc_ref}Robert Russell1+11-0
2023-06-14 20:38Add str_slice_to_endRobert Russell1+5-0
2023-06-14 02:01Fix char signedness issue in str_staticRobert Russell1+1-1
2023-06-13 23:03Rework buffers and stringsRobert Russell4+97-54
2023-06-13 20:40Make r_log preserve errnoRobert Russell2+7-2
2023-06-13 20:34Make r_dict_free preserve errnoRobert Russell1+2-0
2023-06-13 20:33Add str_alloc_cstrRobert Russell3+18-1
2023-06-09 05:38Fix bugs in dictRobert Russell2+58-55
2023-06-09 03:16Finish dictRobert Russell2+109-103
2023-06-09 02:11Remove AVX supportRobert Russell2+12-37
2023-06-09 02:00Cleanup dictRobert Russell2+112-104
2023-06-09 00:14Add -march=native and -O3 to default CFLAGSRobert Russell1+1-1
2023-06-04 16:52Change hash table structureRobert Russell2+121-135
2023-06-04 16:50Add R_CACHE_LINE_BITSRobert Russell1+3-2
2023-06-04 01:56Add R_CACHE_LINE_SIZERobert Russell1+6-0
2023-06-04 01:46Progress on SIMDing dictRobert Russell1+118-41
2023-06-03 16:42Move SIMD defines to def.hRobert Russell2+29-37
2023-06-03 01:56Add basic AVX2 bindingsRobert Russell1+239-31
2023-06-02 23:08SIMD stuffRobert Russell2+15-12
2023-06-02 23:00Revert "Use portable Intel SIMD"Robert Russell1+173-104
2023-06-02 06:11Use portable Intel SIMDRobert Russell1+104-173
2023-06-02 04:26Add SIMD stuffRobert Russell1+224-0
2023-05-31 00:50Add generic hash table implementationRobert Russell5+406-0
2023-05-29 20:32Add rightmost zero byte search functionsRobert Russell2+30-0
2023-05-29 19:06More bit stuffRobert Russell2+155-20
2023-05-29 08:01Justify CHAR_BIT == 8 assertionRobert Russell1+1-0
2023-05-29 07:59Improve bench; add endianness detectionRobert Russell3+28-4
2023-05-29 03:36Add bit rotatesRobert Russell1+10-0
2023-05-29 02:44Add ctz functionsRobert Russell1+92-2
2023-05-29 01:23Increase bench max NRobert Russell1+1-1
2023-05-28 20:34Optimize popcnt functionsRobert Russell2+33-23
2023-05-26 03:48Add SWAP macroRobert Russell2+8-1
2023-05-23 03:33Add XXX_BITS macros for the width of each integer typedefRobert Russell1+59-6
2023-05-23 00:09Add pragma once to rand.hRobert Russell1+2-0
2023-05-23 00:07Reorganize and improve hash/rand moduleRobert Russell5+144-113
2023-05-22 01:31Implement wyhash and wyrandRobert Russell3+113-0
2023-05-22 01:22Make all bits functions static inlineRobert Russell3+59-70
2023-05-21 23:50Add read{16,32,64}{b,l,h} functionsRobert Russell2+25-10
2023-05-21 23:01Add documentation for mul64Robert Russell1+2-0
2023-05-21 22:56Add mul64 functionRobert Russell2+23-0
2023-04-27 18:46Add unreachable macroRobert Russell1+2-1
2023-03-25 01:40buffer: fix header alignment issuesRobert Russell2+13-11
2023-03-25 00:40string: printf constructorsRobert Russell2+40-0
2023-03-25 00:01unicode: remove r_ prefixRobert Russell2+2-8
2023-03-24 23:46buffer: expose means to get buffer header sizeRobert Russell1+2-0
2023-03-24 23:30vmem: close error handlingRobert Russell1+8-2
2023-03-16 05:59Add buffer and string moduleRobert Russell7+299-3
2023-03-15 20:52Remove stupid error moduleRobert Russell2+0-61
2023-03-15 20:51Add vmem.h to all.hRobert Russell1+1-0
2023-03-15 20:49Remove stupid {i,u}word typesRobert Russell1+1-31
2023-03-14 23:32Add vmem moduleRobert Russell3+112-1
2023-03-13 00:47Add STATIC macro and improve (un)likely macrosRobert Russell1+18-2
2023-03-12 23:12Remove -std=c11 from config.mkRobert Russell2+3-2
2023-03-12 22:27OptimizeRobert Russell3+16-33
2023-03-12 21:06Separate typedef from struct defRobert Russell1+4-2
2023-03-12 21:04Rename for typedef name consistencyRobert Russell1+2-2
2023-03-06 06:51Add debug.h to all.hRobert Russell1+1-0
2023-02-24 07:47Use new assertRobert Russell5+8-8
2023-02-24 07:32Add debug utilsRobert Russell3+48-0
2023-02-24 07:17Add NOINLINE macroRobert Russell1+2-0
2023-02-24 06:50Add VA_DEFAULT macroRobert Russell1+8-1
2023-02-24 06:40Flatten inc directoryRobert Russell40+529-529
2023-02-03 03:52Make sure non-e allocators set errno to ENOMEMRobert Russell2+17-7
2023-02-02 05:19Tentatively add error handling moduleRobert Russell4+64-0
2023-02-02 04:04Add bits to all.hRobert Russell1+1-0
2023-02-02 01:28Add bit manipulation libraryRobert Russell4+55-1
2023-01-14 20:53Improve unix.h docs; handle EOF for read_allRobert Russell2+30-28
2023-01-08 21:31Add functions for working with iovec'sRobert Russell2+83-12
2023-01-08 03:03Document and improve read_all and write_allRobert Russell2+20-10
2023-01-08 02:52Add read_all and write_all functionsRobert Russell4+44-0
2023-01-08 02:20Remove obsolete commentRobert Russell1+0-2
2022-09-10 03:05Make vector len and cap take T*, not T**Robert Russell1+11-11
2022-09-09 18:03Add null terminator option to vectorRobert Russell1+14-9
2022-09-08 04:51Add more insert vector methodsRobert Russell1+25-9
2022-09-08 03:18Add peek method to vectorsRobert Russell1+5-1
2022-09-08 03:13Make vector header type changableRobert Russell2+19-12
2022-09-07 22:16Make erealloc functions return int 0Robert Russell3+8-5
2022-09-07 22:09Fix signatures of realloc functionsRobert Russell2+16-16
2022-09-07 21:49Add cat and ecat functionsRobert Russell2+64-1
2022-09-07 21:44Change realloc function signaturesRobert Russell4+51-41
2022-09-02 19:51Change library name from cext to rcxRobert Russell33+678-671
2022-09-02 18:43Remove tool binaries on cleanRobert Russell1+1-1
2022-09-02 18:40Add install and uninstall targetsRobert Russell1+11-1
2022-09-02 18:27Reorganize Makefile and config.mkRobert Russell2+6-2
2022-09-02 18:11Use curl instead of wgetRobert Russell1+1-1
2022-08-21 19:20Update Makefilerobert1+1-0
2022-08-20 02:47Make CHAR_BIT == 8 assumption explicitrobert1+4-0
2022-08-20 02:43Reorganize 128 bit defsrobert1+15-12
2022-08-20 02:38Add {i,u}word typedefsrobert1+29-0
2022-08-20 02:13Use uint32_t directly for rune definitionrobert1+2-3
2022-08-20 02:11Simplify search for isize typedefrobert1+5-11
2022-08-20 01:48Add isize typedefrobert1+14-1
2022-08-20 01:42Add schar typedefrobert1+1-0
2022-08-20 01:36Add MIN and MAX macros for primitive C typesrobert1+6-0
2022-08-20 01:01Add GCC branch predition hint macrosrobert1+4-0
2022-08-11 01:56Add function to get unicode category of given runerobert7+172-1
2022-08-10 23:33Turn on -O2 by defaultrobert1+1-1
2022-08-10 21:41Namespace all bench functions; use ms for goal timerobert2+14-16
2022-08-10 21:34Namespace all utf8 functionsrobert2+16-16
2022-08-10 21:25Namespace all str functionsrobert2+28-19
2022-08-10 21:07Fix vector and deque namespace issuesrobert2+64-62
2022-08-10 21:00Fix vector overflow and stop using -f allocatorsrobert4+33-17
2022-08-10 20:19Remove -f allocatorsrobert2+10-54
2022-08-10 20:09Cleanup and fix dependencies in Makefilerobert1+3-3
2022-08-10 20:05Document log and cleanuprobert6+29-2
2022-08-10 19:05Add benchmarking modulerobert4+131-1
2022-08-09 21:23Add string handling functionsrobert4+95-8
2022-07-30 23:15alloc: make overflows nonfatalrobert1+25-14
2022-07-28 21:21Rename vector and deque ALLOC defsrobert2+4-4
2022-07-28 21:19Rename vector defs and fix vector bugrobert1+20-19
2022-07-28 04:15Prevent unused deque and vector function warningsrobert3+26-20
2022-07-19 18:17Generalize rings to dequesrobert3+125-97
2022-07-19 01:59Separate ring typedef into different macrorobert1+4-2
2022-07-19 00:15Add generic ring buffer/queue data structurerobert2+96-0
2022-07-18 04:06Rename vec.h to vector.hrobert2+1-1
2022-07-13 23:59Fix utf8decoderobert1+4-3
2022-07-12 23:35Prevent warning from int128 usagerobert2+9-16
2022-07-12 04:03Reorganizerobert11+122-114
2022-07-12 03:33Add Makefilerobert2+27-0
2022-07-12 03:08Initial commitrobert15+746-0
2022-07-12 03:05Initial commitRobert Russell1+21-0