Performance
- Fold negative number literals at HIR level:
-14.2now lowers directly toNumber(-14.2)instead ofUnary(Neg, Number(14.2)). This eliminates unnecessaryfneginstructions in compiled output, particularly beneficial for large array literals with negative values (e.g., LAB color databases). Also ensures negative numbers are correctly recognized byis_number_elementin array type inference.
Bug Fixes (v0.4.17 verification)
- Verified that the v0.4.17 heap allocation fix for large arrays IS working correctly — compiled 200-element arrays with negative numbers produce NO large stack frames on either x86_64 or aarch64 (iOS) targets. The
count > 128threshold correctly triggers direct heap allocation viajs_array_alloc_with_length.