ats_int_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__test_polkind (ats_int_type arg0) { /* local vardec */ ATSlocal (ats_int_type, tmp14) ; ATSlocal (ats_int_type, tmp15) ; ATSlocal (ats_uint_type, tmp16) ; ATSlocal (ats_bool_type, tmp17) ; ATSlocal (ats_bool_type, tmp18) ; __ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__test_polkind: tmp15 = atspre_asl_int_int1 (3, 3) ; tmp16 = atspre_land_uint_uint (ats_castfn_mac(ats_uint_type, arg0), ats_castfn_mac(ats_uint_type, tmp15)) ; tmp17 = atspre_eq_uint_uint (tmp16, 0u) ; if (tmp17) { tmp14 = 0 ; } else { tmp18 = atspre_lt_uint_uint (tmp16, ats_castfn_mac(ats_uint_type, tmp15)) ; if (tmp18) { tmp14 = 1 ; } else { tmp14 = -1 ; } /* end of [if] */ } /* end of [if] */ return (tmp14) ; } /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__test_polkind] */
ats_int_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__impkind_linearize (ats_int_type arg0) { /* local vardec */ ATSlocal (ats_int_type, tmp19) ; ATSlocal (ats_int_type, tmp20) ; ATSlocal (ats_uint_type, tmp21) ; __ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__impkind_linearize: tmp20 = atspre_asl_int_int1 (1, 1) ; tmp21 = atspre_lor_uint_uint (ats_castfn_mac(ats_uint_type, arg0), ats_castfn_mac(ats_uint_type, tmp20)) ; tmp19 = ats_castfn_mac(ats_int_type, tmp21) ; return (tmp19) ; } /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__impkind_linearize] */
ats_bool_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__test_prgmkind (ats_int_type arg0) { /* local vardec */ ATSlocal (ats_bool_type, tmp11) ; ATSlocal (ats_int_type, tmp12) ; ATSlocal (ats_uint_type, tmp13) ; __ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__test_prgmkind: tmp12 = atspre_asl_int_int1 (1, 2) ; tmp13 = atspre_land_uint_uint (ats_castfn_mac(ats_uint_type, arg0), ats_castfn_mac(ats_uint_type, tmp12)) ; tmp11 = atspre_eq_uint_uint (tmp13, 0u) ; return (tmp11) ; } /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__test_prgmkind] */
ats_bool_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__test_linkind (ats_int_type arg0) { /* local vardec */ ATSlocal (ats_bool_type, tmp5) ; ATSlocal (ats_int_type, tmp6) ; ATSlocal (ats_uint_type, tmp7) ; __ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__test_linkind: tmp6 = atspre_asl_int_int1 (1, 1) ; tmp7 = atspre_land_uint_uint (ats_castfn_mac(ats_uint_type, arg0), ats_castfn_mac(ats_uint_type, tmp6)) ; tmp5 = atspre_gt_uint_uint (tmp7, 0u) ; return (tmp5) ; } /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__test_linkind] */
ats_int_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__impkind_neutralize (ats_int_type arg0) { /* local vardec */ ATSlocal (ats_int_type, tmp22) ; ATSlocal (ats_int_type, tmp23) ; ATSlocal (ats_uint_type, tmp24) ; ATSlocal (ats_uint_type, tmp25) ; __ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__impkind_neutralize: tmp23 = atspre_asl_int_int1 (3, 3) ; tmp25 = atspre_lnot_uint (ats_castfn_mac(ats_uint_type, tmp23)) ; tmp24 = atspre_land_uint_uint (ats_castfn_mac(ats_uint_type, arg0), tmp25) ; tmp22 = ats_castfn_mac(ats_int_type, tmp24) ; return (tmp22) ; } /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__impkind_neutralize] */
ats_bool_type _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__lte_impkind_impkind (ats_int_type arg0, ats_int_type arg1) { /* local vardec */ ATSlocal (ats_bool_type, tmp26) ; ATSlocal (ats_int_type, tmp27) ; ATSlocal (ats_uint_type, tmp28) ; ATSlocal (ats_uint_type, tmp29) ; ATSlocal (ats_uint_type, tmp30) ; ATSlocal (ats_uint_type, tmp31) ; ATSlocal (ats_uint_type, tmp32) ; __ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__lte_impkind_impkind: tmp27 = atspre_asl_int_int1 (3, 3) ; tmp28 = atspre_lnot_uint (ats_castfn_mac(ats_uint_type, tmp27)) ; tmp29 = atspre_land_uint_uint (ats_castfn_mac(ats_uint_type, arg0), tmp28) ; tmp30 = atspre_land_uint_uint (ats_castfn_mac(ats_uint_type, arg1), tmp28) ; tmp32 = atspre_lnot_uint (tmp30) ; tmp31 = atspre_land_uint_uint (tmp29, tmp32) ; tmp26 = atspre_eq_uint_uint (tmp31, 0u) ; return (tmp26) ; } /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__lte_impkind_impkind] */
ats_ptr_type ATS_2d0_2e2_2e10_2ccomp_2runtime_2GCATS1_2gcats1_2esats__gc_freeitmlst_generate (ats_int_type arg0) { /* local vardec */ ATSlocal (ats_ptr_type, tmp13) ; // ATSlocal_void (tmp14) ; // ATSlocal_void (tmp15) ; ATSlocal (ats_ptr_type, tmp16) ; ATSlocal (ats_ptr_type, tmp17) ; ATSlocal (ats_bool_type, tmp18) ; // ATSlocal_void (tmp19) ; // ATSlocal_void (tmp20) ; // ATSlocal_void (tmp21) ; // ATSlocal_void (tmp22) ; // ATSlocal_void (tmp23) ; ATSlocal (ats_ptr_type, tmp24) ; ATSlocal (ats_bool_type, tmp25) ; // ATSlocal_void (tmp26) ; ATSlocal (ats_bool_type, tmp27) ; ATSlocal (ats_int_type, tmp28) ; // ATSlocal_void (tmp29) ; // ATSlocal_void (tmp30) ; // ATSlocal_void (tmp31) ; // ATSlocal_void (tmp32) ; // ATSlocal_void (tmp33) ; // ATSlocal_void (tmp34) ; // ATSlocal_void (tmp35) ; // ATSlocal_void (tmp36) ; // ATSlocal_void (tmp37) ; // ATSlocal_void (tmp38) ; // ATSlocal_void (tmp39) ; // ATSlocal_void (tmp40) ; // ATSlocal_void (tmp41) ; // ATSlocal_void (tmp42) ; ATSlocal (ats_ptr_type, tmp43) ; ATSlocal (ats_bool_type, tmp44) ; // ATSlocal_void (tmp45) ; ATSlocal (ats_int_type, tmp46) ; ATSlocal (ats_ptr_type, tmp47) ; // ATSlocal_void (tmp48) ; // ATSlocal_void (tmp49) ; ATSlocal (ats_ptr_type, tmp50) ; ATSlocal (ats_bool_type, tmp51) ; // ATSlocal_void (tmp52) ; // ATSlocal_void (tmp53) ; // ATSlocal_void (tmp54) ; __ats_lab_ATS_2d0_2e2_2e10_2ccomp_2runtime_2GCATS1_2gcats1_2esats__gc_freeitmlst_generate: #line 110 "gcats1_collecting.dats" /* tmp14 = */ the_sweeplst_lock_acquire_one (arg0) ; #line 110 "gcats1_collecting.dats" /* tmp15 = ats_selsin_mac(tmp14, atslab_1) */ ; #line 111 "gcats1_collecting.dats" tmp16 = the_sweeplst_array_get (arg0) ; #line 113 "gcats1_collecting.dats" tmp18 = chunklst_is_cons (tmp16) ; #line 113 "gcats1_collecting.dats" if (tmp18) { #line 113 "gcats1_collecting.dats" tmp17 = tmp16 ; } else { #line 114 "gcats1_collecting.dats" /* tmp19 = */ the_sweeplst_lock_release_one (arg0) ; #line 115 "gcats1_collecting.dats" /* tmp20 = */ gc_main_lock_acquire () ; #line 115 "gcats1_collecting.dats" /* tmp21 = ats_selsin_mac(tmp20, atslab_1) */ ; #line 116 "gcats1_collecting.dats" /* tmp22 = */ the_sweeplst_lock_acquire_one (arg0) ; #line 116 "gcats1_collecting.dats" /* tmp23 = ats_selsin_mac(tmp22, atslab_1) */ ; #line 118 "gcats1_collecting.dats" tmp24 = the_sweeplst_array_get (arg0) ; #line 120 "gcats1_collecting.dats" tmp25 = chunklst_is_cons (tmp24) ; #line 120 "gcats1_collecting.dats" if (tmp25) { #line 121 "gcats1_collecting.dats" /* tmp26 = */ gc_main_lock_release () ; #line 121 "gcats1_collecting.dats" tmp17 = tmp24 ; } else { #line 124 "gcats1_collecting.dats" tmp27 = the_chunk_count_limit_is_not_reached () ; #line 126 "gcats1_collecting.dats" if (tmp27) { #line 127 "gcats1_collecting.dats" tmp28 = atspre_asl_int_int1 (1, arg0) ; #line 127 "gcats1_collecting.dats" tmp17 = chunklst_create_release (arg0, tmp28) ; } else { #line 129 "gcats1_collecting.dats" /* tmp29 = */ the_globalentrylst_lock_acquire () ; #line 129 "gcats1_collecting.dats" /* tmp30 = ats_selsin_mac(tmp29, atslab_1) */ ; #line 130 "gcats1_collecting.dats" /* tmp31 = */ the_manmemlst_lock_acquire () ; #line 130 "gcats1_collecting.dats" /* tmp32 = ats_selsin_mac(tmp31, atslab_1) */ ; #line 131 "gcats1_collecting.dats" /* tmp33 = */ the_threadinfolst_lock_acquire () ; #line 131 "gcats1_collecting.dats" /* tmp34 = ats_selsin_mac(tmp33, atslab_1) */ ; #line 133 "gcats1_collecting.dats" /* tmp35 = */ the_sweeplst_lock_acquire_rest (arg0) ; #line 132 "gcats1_collecting.dats" /* tmp36 = ats_selsin_mac(tmp35, atslab_1) */ ; #line 135 "gcats1_collecting.dats" /* tmp37 = */ gc_collect () ; #line 139 "gcats1_collecting.dats" /* tmp38 = */ the_sweeplst_lock_release_rest (arg0) ; #line 138 "gcats1_collecting.dats" /* tmp39 = ats_selsin_mac(tmp38, atslab_1) */ ; #line 142 "gcats1_collecting.dats" /* tmp40 = */ the_threadinfolst_lock_release () ; #line 143 "gcats1_collecting.dats" /* tmp41 = */ the_manmemlst_lock_release () ; #line 144 "gcats1_collecting.dats" /* tmp42 = */ the_globalentrylst_lock_release () ; #line 145 "gcats1_collecting.dats" tmp43 = the_sweeplst_array_get (arg0) ; #line 152 "gcats1_collecting.dats" tmp44 = chunklst_is_cons (tmp43) ; #line 152 "gcats1_collecting.dats" if (tmp44) { #line 153 "gcats1_collecting.dats" /* tmp45 = */ gc_main_lock_release () ; #line 153 "gcats1_collecting.dats" tmp17 = tmp43 ; } else { #line 155 "gcats1_collecting.dats" tmp46 = atspre_asl_int_int1 (1, arg0) ; #line 155 "gcats1_collecting.dats" tmp17 = chunklst_create_release (arg0, tmp46) ; } /* end of [if] */ } /* end of [if] */ } /* end of [if] */ } /* end of [if] */ #line 166 "gcats1_collecting.dats" tmp47 = chunklst_sweep_next_get (tmp17) ; #line 167 "gcats1_collecting.dats" /* tmp48 = */ the_sweeplst_array_set (arg0, tmp47) ; #line 168 "gcats1_collecting.dats" /* tmp49 = */ the_sweeplst_lock_release_one (arg0) ; #line 169 "gcats1_collecting.dats" tmp50 = gc_chunk_threading (tmp17) ; #line 176 "gcats1_collecting.dats" tmp51 = freeitmlst_is_nil (tmp50) ; #line 176 "gcats1_collecting.dats" if (tmp51) { #line 177 "gcats1_collecting.dats" /* tmp52 = */ atspre_prerr_string (ATSstrcst("GC: Fatal Error")) ; #line 178 "gcats1_collecting.dats" /* tmp53 = */ atspre_prerr_string (ATSstrcst(": [gc_freeitmlst_generate]: the generated freeitmlst is nil")) ; #line 179 "gcats1_collecting.dats" /* tmp54 = */ atspre_prerr_newline () ; #line 180 "gcats1_collecting.dats" /* tmp13 = */ ats_exit (1) ; } else { #line 182 "gcats1_collecting.dats" tmp13 = tmp50 ; } /* end of [if] */ return (tmp13) ; } /* end of [ATS_2d0_2e2_2e10_2ccomp_2runtime_2GCATS1_2gcats1_2esats__gc_freeitmlst_generate] */