github PerryTS/perry v0.4.37

latest releases: v0.5.1220, v0.5.1219, v0.5.1206...
3 months ago

Bug Fixes

  • String NaN-boxing in function callsis_string locals (I64 raw pointers) passed to functions expecting F64 now use js_nanbox_string (STRING_TAG 0x7FFF) instead of inline_nanbox_pointer (POINTER_TAG 0x7FFD). Fixes textfieldGetString return values becoming undefined when used in encodeURIComponent, ||, or cross-module calls (GH-10, GH-11, GH-12)
  • JS interop string argsjs_call_function and js_native_call_method fallback paths now properly NaN-box string arguments with STRING_TAG instead of raw I64→F64 bitcast

Performance

  • Direct object field accessPropertyGet/PropertySet on variables assigned from object literals now use direct offset loads/stores (24 + idx*8) instead of js_object_get_field_by_name runtime lookup, when field ordering is known at compile time
  • Object field cache upgraded — 3-tuple entries (keys_ptr, key_hash, field_index) for collision safety, 1024 entries (up from 512)

Don't miss a new perry release

NewReleases is sending notifications on new releases.