phase-20.45: PRIMARY no-fallback reps + MIR v0 shape fixes
- Fix MIR v0 shape in lowers: functions[] + name="main" + blocks.id * lower_return_int_box.hako * lower_return_binop_box.hako - runner_min: adopt LowerReturnBinOpBox before ReturnInt - Add PRIMARY no-fallback canaries (all PASS): * return-binop / array-size / load-store / return-logical (OR) - Fix phase2043 runner_min canary alias (Runner -> BuilderRunnerMinBox) - Update docs: phase-20.45 README (PRIMARY reps), CURRENT_TASK progress Ancillary: keep builder/provider/canary files in sync; no unrelated behavior changes.
This commit is contained in:
37
nyash.toml
37
nyash.toml
@ -206,6 +206,16 @@ path = "lang/src/shared/common/string_helpers.hako"
|
||||
"hako.mir.builder.internal.lower_return_binop_varvar" = "lang/src/mir/builder/internal/lower_return_binop_varvar_box.hako"
|
||||
"hako.mir.builder.internal.lower_return_binop" = "lang/src/mir/builder/internal/lower_return_binop_box.hako"
|
||||
"hako.mir.builder.internal.lower_return_int" = "lang/src/mir/builder/internal/lower_return_int_box.hako"
|
||||
"hako.mir.builder.internal.lower_newbox_constructor" = "lang/src/mir/builder/internal/lower_newbox_constructor_box.hako"
|
||||
"hako.mir.builder.internal.lower_method_array_size" = "lang/src/mir/builder/internal/lower_method_array_size_box.hako"
|
||||
"hako.mir.builder.internal.lower_method_array_push" = "lang/src/mir/builder/internal/lower_method_array_push_box.hako"
|
||||
"hako.mir.builder.internal.lower_method_array_get_set" = "lang/src/mir/builder/internal/lower_method_array_get_set_box.hako"
|
||||
"hako.mir.builder.internal.lower_method_map_size" = "lang/src/mir/builder/internal/lower_method_map_size_box.hako"
|
||||
"hako.mir.builder.internal.lower_method_map_get_set" = "lang/src/mir/builder/internal/lower_method_map_get_set_box.hako"
|
||||
"hako.mir.builder.internal.lower_load_store_local" = "lang/src/mir/builder/internal/lower_load_store_local_box.hako"
|
||||
"hako.mir.builder.internal.lower_typeop_check" = "lang/src/mir/builder/internal/lower_typeop_check_box.hako"
|
||||
"hako.mir.builder.internal.lower_typeop_cast" = "lang/src/mir/builder/internal/lower_typeop_cast_box.hako"
|
||||
"hako.mir.builder.internal.runner_min" = "lang/src/mir/builder/internal/runner_min_box.hako"
|
||||
|
||||
# Missing alias for JsonFragBox (used widely in lowers)
|
||||
"selfhost.shared.json.utils.json_frag" = "lang/src/shared/json/utils/json_frag.hako"
|
||||
@ -568,3 +578,30 @@ birth = { method_id = 0 }
|
||||
get = { method_id = 1 }
|
||||
set = { method_id = 2 }
|
||||
fini = { method_id = 4294967295 }
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# Builtin/Core Boxes (slot config via central tables)
|
||||
# These entries allow method_id resolution for core boxes
|
||||
# without requiring a dynamic library. Execution remains
|
||||
# handled by built-in handlers; this mapping is for MIR slot
|
||||
# injection and consistency only.
|
||||
|
||||
[box_types]
|
||||
# Assign type IDs for core boxes (reserved range)
|
||||
ArrayBox = 5
|
||||
MapBox = 6
|
||||
|
||||
[box_methods.ArrayBox.methods]
|
||||
push = { method_id = 4 }
|
||||
get = { method_id = 5 }
|
||||
set = { method_id = 6 }
|
||||
size = { method_id = 7 }
|
||||
length = { method_id = 7 }
|
||||
len = { method_id = 7 }
|
||||
|
||||
[box_methods.MapBox.methods]
|
||||
set = { method_id = 4 }
|
||||
get = { method_id = 5 }
|
||||
size = { method_id = 6 }
|
||||
length = { method_id = 6 }
|
||||
len = { method_id = 6 }
|
||||
|
||||
Reference in New Issue
Block a user