ats_void_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_namespace_2esats__the_namespace_save () {
/* local vardec */
// ATSlocal_void (tmp62) ;
ATSlocal (ats_ptr_type, tmp63) ;
ATSlocal (ats_ptr_type, tmp64) ;
ATSlocal (ats_ptr_type, tmp65) ;
ATSlocal (ats_ptr_type, tmp66) ;
ATSlocal (ats_ptr_type, tmp67) ;
ATSlocal (ats_ptr_type, tmp68) ;
ATSlocal (ats_ptr_type, tmp69) ;
ATSlocal (ats_ptr_type, tmp70) ;
ATSlocal (anairiats_rec_2, tmp71) ;
ATSlocal (ats_ptr_type, tmp72) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_namespace_2esats__the_namespace_save:
tmp63 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp8), atslab_1) ;
tmp64 = ats_ptrget_mac(ats_ptr_type, tmp63) ;
tmp65 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, tmp63) = tmp65 ;
tmp66 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp12), atslab_1) ;
tmp67 = ats_ptrget_mac(ats_ptr_type, tmp66) ;
tmp68 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, tmp66) = tmp68 ;
tmp69 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp14), atslab_1) ;
tmp71.atslab_0 = tmp64 ;
tmp71.atslab_1 = tmp67 ;

tmp72 = ats_ptrget_mac(ats_ptr_type, tmp69) ;
tmp70 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp70, atslab_0, tmp71) ;
ats_selptrset_mac(anairiats_sum_3, tmp70, atslab_1, tmp72) ;
ats_ptrget_mac(ats_ptr_type, tmp69) = tmp70 ;
return /* (tmp62) */ ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_namespace_2esats__the_namespace_save] */
ats_void_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_symenv_2esats__symenv_savecur (ats_ref_type arg0) {
/* local vardec */
// ATSlocal_void (tmp41) ;
ATSlocal (ats_ptr_type, tmp42) ;
ATSlocal (ats_ptr_type, tmp43) ;
ATSlocal (ats_ptr_type, tmp44) ;
ATSlocal (ats_ptr_type, tmp45) ;
ATSlocal (ats_ptr_type, tmp46) ;
ATSlocal (anairiats_rec_3, tmp47) ;
ATSlocal (ats_ptr_type, tmp48) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_symenv_2esats__symenv_savecur:
tmp42 = ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_map) ;
tmp43 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_symmap_2esats__symmap_make_nil () ;
ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_map) = tmp43 ;
tmp44 = ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_maplst) ;
tmp45 = (ats_sum_ptr_type)0 ;
ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_maplst) = tmp45 ;
tmp47.atslab_0 = tmp42 ;
tmp47.atslab_1 = tmp44 ;

tmp48 = ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_savedlst) ;
tmp46 = ATS_MALLOC(sizeof(anairiats_sum_4)) ;
ats_selptrset_mac(anairiats_sum_4, tmp46, atslab_0, tmp47) ;
ats_selptrset_mac(anairiats_sum_4, tmp46, atslab_1, tmp48) ;
ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_savedlst) = tmp46 ;
return /* (tmp41) */ ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_symenv_2esats__symenv_savecur] */
ats_void_type
_2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symenv_push (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp12) ;
ATSlocal (ats_ptr_type, tmp13) ;
ATSlocal (ats_ptr_type, tmp14) ;
ATSlocal (ats_ptr_type, tmp15) ;
ATSlocal (ats_ptr_type, tmp16) ;
ATSlocal (ats_ptr_type, tmp17) ;
ATSlocal (ats_ptr_type, tmp18) ;
ATSlocal (ats_ptr_type, tmp19) ;
ATSlocal (ats_ptr_type, tmp20) ;
ATSlocal (ats_ptr_type, tmp21) ;
ATSlocal (ats_ptr_type, tmp22) ;

__ats_lab__2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symenv_push:
tmp14 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_map) ;
tmp13 = atspre_ref_get_view_ptr (tmp14) ;
tmp15 = ats_selsin_mac(tmp13, atslab_1) ;
tmp16 = ats_ptrget_mac(ats_ptr_type, tmp15) ;
tmp17 = _2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symmap_make () ;
ats_ptrget_mac(ats_ptr_type, tmp15) = tmp17 ;
tmp19 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_maplst) ;
tmp18 = atspre_ref_get_view_ptr (tmp19) ;
tmp20 = ats_selsin_mac(tmp18, atslab_1) ;
tmp22 = ats_ptrget_mac(ats_ptr_type, tmp20) ;
tmp21 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
ats_selptrset_mac(anairiats_sum_1, tmp21, atslab_0, tmp16) ;
ats_selptrset_mac(anairiats_sum_1, tmp21, atslab_1, tmp22) ;
ats_ptrget_mac(ats_ptr_type, tmp20) = tmp21 ;
return /* (tmp12) */ ;
} /* end of [_2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symenv_push] */
ats_ptr_type
_2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symenv_make () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp1) ;
ATSlocal (ats_ptr_type, tmp2) ;
ATSlocal (ats_ptr_type, tmp5) ;
ATSlocal (ats_ptr_type, tmp6) ;
ATSlocal (ats_ptr_type, tmp7) ;
ATSlocal (ats_ptr_type, tmp8) ;
ATSlocal (ats_ptr_type, tmp9) ;
ATSlocal (ats_ptr_type, tmp10) ;
ATSlocal (ats_ptr_type, tmp11) ;

