@@ -115,8 +115,9 @@ void *simplify_env_emit_long_compare(SimplifyEnv *env, int32_t op,
115115
116116void * simplify_env_emit_primitive_box_bool (SimplifyEnv * env , void * src ) {
117117 void * reg = hir_func_alloc_register (env -> func );
118- extern void * hir_c_create_primitive_box_bool_reg (void * dst , void * src );
119- void * instr = hir_c_create_primitive_box_bool_reg (reg , src );
118+ extern void * hir_c_create_primitive_box (void * dst , void * src , HirType type );
119+ HirType t_cbool = HIR_TYPE_CBOOL ;
120+ void * instr = hir_c_create_primitive_box (reg , src , t_cbool );
120121 return simplify_env_emit (env , instr );
121122}
122123
@@ -198,23 +199,6 @@ void *simplify_env_emit_check_neg(SimplifyEnv *env, void *src, void *frame_state
198199 return simplify_env_emit (env , instr );
199200}
200201
201- /* ---- simplifyGetLength ----
202- * If obj is a collection with known length field, emit LoadField + PrimitiveBox. */
203- void * simplify_get_length_c (SimplifyEnv * env , const void * instr ) {
204- void * obj = hir_c_get_operand (instr , 0 );
205- void * size = emit_get_length_int64_c (env , obj );
206- if (size == NULL ) return NULL ;
207-
208- void * fs = hir_c_get_frame_state (instr );
209- HirType t_cint64 = HIR_TYPE_CINT64 ;
210- extern void * hir_c_create_primitive_box_reg (void * dst , void * src , HirType type );
211- void * dst_reg = hir_func_alloc_register (env -> func );
212- void * box = hir_c_create_primitive_box_reg (dst_reg , size , t_cint64 );
213- extern void hir_c_copy_frame_state (void * dst , void * src );
214- hir_c_copy_frame_state (box , (void * )instr );
215- return simplify_env_emit (env , box );
216- }
217-
218202/* ---- simplifyStoreSubscr ----
219203 * If target is DictExact, call mp_ass_subscript directly + check_neg. */
220204void * simplify_store_subscr_c (SimplifyEnv * env , const void * instr ) {
0 commit comments