Yukihiro "Matz" Matsumoto
8b0641f97a
mruby-bigint: reuse scratch buffers for D&C to_s recursive temporaries
...
Use scratch buffers for q5, r5, and q5_low in the recursive case of
D&C decimal string conversion. These temporaries are only needed
during the computation of hi and lo values, not during the recursive
calls, so they can be safely reused at each recursion level.
This eliminates 3 allocations per recursion level (approximately
log2(digits/1000) levels for large numbers), providing an additional
2-3% performance improvement on top of the base case optimization.
Co-authored-by: Claude <noreply@anthropic.com >
2026-01-13 12:47:46 +09:00
..
2025-10-16 09:59:03 +09:00
2026-01-01 09:01:15 +09:00
2026-01-02 18:28:31 +09:00
2025-10-16 09:59:03 +09:00
2025-10-16 16:54:25 +09:00
2025-10-20 08:11:59 +09:00
2025-10-25 21:05:39 +09:00
2025-10-16 17:02:23 +09:00
2025-12-25 18:01:44 +09:00
2025-12-11 18:09:09 +09:00
2026-01-13 12:47:46 +09:00
2025-12-11 18:09:10 +09:00
2025-12-28 20:28:00 +10:00
2026-01-04 19:52:11 +01:00
2025-12-11 18:09:10 +09:00
2025-12-21 17:26:49 +09:00
2025-12-11 18:09:10 +09:00
2025-11-12 10:25:36 +09:00
2025-08-14 10:52:47 +09:00
2025-10-14 08:22:41 +09:00
2025-10-08 23:55:23 +09:00
2025-08-14 10:52:49 +09:00
2026-01-08 12:58:22 +09:00
2025-12-11 18:09:08 +09:00
2025-08-14 10:52:49 +09:00
2025-11-08 14:27:44 +09:00
2025-12-23 10:41:21 +09:00
2025-12-11 18:09:06 +09:00
2025-12-11 18:09:09 +09:00
2025-12-11 18:09:09 +09:00
2025-12-11 18:09:07 +09:00
2025-10-27 07:59:20 +09:00
2025-11-08 14:26:49 +09:00
2025-12-23 08:34:52 +09:00
2025-08-14 10:52:49 +09:00
2025-10-18 23:34:10 +09:00
2025-12-11 18:09:09 +09:00
2026-01-08 08:23:51 +09:00
2025-11-12 10:25:37 +09:00
2025-10-26 23:30:14 +09:00
2025-11-29 01:46:54 +10:00
2025-12-11 18:09:10 +09:00
2025-12-30 16:25:49 +09:00
2025-12-11 18:09:07 +09:00
2025-08-14 10:52:49 +09:00
2025-06-24 13:56:07 +09:00
2026-01-12 03:00:53 +01:00
2025-11-08 14:24:40 +09:00
2025-10-26 20:33:06 +09:00
2025-12-29 12:54:32 +09:00
2025-11-29 01:46:54 +10:00
2026-01-12 19:23:15 +09:00
2026-01-08 08:23:43 +09:00
2026-01-02 18:28:31 +09:00
2025-12-11 18:09:11 +09:00
2025-12-29 11:56:58 +09:00
2026-01-08 08:23:51 +09:00
2026-01-01 10:23:21 +09:00
2025-12-11 18:09:09 +09:00
2025-08-14 10:52:49 +09:00
2025-11-08 14:14:44 +09:00
2025-11-16 06:53:02 +09:00
2024-09-24 00:14:24 +10:00
2026-01-05 12:35:09 +09:00
2025-08-14 10:52:47 +09:00
2021-01-06 18:10:21 +09:00
2021-01-06 18:10:21 +09:00
2023-04-04 19:31:42 +10:00
2025-10-08 23:55:21 +09:00
2025-05-14 15:58:23 +09:00
2025-05-14 15:58:24 +09:00
2022-11-29 15:58:05 +09:00
2025-01-06 13:57:23 +09:00
2025-05-19 08:00:36 +09:00