__ats_lab__2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symenv_make:
tmp5 = _2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symmap_make () ;
tmp2 = ref_make_elt_02048_ats_ptr_type (tmp5) ;
tmp7 = (ats_sum_ptr_type)0 ;
tmp6 = ref_make_elt_02048_ats_ptr_type (tmp7) ;
tmp9 = (ats_sum_ptr_type)0 ;
tmp8 = ref_make_elt_02048_ats_ptr_type (tmp9) ;
tmp11 = (ats_sum_ptr_type)0 ;
tmp10 = ref_make_elt_02048_ats_ptr_type (tmp11) ;
tmp1 = ATS_MALLOC(sizeof(anairiats_rec_0)) ;
ats_selptrset_mac(anairiats_rec_0, tmp1, atslab_map, tmp2) ;
ats_selptrset_mac(anairiats_rec_0, tmp1, atslab_maplst, tmp6) ;
ats_selptrset_mac(anairiats_rec_0, tmp1, atslab_savedlst, tmp8) ;
ats_selptrset_mac(anairiats_rec_0, tmp1, atslab_pervasive, tmp10) ;

return (tmp1) ;
} /* end of [_2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symenv_make] */
ats_ptr_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_caseof_2edats__hidexplst_ccompv (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp0) ;
ATSlocal (ats_ptr_type, tmp1) ;
ATSlocal (ats_ptr_type, tmp2) ;
ATSlocal (ats_ptr_type, tmp3) ;
ATSlocal (ats_ptr_type, tmp4) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_caseof_2edats__hidexplst_ccompv:
do {
/* branch: __ats_lab_0 */
__ats_lab_0_0:
if (arg2 == (ats_sum_ptr_type)0) { goto __ats_lab_1_0 ; }
__ats_lab_0_1:
tmp1 = ats_caselptrlab_mac(anairiats_sum_0, arg2, atslab_0) ;
tmp2 = ats_caselptrlab_mac(anairiats_sum_0, arg2, atslab_1) ;
tmp3 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hidexp_ccompv (arg0, arg1, tmp1) ;
tmp4 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_caseof_2edats__hidexplst_ccompv (arg0, arg1, tmp2) ;
tmp0 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp0, atslab_0, tmp3) ;
ats_selptrset_mac(anairiats_sum_0, tmp0, atslab_1, tmp4) ;
break ;

