Commit Graph
31 Commits
Author SHA1 Message Date
gingerBill 9187b7acfc Remove map_cell_index_dynamic_const; Re-insert entries directly when growing/shrinking a map 2026-10-03 17:34:16 +01:00
gingerBill 2a57037287 Add map_erase_static and use when compiling for optimizations 2026-10-03 17:13:31 +01:00
gingerBill 1ad14bb824 Change how a map gets seeded with a folded multiply of the address as the seed instead 2026-10-03 17:06:42 +01:00
gingerBill 85f02a8304 Hash string and cstring map keys a word at a time with default_hasher_fixed 2026-10-03 16:50:33 +01:00
gingerBill 70f6767776 Make lb_map_set_proc_for_type prefer to go through the runtime for unoptimized builds 2026-10-03 16:15:59 +01:00
gingerBill d783e8b1f6 Inline more of the code in default_hasher_fixed 2026-10-03 15:16:25 +01:00
gingerBill 24ff27e6c8 Hash fixed-size map keys a "word" at a time with default_hasher_fixed 2026-10-03 15:09:56 +01:00
gingerBill 80dd40add7 Replace the division in map_cell_index_dynamic with a reciprocal multiply trick 2026-10-03 13:46:29 +01:00
Sylphrena 64f27153cc Follow up fix of map shrink 2026-08-01 13:30:34 +02:00
Sylphrena 17e23a8bcf Shrink map to minimum capacity with shrink 2026-07-29 15:20:50 +02:00
corley d1fd585b55 fix for map reported capacity incorrect after shrinking 2026-07-20 21:33:46 +03:00
gingerBill 40e54a97ed Merge branch 'master' into bill/bedrock 2026-06-24 11:07:02 +01:00
Sylphrena 0aa85a035f Added optional allocator error to map_insert 2026-06-13 20:00:02 +02:00
gingerBill ea00291519 Begin work on -bedrock mode
Currently disables 128-bit integers, `map` type, and RTTI
2026-05-02 15:06:01 +01:00
gingerBill e6a62c4bb0 Minor optimization to map_probe_distance 2026-02-03 12:19:20 +00:00
gingerBill 842cfee0f3 Change Odin's LICENSE to zlib from BSD 3-clause
This change was made in order to allow things produced with Odin and using Odin's core library, to not require the LICENSE to also be distributed alongside the binary form.
2025-10-28 14:38:25 +00:00
gingerBill 9cf69576ab More improvements to minimize code gen size 2025-09-18 20:58:24 +01:00
gingerBill 3dcc22fa6d Change hashing rules for float-like types to make 0 == -0 2025-04-16 10:52:35 +01:00
Laytan Laats 4de5911a15 fix map_entry sometimes giving wrong key pointer
`map_desired_position` does not return the actual position, probing must
be done afterwards to figure out the real position. `map_entry` did not
do this for the returned key pointer so it could point to the wrong key
if probing was done.
2025-01-18 14:02:27 +01:00
gingerBill a6f1046fc0 Merge pull request #4533 from laytan/map-entry
add `map_entry` procedure
2025-01-06 12:36:27 +00:00
fleandro c93e096d8f fix N=1 and cleanup tests 2025-01-03 16:50:05 +00:00
fleandro e3de02eaa8 runtime: map_cell_index_static produced wrong results when the number of elements per cell was a power of 2 2025-01-03 15:33:34 +00:00
Laytan Laats 8050622fe6 add map_entry procedure 2024-11-28 20:07:54 +01:00
gingerBill f7cb711874 Add #force_no_inline 2024-07-14 23:48:33 +01:00
gingerBill 9933ca8b56 Make map_total_allocation_size public; Add map_total_allocation_size_from_value 2024-04-08 23:58:30 +01:00
gingerBill 5f2496226f Change return to panic 2024-03-13 15:17:21 +00:00
gingerBill dee66b8451 Fix typo due to deletion 2024-03-13 15:14:31 +00:00
gingerBill ac10f504e4 Add infinite loop check and early out in map_insert_hash_dynamic 2024-03-13 15:12:14 +00:00
gingerBill fa093d9b09 Add runtime.map_insert_and_check_for_previous 2024-02-06 23:58:22 +00:00
gingerBill 9e7cc8cf93 Remove core:os dependency from base:runtime; change to base:intrinsics 2024-01-28 21:59:43 +00:00
gingerBill 09fa1c29cd Move core:runtime to base:runtime; keep alias around 2024-01-28 21:05:53 +00:00