/* branch: __ats_lab_1 */
__ats_lab_1_0:
// if (arg2 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_1_1:
tmp0 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp0) ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_caseof_2edats__hidexplst_ccompv] */
ats_void_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hidexp_ccomp_ret_case (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp5) ;
ATSlocal (ats_ptr_type, tmp6) ;
ATSlocal (ats_ptr_type, tmp7) ;
ATSlocal (ats_ptr_type, tmp8) ;
ATSlocal (ats_ptr_type, tmp9) ;
ATSlocal (ats_ptr_type, tmp10) ;
ATSlocal (ats_ptr_type, tmp11) ;
ATSlocal (ats_ptr_type, tmp12) ;
ATSlocal (ats_int_type, tmp13) ;
ATSlocal (ats_ptr_type, tmp14) ;
ATSlocal (ats_ptr_type, tmp15) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hidexp_ccomp_ret_case:
tmp6 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_1, arg3), atslab_hidexp_loc) ;
tmp7 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_1, arg3), atslab_hidexp_node) ;
if (((ats_sum_ptr_type)tmp7)->tag != 27) { ats_caseof_failure_handle ("/home/hwxi/research/Postiats/git/src/pats_ccomp_caseof.dats: 2230(line=85, offs=5) -- 2277(line=86, offs=40)") ; }
tmp8 = ats_caselptrlab_mac(anairiats_sum_2, tmp7, atslab_0) ;
tmp9 = ats_caselptrlab_mac(anairiats_sum_2, tmp7, atslab_1) ;
tmp10 = ats_caselptrlab_mac(anairiats_sum_2, tmp7, atslab_2) ;
tmp11 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_caseof_2edats__hidexplst_ccompv (arg0, arg1, tmp9) ;
do {
/* branch: __ats_lab_2 */
__ats_lab_2_0:
if (((ats_sum_ptr_type)tmp8)->tag != 1) { goto __ats_lab_3_0 ; }
__ats_lab_2_1:
tmp12 = (ats_sum_ptr_type)(&_2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__PTCKNTnone_0) ;
break ;

/* branch: __ats_lab_3 */
__ats_lab_3_0:
if (((ats_sum_ptr_type)tmp8)->tag != 0) { goto __ats_lab_4_0 ; }
__ats_lab_3_1:
tmp12 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
((ats_sum_ptr_type)tmp12)->tag = 4 ;
ats_selptrset_mac(anairiats_sum_3, tmp12, atslab_0, tmp6) ;
break ;

/* branch: __ats_lab_4 */
__ats_lab_4_0:
// if (((ats_sum_ptr_type)tmp8)->tag != 2) { ats_deadcode_failure_handle () ; }
__ats_lab_4_1:
tmp12 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
((ats_sum_ptr_type)tmp12)->tag = 4 ;
ats_selptrset_mac(anairiats_sum_3, tmp12, atslab_0, tmp6) ;
break ;
} while (0) ;
tmp13 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_trans2_env_2esats__the_d2varlev_get () ;
tmp14 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hiclaulst_ccomp (arg0, tmp13, tmp11, tmp10, arg2, tmp12) ;
tmp15 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__instr_caseof (tmp6, tmp14) ;
/* tmp5 = */ _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__instrseq_add (arg1, tmp15) ;
return /* (tmp5) */ ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hidexp_ccomp_ret_case] */
ats_void_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hidexp_ccomp_ret_trywith (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3) {
/* local vardec */
// ATSlocal_void (tmp0) ;
ATSlocal (ats_ptr_type, tmp1) ;
ATSlocal (ats_int_type, tmp2) ;
ATSlocal (ats_ptr_type, tmp3) ;
ATSlocal (ats_ptr_type, tmp4) ;
ATSlocal (ats_ptr_type, tmp5) ;
ATSlocal (ats_ptr_type, tmp6) ;
ATSlocal (ats_ptr_type, tmp7) ;
ATSlocal (ats_ptr_type, tmp8) ;
// ATSlocal_void (tmp9) ;
// ATSlocal_void (tmp10) ;
// ATSlocal_void (tmp11) ;
// ATSlocal_void (tmp12) ;
ATSlocal (ats_ptr_type, tmp13) ;
ATSlocal (ats_ptr_type, tmp14) ;
ATSlocal (ats_ptr_type, tmp15) ;
ATSlocal (ats_ptr_type, tmp16) ;
ATSlocal (ats_ptr_type, tmp17) ;
ATSlocal (ats_ptr_type, tmp18) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hidexp_ccomp_ret_trywith:
tmp1 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_1, arg3), atslab_hidexp_loc) ;
tmp2 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_trans2_env_2esats__the_d2varlev_get () ;
tmp3 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_1, arg3), atslab_hidexp_node) ;
if (((ats_sum_ptr_type)tmp3)->tag != 52) { ats_caseof_failure_handle ("/home/hwxi/research/Postiats/git/src/pats_ccomp_trywith.dats: 1818(line=63, offs=5) -- 1871(line=64, offs=43)") ; }
tmp4 = ats_caselptrlab_mac(anairiats_sum_2, tmp3, atslab_0) ;
tmp5 = ats_caselptrlab_mac(anairiats_sum_2, tmp3, atslab_1) ;
tmp6 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__tmpvar_make (tmp1, _2home_2hwxi_2research_2Postiats_2git_2src_2pats_histaexp_2esats__hisexp_exnconptr) ;
tmp7 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__primval_make_tmp (tmp1, tmp6) ;
tmp8 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__instrseq_make_nil () ;
/* tmp9 = */ _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__ccompenv_push (arg0) ;
/* tmp10 = ats_selsin_mac(tmp9, atslab_1) */ ;
/* tmp11 = */ _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hidexp_ccomp_ret (arg0, tmp8, arg2, tmp4) ;
/* tmp12 = */ _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__ccompenv_pop (arg0) ;
tmp13 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__instrseq_get_free (tmp8) ;
tmp14 = ATS_MALLOC(sizeof(anairiats_sum_2)) ;
((ats_sum_ptr_type)tmp14)->tag = 6 ;
ats_selptrset_mac(anairiats_sum_2, tmp14, atslab_0, arg2) ;
ats_selptrset_mac(anairiats_sum_2, tmp14, atslab_1, tmp7) ;
tmp17 = (ats_sum_ptr_type)0 ;
tmp16 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp16, atslab_0, tmp7) ;
ats_selptrset_mac(anairiats_sum_3, tmp16, atslab_1, tmp17) ;
tmp15 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hiclaulst_ccomp (arg0, tmp2, tmp16, tmp5, arg2, tmp14) ;
tmp18 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__instr_trywith (tmp1, tmp6, tmp13, tmp15) ;
/* tmp0 = */ _2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__instrseq_add (arg1, tmp18) ;
return /* (tmp0) */ ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_ccomp_2esats__hidexp_ccomp_ret_trywith] */
ats_void_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_global_2esats__the_IATS_dirlst_ppush (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp31) ;
ATSlocal (ats_ptr_type, tmp32) ;
ATSlocal (ats_ptr_type, tmp33) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_global_2esats__the_IATS_dirlst_ppush:
tmp32 = ats_ptrget_mac(ats_ptr_type, statmp28) ;
tmp33 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
ats_selptrset_mac(anairiats_sum_1, tmp33, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_1, tmp33, atslab_1, tmp32) ;
ats_ptrget_mac(ats_ptr_type, statmp28) = tmp33 ;
return /* (tmp31) */ ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_global_2esats__the_IATS_dirlst_ppush] */
ats_ptr_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_parsing_2esats__parse_from_string (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp0) ;
ATSlocal (pats_tokbuf_struct, tmp1) ;
// ATSlocal_void (tmp2) ;
ATSlocal (ats_int_type, tmp3) ;
ATSlocal (ats_ptr_type, tmp4) ;
ATSlocal (ats_ptr_type, tmp5) ;
// ATSlocal_void (tmp6) ;
ATSlocal (ats_bool_type, tmp7) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_parsing_2esats__parse_from_string:
/* pats_tokbuf_struct tmp1 ; */
/* tmp2 = */ _2home_2hwxi_2research_2Postiats_2git_2src_2pats_tokbuf_2esats__tokbuf_initialize_string ((&tmp1), arg0) ;
/* ats_int_type tmp3 ; */
tmp3 = 0 ;
tmp4 = ((ats_ptr_type(*)(ats_ref_type, ats_int_type, ats_ref_type))arg1) ((&tmp1), 0, (&tmp3)) ;
tmp5 = _2home_2hwxi_2research_2Postiats_2git_2src_2pats_parsing_2esats__p_EOF ((&tmp1), 0, (&tmp3)) ;
/* tmp6 = */ _2home_2hwxi_2research_2Postiats_2git_2src_2pats_tokbuf_2esats__tokbuf_uninitialize ((&tmp1)) ;
tmp7 = atspre_eq_int_int (tmp3, 0) ;
if (tmp7) {
tmp0 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp0, atslab_0, tmp4) ;
} else {
tmp0 = (ats_sum_ptr_type)0 ;
} /* end of [if] */
return (tmp0) ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_parsing_2esats__parse_from_string] */
ats_ptr_type
_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_get_int (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp6) ;
ATSlocal (ats_int_type, tmp7) ;

__ats_lab__2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_get_int:
do {
/* branch: __ats_lab_2 */
__ats_lab_2_0:
if (((ats_sum_ptr_type)arg0)->tag != 0) { goto __ats_lab_3_0 ; }
__ats_lab_2_1:
tmp7 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_0) ;
tmp6 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp6, atslab_0, tmp7) ;
break ;

/* branch: __ats_lab_3 */
__ats_lab_3_0:
// if (((ats_sum_ptr_type)arg0)->tag != 1) { ats_deadcode_failure_handle () ; }
__ats_lab_3_1:
tmp6 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp6) ;
} /* end of [_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_get_int] */
ats_ptr_type
_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_get_sym (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp4) ;
ATSlocal (ats_ptr_type, tmp5) ;

__ats_lab__2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_get_sym:
do {
/* branch: __ats_lab_0 */
__ats_lab_0_0:
if (((ats_sum_ptr_type)arg0)->tag != 1) { goto __ats_lab_1_0 ; }
__ats_lab_0_1:
tmp5 = ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_0) ;
tmp4 = ATS_MALLOC(sizeof(anairiats_sum_2)) ;
ats_selptrset_mac(anairiats_sum_2, tmp4, atslab_0, tmp5) ;
break ;

/* branch: __ats_lab_1 */
__ats_lab_1_0:
// if (((ats_sum_ptr_type)arg0)->tag != 0) { ats_deadcode_failure_handle () ; }
__ats_lab_1_1:
tmp4 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp4) ;
} /* end of [_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_get_sym] */
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_s2cstbindlst_bind_and_add (ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) {
    /* local vardec */
// ATSlocal_void (tmp21) ;
    ATSlocal (ats_ptr_type, tmp22) ;
    ATSlocal (ats_bool_type, tmp23) ;
// ATSlocal_void (tmp24) ;
// ATSlocal_void (tmp25) ;
// ATSlocal_void (tmp28) ;
// ATSlocal_void (tmp29) ;
// ATSlocal_void (tmp30) ;
// ATSlocal_void (tmp31) ;
    ATSlocal (ats_ptr_type, tmp32) ;
// ATSlocal_void (tmp33) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_s2cstbindlst_bind_and_add:
    tmp22 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_util_2esats__s2hnf2exp (arg2) ;
    tmp23 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_get_isasp (arg1) ;
    if (tmp23) {
        /* tmp25 = */ prerr_warning3_loc_02052_ (arg0) ;
        /* tmp28 = */ atspre_prerr_string (ATSstrcst(": the static constant [")) ;
        /* tmp29 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__prerr_s2cst (arg1) ;
        /* tmp30 = */ atspre_prerr_string (ATSstrcst("] is not abstract at this point.")) ;
        /* tmp24 = */ atspre_prerr_newline () ;
    } else {
        /* empty */
    } /* end of [if] */
    tmp32 = ATS_MALLOC(sizeof(anairiats_sum_2)) ;
    ats_selptrset_mac(anairiats_sum_2, tmp32, atslab_0, tmp22) ;
    /* tmp31 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_def (arg1, tmp32) ;
    /* tmp33 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_staexp2_2esats__s2cst_set_isasp (arg1, ats_true_bool) ;
    /* tmp21 = */ _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_s2cstbindlst_add (arg1) ;
    return /* (tmp21) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_s2cstbindlst_bind_and_add] */
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rtopt_tr (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp75) ;
ATSlocal (ats_ptr_type, tmp76) ;
ATSlocal (ats_ptr_type, tmp77) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rtopt_tr:
do {
/* branch: __ats_lab_17 */
__ats_lab_17_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_18_0 ; }
__ats_lab_17_1:
tmp76 = ats_caselptrlab_mac(anairiats_sum_6, arg0, atslab_0) ;
tmp77 = _2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rt_tr (tmp76) ;
tmp75 = ATS_MALLOC(sizeof(anairiats_sum_6)) ;
ats_selptrset_mac(anairiats_sum_6, tmp75, atslab_0, tmp77) ;
break ;

/* branch: __ats_lab_18 */
__ats_lab_18_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_18_1:
tmp75 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp75) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans2_2esats__s1rtopt_tr] */
예제 #14
0
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_label_2esats__label_get_sym (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp8) ;
ATSlocal (ats_ptr_type, tmp9) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_label_2esats__label_get_sym:
do {
/* branch: __ats_lab_6 */
__ats_lab_6_0:
if (((ats_sum_ptr_type)arg0)->tag != 1) { goto __ats_lab_7_0 ; }
__ats_lab_6_1:
tmp9 = ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_0) ;
tmp8 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp8, atslab_0, tmp9) ;
break ;

/* branch: __ats_lab_7 */
__ats_lab_7_0:
__ats_lab_7_1:
tmp8 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp8) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_label_2esats__label_get_sym] */
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_lamlpenv_top () {
/* local vardec */
ATSlocal (ats_ptr_type, tmp5) ;
ATSlocal (ats_ptr_type, tmp6) ;
ATSlocal (ats_ptr_type, tmp7) ;
ATSlocal (ats_ptr_type, tmp8) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_lamlpenv_top:
tmp6 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp1), atslab_1) ;
tmp7 = ats_ptrget_mac(ats_ptr_type, tmp6) ;
do {
/* branch: __ats_lab_0 */
__ats_lab_0_0:
if (tmp7 == (ats_sum_ptr_type)0) { goto __ats_lab_1_0 ; }
__ats_lab_0_1:
tmp8 = ats_caselptrlab_mac(anairiats_sum_1, tmp7, atslab_0) ;
tmp5 = ATS_MALLOC(sizeof(anairiats_sum_2)) ;
ats_selptrset_mac(anairiats_sum_2, tmp5, atslab_0, tmp8) ;
break ;

/* branch: __ats_lab_1 */
__ats_lab_1_0:
// if (tmp7 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_1_1:
tmp5 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp5) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_lamlpenv_top] */
예제 #16
0
ats_ptr_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_label_2esats__label_get_int (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp5) ;
ATSlocal (ats_int_type, tmp6) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_label_2esats__label_get_int:
do {
/* branch: __ats_lab_2 */
__ats_lab_2_0:
if (((ats_sum_ptr_type)arg0)->tag != 0) { goto __ats_lab_3_0 ; }
__ats_lab_2_1:
tmp6 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_0) ;
tmp5 = ATS_MALLOC(sizeof(anairiats_sum_2)) ;
ats_selptrset_mac(anairiats_sum_2, tmp5, atslab_0, tmp6) ;
break ;

/* branch: __ats_lab_3 */
__ats_lab_3_0:
__ats_lab_3_1:
tmp5 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp5) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_label_2esats__label_get_int] */
ats_ptr_type
_2opt_2ats_2d0_2e2_2e9_2src_2ats_remote_2esats__download_file (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp0) ;
ATSlocal (ats_ptr_type, tmp1) ;
ATSlocal (ats_ptr_type, tmp2) ;
ATSlocal (ats_ptr_type, tmp3) ;
// ATSlocal_void (tmp4) ;
ATSlocal (ats_ptr_type, tmp5) ;
ATSlocal (ats_bool_type, tmp6) ;

__ats_lab__2opt_2ats_2d0_2e2_2e9_2src_2ats_remote_2esats__download_file:
tmp1 = atsopt_ATSHOME_getenv_exn () ;
tmp2 = atsopt_filename_append (tmp1, ATSstrcst(".remote")) ;
tmp3 = atsopt_get_relative_url (arg0) ;
/* tmp4 = */ atsopt_encode_path (tmp3) ;
tmp5 = atsopt_filename_append (tmp2, tmp3) ;
tmp6 = atsopt_download_file_to_remote (arg0, tmp5) ;
if (tmp6) {
tmp0 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_selptrset_mac(anairiats_sum_0, tmp0, atslab_0, tmp5) ;
} else {
tmp0 = (ats_sum_ptr_type)0 ;
} /* end of [if] */
return (tmp0) ;
} /* end of [_2opt_2ats_2d0_2e2_2e9_2src_2ats_remote_2esats__download_file] */
ats_void_type
_2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symenv_save (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp31) ;
ATSlocal (ats_ptr_type, tmp32) ;
ATSlocal (ats_ptr_type, tmp33) ;
ATSlocal (ats_ptr_type, tmp34) ;
ATSlocal (ats_ptr_type, tmp35) ;
ATSlocal (ats_ptr_type, tmp36) ;
ATSlocal (ats_ptr_type, tmp37) ;
ATSlocal (ats_ptr_type, tmp38) ;
ATSlocal (ats_ptr_type, tmp39) ;
ATSlocal (ats_ptr_type, tmp40) ;
ATSlocal (ats_ptr_type, tmp41) ;
ATSlocal (ats_ptr_type, tmp42) ;
ATSlocal (ats_ptr_type, tmp43) ;
ATSlocal (ats_ptr_type, tmp44) ;
ATSlocal (ats_ptr_type, tmp45) ;
ATSlocal (anairiats_rec_2, tmp46) ;
ATSlocal (ats_ptr_type, tmp47) ;

__ats_lab__2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symenv_save:
tmp33 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_map) ;
tmp32 = atspre_ref_get_view_ptr (tmp33) ;
tmp34 = ats_selsin_mac(tmp32, atslab_1) ;
tmp35 = ats_ptrget_mac(ats_ptr_type, tmp34) ;
tmp36 = _2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symmap_make () ;
ats_ptrget_mac(ats_ptr_type, tmp34) = tmp36 ;
tmp38 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_maplst) ;
tmp37 = atspre_ref_get_view_ptr (tmp38) ;
tmp39 = ats_selsin_mac(tmp37, atslab_1) ;
tmp40 = ats_ptrget_mac(ats_ptr_type, tmp39) ;
tmp41 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, tmp39) = tmp41 ;
tmp43 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_savedlst) ;
tmp42 = atspre_ref_get_view_ptr (tmp43) ;
tmp44 = ats_selsin_mac(tmp42, atslab_1) ;
tmp46.atslab_0 = tmp35 ;
tmp46.atslab_1 = tmp40 ;

tmp47 = ats_ptrget_mac(ats_ptr_type, tmp44) ;
tmp45 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp45, atslab_0, tmp46) ;
ats_selptrset_mac(anairiats_sum_3, tmp45, atslab_1, tmp47) ;
ats_ptrget_mac(ats_ptr_type, tmp44) = tmp45 ;
return /* (tmp31) */ ;
} /* end of [_2opt_2ats_2d0_2e2_2e9_2src_2ats_symenv_2esats__symenv_save] */
ats_ptr_type
aux_19 (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp137) ;
ATSlocal (ats_uint_type, tmp138) ;
ATSlocal (ats_ptr_type, tmp139) ;
ATSlocal (ats_ptr_type, tmp140) ;
ATSlocal (ats_ptr_type, tmp141) ;
ATSlocal (ats_ptr_type, tmp142) ;
ATSlocal (ats_ptr_type, tmp143) ;
ATSlocal (ats_ptr_type, tmp144) ;
ATSlocal (anairiats_rec_2, tmp145) ;
ATSlocal (ats_ptr_type, tmp146) ;

__ats_lab_aux_19:
do {
/* branch: __ats_lab_13 */
__ats_lab_13_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_14_0 ; }
__ats_lab_13_1:
tmp138 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_1) ;
tmp139 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_2) ;
tmp140 = &ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_3) ;
tmp141 = &ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_4) ;
tmp143 = ats_ptrget_mac(ats_ptr_type, tmp141) ;
tmp142 = aux_19 (tmp143, arg1) ;
tmp145.atslab_0 = tmp138 ;
tmp145.atslab_1 = tmp139 ;

tmp144 = ATS_MALLOC(sizeof(anairiats_sum_3)) ;
ats_selptrset_mac(anairiats_sum_3, tmp144, atslab_0, tmp145) ;
ats_selptrset_mac(anairiats_sum_3, tmp144, atslab_1, tmp142) ;
tmp146 = ats_ptrget_mac(ats_ptr_type, tmp140) ;
arg0 = tmp146 ;
arg1 = tmp144 ;
goto __ats_lab_aux_19 ; // tail call
break ;

/* branch: __ats_lab_14 */
__ats_lab_14_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_14_1:
tmp137 = arg1 ;
break ;
} while (0) ;
return (tmp137) ;
} /* end of [aux_19] */
ats_void_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_namespace_2esats__the_namespace_add (ats_ptr_type arg0) {
/* local vardec */
// ATSlocal_void (tmp16) ;
ATSlocal (ats_ptr_type, tmp17) ;
ATSlocal (ats_ptr_type, tmp18) ;
ATSlocal (ats_ptr_type, tmp19) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_namespace_2esats__the_namespace_add:
tmp17 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp8), atslab_1) ;
tmp19 = ats_ptrget_mac(ats_ptr_type, tmp17) ;
tmp18 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
ats_selptrset_mac(anairiats_sum_1, tmp18, atslab_0, arg0) ;
ats_selptrset_mac(anairiats_sum_1, tmp18, atslab_1, tmp19) ;
ats_ptrget_mac(ats_ptr_type, tmp17) = tmp18 ;
return /* (tmp16) */ ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_namespace_2esats__the_namespace_add] */
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_s2cstbindlst_add (ats_ptr_type arg0) {
    /* local vardec */
// ATSlocal_void (tmp8) ;
    ATSlocal (ats_ptr_type, tmp9) ;
    ATSlocal (ats_ptr_type, tmp10) ;
    ATSlocal (ats_ptr_type, tmp11) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_s2cstbindlst_add:
    tmp9 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp1), atslab_1) ;
    tmp11 = ats_ptrget_mac(ats_ptr_type, tmp9) ;
    tmp10 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
    ats_selptrset_mac(anairiats_sum_1, tmp10, atslab_0, arg0) ;
    ats_selptrset_mac(anairiats_sum_1, tmp10, atslab_1, tmp11) ;
    ats_ptrget_mac(ats_ptr_type, tmp9) = tmp10 ;
    return /* (tmp8) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_s2cstbindlst_add] */
ats_ptr_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_make_fil_pos_pos (ats_ptr_type arg0, pats_position_struct arg1, pats_position_struct arg2) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp81) ;
ATSlocal (ats_lint_type, tmp82) ;
ATSlocal (ats_int_type, tmp83) ;
ATSlocal (ats_int_type, tmp84) ;
ATSlocal (ats_lint_type, tmp85) ;
ATSlocal (ats_int_type, tmp86) ;
ATSlocal (ats_int_type, tmp87) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_make_fil_pos_pos:
tmp82 = ats_select_mac(arg1, ntot) ;
tmp83 = ats_select_mac(arg1, nrow) ;
tmp84 = ats_select_mac(arg1, ncol) ;
tmp85 = ats_select_mac(arg2, ntot) ;
tmp86 = ats_select_mac(arg2, nrow) ;
tmp87 = ats_select_mac(arg2, ncol) ;
tmp81 = ATS_MALLOC(sizeof(anairiats_rec_0)) ;
ats_selptrset_mac(anairiats_rec_0, tmp81, atslab_filename, arg0) ;
ats_selptrset_mac(anairiats_rec_0, tmp81, atslab_beg_ntot, tmp82) ;
ats_selptrset_mac(anairiats_rec_0, tmp81, atslab_beg_nrow, tmp83) ;
ats_selptrset_mac(anairiats_rec_0, tmp81, atslab_beg_ncol, tmp84) ;
ats_selptrset_mac(anairiats_rec_0, tmp81, atslab_end_ntot, tmp85) ;
ats_selptrset_mac(anairiats_rec_0, tmp81, atslab_end_nrow, tmp86) ;
ats_selptrset_mac(anairiats_rec_0, tmp81, atslab_end_ncol, tmp87) ;

return (tmp81) ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_make_fil_pos_pos] */
ats_ptr_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_rightmost (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp96) ;
ATSlocal (ats_ptr_type, tmp97) ;
ATSlocal (ats_lint_type, tmp98) ;
ATSlocal (ats_int_type, tmp99) ;
ATSlocal (ats_int_type, tmp100) ;
ATSlocal (ats_lint_type, tmp101) ;
ATSlocal (ats_int_type, tmp102) ;
ATSlocal (ats_int_type, tmp103) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_rightmost:
tmp97 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_filename) ;
tmp98 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_end_ntot) ;
tmp99 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_end_nrow) ;
tmp100 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_end_ncol) ;
tmp101 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_end_ntot) ;
tmp102 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_end_nrow) ;
tmp103 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_end_ncol) ;
tmp96 = ATS_MALLOC(sizeof(anairiats_rec_0)) ;
ats_selptrset_mac(anairiats_rec_0, tmp96, atslab_filename, tmp97) ;
ats_selptrset_mac(anairiats_rec_0, tmp96, atslab_beg_ntot, tmp98) ;
ats_selptrset_mac(anairiats_rec_0, tmp96, atslab_beg_nrow, tmp99) ;
ats_selptrset_mac(anairiats_rec_0, tmp96, atslab_beg_ncol, tmp100) ;
ats_selptrset_mac(anairiats_rec_0, tmp96, atslab_end_ntot, tmp101) ;
ats_selptrset_mac(anairiats_rec_0, tmp96, atslab_end_nrow, tmp102) ;
ats_selptrset_mac(anairiats_rec_0, tmp96, atslab_end_ncol, tmp103) ;

return (tmp96) ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_rightmost] */
ats_void_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2edats__dynload () {
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2edats__dynload_flag = 1 ;
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2edats__staload () ;

#ifdef _ATS_PROOFCHECK
#endif /* _ATS_PROOFCHECK */

/* marking static variables for GC */
ATS_GC_MARKROOT(&statmp78, sizeof(ats_ptr_type)) ;

/* marking external values for GC */

/* code for dynamic loading */
statmp78 = ATS_MALLOC(sizeof(anairiats_rec_0)) ;
ats_selptrset_mac(anairiats_rec_0, statmp78, atslab_filename, _2home_2hwxi_2research_2Postiats_2git_2src_2pats_filename_2esats__filename_dummy) ;
ats_selptrset_mac(anairiats_rec_0, statmp78, atslab_beg_ntot, -1L) ;
ats_selptrset_mac(anairiats_rec_0, statmp78, atslab_beg_nrow, -1) ;
ats_selptrset_mac(anairiats_rec_0, statmp78, atslab_beg_ncol, -1) ;
ats_selptrset_mac(anairiats_rec_0, statmp78, atslab_end_ntot, -1L) ;
ats_selptrset_mac(anairiats_rec_0, statmp78, atslab_end_nrow, -1) ;
ats_selptrset_mac(anairiats_rec_0, statmp78, atslab_end_ncol, -1) ;

ATS_GC_MARKROOT(&_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_dummy, sizeof(ats_ptr_type)) ;
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_dummy = statmp78 ;
return ;
} /* end of [dynload function] */
ats_ptr_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_leftmost (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp88) ;
ATSlocal (ats_ptr_type, tmp89) ;
ATSlocal (ats_lint_type, tmp90) ;
ATSlocal (ats_int_type, tmp91) ;
ATSlocal (ats_int_type, tmp92) ;
ATSlocal (ats_lint_type, tmp93) ;
ATSlocal (ats_int_type, tmp94) ;
ATSlocal (ats_int_type, tmp95) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_leftmost:
tmp89 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_filename) ;
tmp90 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_beg_ntot) ;
tmp91 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_beg_nrow) ;
tmp92 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_beg_ncol) ;
tmp93 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_beg_ntot) ;
tmp94 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_beg_nrow) ;
tmp95 = ats_selbox_mac(ats_castptr_mac(anairiats_rec_0, arg0), atslab_beg_ncol) ;
tmp88 = ATS_MALLOC(sizeof(anairiats_rec_0)) ;
ats_selptrset_mac(anairiats_rec_0, tmp88, atslab_filename, tmp89) ;
ats_selptrset_mac(anairiats_rec_0, tmp88, atslab_beg_ntot, tmp90) ;
ats_selptrset_mac(anairiats_rec_0, tmp88, atslab_beg_nrow, tmp91) ;
ats_selptrset_mac(anairiats_rec_0, tmp88, atslab_beg_ncol, tmp92) ;
ats_selptrset_mac(anairiats_rec_0, tmp88, atslab_end_ntot, tmp93) ;
ats_selptrset_mac(anairiats_rec_0, tmp88, atslab_end_nrow, tmp94) ;
ats_selptrset_mac(anairiats_rec_0, tmp88, atslab_end_ncol, tmp95) ;

return (tmp88) ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_location_2esats__location_leftmost] */
ats_void_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_symenv_2esats__symenv_push (ats_ref_type arg0, ats_ptr_type arg1) {
/* local vardec */
// ATSlocal_void (tmp31) ;
ATSlocal (ats_ptr_type, tmp32) ;
ATSlocal (ats_ptr_type, tmp33) ;
ATSlocal (ats_ptr_type, tmp34) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_symenv_2esats__symenv_push:
tmp33 = ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_map) ;
tmp34 = ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_maplst) ;
tmp32 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
ats_selptrset_mac(anairiats_sum_1, tmp32, atslab_0, tmp33) ;
ats_selptrset_mac(anairiats_sum_1, tmp32, atslab_1, tmp34) ;
ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_maplst) = tmp32 ;
ats_select_mac(ats_ptrget_mac(anairiats_rec_2, arg0), atslab_map) = arg1 ;
return /* (tmp31) */ ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_symenv_2esats__symenv_push] */
ats_ptr_type
loop_4 (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp10) ;
ATSlocal (ats_ptr_type, tmp11) ;
ATSlocal (ats_ptr_type, tmp12) ;
ATSlocal (ats_ptr_type, tmp13) ;
ATSlocal (ats_ptr_type, tmp14) ;
ATSlocal (ats_ptr_type, tmp15) ;

__ats_lab_loop_4:
do {
/* branch: __ats_lab_2 */
__ats_lab_2_0:
if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_6_0 ; }
__ats_lab_2_1:
tmp11 = ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_0) ;
tmp12 = &ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_1) ;
do {
/* branch: __ats_lab_3 */
__ats_lab_3_0:
if (((ats_sum_ptr_type)tmp11)->tag != 0) { goto __ats_lab_4_0 ; }
__ats_lab_3_1:
tmp13 = ats_caselptrlab_mac(anairiats_sum_3, tmp11, atslab_0) ;
tmp10 = ATS_MALLOC(sizeof(anairiats_sum_2)) ;
ats_selptrset_mac(anairiats_sum_2, tmp10, atslab_0, tmp13) ;
break ;

/* branch: __ats_lab_4 */
__ats_lab_4_0:
if (((ats_sum_ptr_type)tmp11)->tag != 1) { goto __ats_lab_5_0 ; }
__ats_lab_4_1:
tmp14 = ats_ptrget_mac(ats_ptr_type, tmp12) ;
arg0 = tmp14 ;
goto __ats_lab_loop_4 ; // tail call
break ;

/* branch: __ats_lab_5 */
__ats_lab_5_0:
// if (((ats_sum_ptr_type)tmp11)->tag != 2) { ats_deadcode_failure_handle () ; }
__ats_lab_5_1:
tmp15 = ats_ptrget_mac(ats_ptr_type, tmp12) ;
arg0 = tmp15 ;
goto __ats_lab_loop_4 ; // tail call
break ;
} while (0) ;
break ;

/* branch: __ats_lab_6 */
__ats_lab_6_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_6_1:
tmp10 = (ats_sum_ptr_type)0 ;
break ;
} while (0) ;
return (tmp10) ;
} /* end of [loop_4] */
ats_void_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_lamlpenv_push_loop0 () {
/* local vardec */
// ATSlocal_void (tmp27) ;
ATSlocal (ats_ptr_type, tmp28) ;
ATSlocal (ats_ptr_type, tmp29) ;
ATSlocal (ats_ptr_type, tmp30) ;
ATSlocal (ats_ptr_type, tmp31) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_lamlpenv_push_loop0:
tmp28 = ats_selsin_mac(ats_castfn_mac(ats_ptr_type, statmp1), atslab_1) ;
tmp30 = (ats_sum_ptr_type)(&_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__LAMLPloop0_1) ;
tmp31 = ats_ptrget_mac(ats_ptr_type, tmp28) ;
tmp29 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
ats_selptrset_mac(anairiats_sum_1, tmp29, atslab_0, tmp30) ;
ats_selptrset_mac(anairiats_sum_1, tmp29, atslab_1, tmp31) ;
ats_ptrget_mac(ats_ptr_type, tmp28) = tmp29 ;
return /* (tmp27) */ ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_trans3_env_2esats__the_lamlpenv_push_loop0] */
ats_ptr_type
_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_make_sym (ats_ptr_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp3) ;

__ats_lab__2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_make_sym:
tmp3 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
((ats_sum_ptr_type)tmp3)->tag = 1 ;
ats_selptrset_mac(anairiats_sum_1, tmp3, atslab_0, arg0) ;
return (tmp3) ;
} /* end of [_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_make_sym] */
ats_ptr_type
_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_make_int (ats_int_type arg0) {
/* local vardec */
ATSlocal (ats_ptr_type, tmp0) ;

__ats_lab__2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_make_int:
tmp0 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
((ats_sum_ptr_type)tmp0)->tag = 0 ;
ats_selptrset_mac(anairiats_sum_0, tmp0, atslab_0, arg0) ;
return (tmp0) ;
} /* end of [_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__label_make_int] */