/* ** ** The C code is generated by ATS/Anairiats ** The compilation time is: 2011-9-10: 22h:12m ** */ /* include some .h files */ #ifndef _ATS_HEADER_NONE #include "ats_config.h" #include "ats_basics.h" #include "ats_types.h" #include "ats_exception.h" #include "ats_memory.h" #endif /* _ATS_HEADER_NONE */ /* include some .cats files */ #ifndef _ATS_PRELUDE_NONE #include "prelude/CATS/basics.cats" #include "prelude/CATS/bool.cats" #include "prelude/CATS/byte.cats" #include "prelude/CATS/char.cats" #include "prelude/CATS/float.cats" #include "prelude/CATS/integer.cats" #include "prelude/CATS/integer_fixed.cats" #include "prelude/CATS/integer_ptr.cats" #include "prelude/CATS/lazy.cats" #include "prelude/CATS/lazy_vt.cats" #include "prelude/CATS/pointer.cats" #include "prelude/CATS/printf.cats" #include "prelude/CATS/reference.cats" #include "prelude/CATS/sizetype.cats" #include "prelude/CATS/string.cats" #include "prelude/CATS/array.cats" #include "prelude/CATS/list.cats" #include "prelude/CATS/matrix.cats" #include "prelude/CATS/option.cats" #endif /* _ATS_PRELUDE_NONE */ /* prologues from statically loaded files */ /* external codes at top */ #line 89 "assem.dats" static inline ats_ptr_type string_alloc (ats_int_type n) { char *p = ATS_MALLOC (n+1) ; p[n] = '\000'; return p; } // end of [string_alloc] /* type definitions */ typedef struct { ats_ptr_type atslab_0 ; } anairiats_sum_0 ; typedef struct { int tag ; ats_ptr_type atslab_0 ; ats_ptr_type atslab_1 ; ats_ptr_type atslab_2 ; ats_ptr_type atslab_3 ; } anairiats_sum_1 ; typedef struct { int tag ; ats_ptr_type atslab_0 ; ats_ptr_type atslab_1 ; } anairiats_sum_2 ; typedef struct { int tag ; ats_ptr_type atslab_0 ; ats_int64_type atslab_1 ; ats_int64_type atslab_2 ; } anairiats_sum_3 ; typedef struct { ats_ptr_type atslab_0 ; ats_ptr_type atslab_1 ; } anairiats_sum_4 ; typedef struct { ats_char_type atslab_0 ; ats_ptr_type atslab_1 ; } anairiats_sum_5 ; typedef struct { ats_int64_type atslab_0 ; ats_ptr_type atslab_1 ; } anairiats_sum_6 ; typedef struct { ats_int64_type atslab_0 ; } anairiats_sum_7 ; /* external typedefs */ /* external dynamic constructor declarations */ ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e6_2prelude_2basics_sta_2esats__list_cons) ; ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e6_2prelude_2basics_sta_2esats__list_nil) ; ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e6_2prelude_2basics_sta_2esats__None) ; ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e6_2prelude_2basics_sta_2esats__Some) ; ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e6_2prelude_2basics_sta_2esats__list_vt_cons) ; ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e6_2prelude_2basics_sta_2esats__list_vt_nil) ; ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e6_2prelude_2basics_sta_2esats__None_vt) ; ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e6_2prelude_2basics_sta_2esats__Some_vt) ; ATSextern_val(ats_sum_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__INSTRoper) ; ATSextern_val(ats_sum_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__INSTRlabel) ; ATSextern_val(ats_sum_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__INSTRmove) ; /* external dynamic constant declarations */ ATSextern_fun(ats_void_type, atspre_assert) (ats_bool_type) ; ATSextern_fun(ats_void_type, atspre_fprint_newline) (ats_ptr_type) ; ATSextern_fun(ats_void_type, atspre_prerr_newline) () ; ATSextern_fun(ats_char_type, atspre_char_of_int) (ats_int_type) ; ATSextern_fun(ats_bool_type, atspre_char_isdigit) (ats_char_type) ; ATSextern_fun(ats_int_type, atspre_sub_char_char) (ats_char_type, ats_char_type) ; ATSextern_fun(ats_bool_type, atspre_neq_char_char) (ats_char_type, ats_char_type) ; ATSextern_fun(ats_int_type, atspre_int_of_char) (ats_char_type) ; ATSextern_fun(ats_bool_type, atspre_lte_int_int) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_int_type, atspre_isucc) (ats_int_type) ; ATSextern_fun(ats_int_type, atspre_iadd) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_int_type, atspre_isub) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_int_type, atspre_idiv) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_bool_type, atspre_ilt) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_bool_type, atspre_ilte) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_bool_type, atspre_igt) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_bool_type, atspre_igte) (ats_int_type, ats_int_type) ; ATSextern_val(ats_ptr_type, atspre_null_ptr) ; ATSextern_fun(ats_ptr_type, atspre_padd_size) (ats_ptr_type, ats_size_type) ; ATSextern_fun(ats_size_type, atspre_size1_of_int1) (ats_int_type) ; ATSextern_fun(ats_size_type, atspre_add_size1_int1) (ats_size_type, ats_int_type) ; ATSextern_fun(ats_size_type, atspre_sub_size1_int1) (ats_size_type, ats_int_type) ; ATSextern_fun(ats_bool_type, atspre_gt_size1_int1) (ats_size_type, ats_int_type) ; ATSextern_fun(ats_void_type, atspre_fprint_string) (ats_ptr_type, ats_ptr_type) ; ATSextern_fun(ats_void_type, atspre_prerr_string) (ats_ptr_type) ; ATSextern_fun(ats_char_type, atspre_string_get_char_at) (ats_ptr_type, ats_size_type) ; ATSextern_fun(ats_void_type, atspre_strbuf_set_char_at__intsz) (ats_ptr_type, ats_int_type, ats_char_type) ; ATSextern_fun(ats_bool_type, atspre_string_is_at_end) (ats_ptr_type, ats_size_type) ; ATSextern_fun(ats_bool_type, atspre_string_isnot_at_end) (ats_ptr_type, ats_size_type) ; ATSextern_fun(ats_ptr_type, atspre_array_ptr_alloc_tsz) (ats_size_type, ats_size_type) ; ATSextern_fun(ats_void_type, atspre_array_ptr_free) (ats_ptr_type) ; ATSextern_fun(ats_void_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__fprint_temp) (ats_ptr_type, ats_int64_type) ; ATSextern_fun(ats_void_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__fprint_templst) (ats_ptr_type, ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__label_name_get) (ats_ptr_type) ; ATSextern_fun(ats_void_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__fprint_lablst) (ats_ptr_type, ats_ptr_type) ; ATSextern_fun(ats_void_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instr) (ats_ptr_type, ats_ptr_type) ; ATSextern_fun(ats_void_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instrlst) (ats_ptr_type, ats_ptr_type) ; ATSextern_fun(ats_void_type, atslib_qsort) (ats_ref_type, ats_size_type, ats_size_type, ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__string_make_list_vt_rev) (ats_ptr_type) ; ATSextern_fun(ats_ptr_type, string_alloc) (ats_int_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__revapp_string_list_vt) (ats_ptr_type, ats_ptr_type) ; /* external dynamic terminating constant declarations */ #ifdef _ATS_PROOFCHECK extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2SATS_2list_2esats__list_length_is_nonnegative_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2SATS_2list_vt_2esats__list_vt_length_is_nonnegative_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; #endif /* _ATS_PROOFCHECK */ /* sum constructor declarations */ /* exn constructor declarations */ /* global dynamic (non-functional) constant declarations */ /* internal function declarations */ static ats_void_type fprint_lablstopt_0 (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_void_type loop_5 (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_ptr_type loop_9 (ats_ptr_type arg0, ats_ptr_type arg1, ats_int_type arg2) ; static ats_int_type loop_11 (ats_ptr_type arg0, ats_int_type arg1) ; static ats_int_type list_vt_length_01557_ats_char_type (ats_ptr_type arg0) ; static ats_ptr_type loop_13 (ats_ptr_type arg0, ats_ptr_type arg1, ats_size_type arg2) ; static ats_void_type loop_17 (ats_ptr_type arg0) ; static ats_void_type list_vt_free_01555_ats_char_type (ats_ptr_type arg0) ; static ats_ptr_type err_15 (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_ptr_type aux1_18 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_size_type arg4, ats_ptr_type arg5) ; static ats_clo_ptr_type aux1_18_closure_make (ats_ptr_type env0) ; static ats_ptr_type aux1_18_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_size_type arg4, ats_ptr_type arg5) ; static ats_ptr_type aux2_19 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_size_type arg4, ats_ptr_type arg5) ; static ats_clo_ptr_type aux2_19_closure_make (ats_ptr_type env0) ; static ats_ptr_type aux2_19_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_size_type arg4, ats_ptr_type arg5) ; static ats_ptr_type loop_23 (ats_ptr_type arg0, ats_int_type arg1) ; static ats_ptr_type list_get_elt_at_opt_01472_ats_int64_type (ats_ptr_type arg0, ats_int_type arg1) ; static ats_ptr_type list_nth_opt_01493_ats_int64_type (ats_ptr_type arg0, ats_int_type arg1) ; static ats_ptr_type loop_26 (ats_ptr_type arg0, ats_int_type arg1) ; static ats_ptr_type list_get_elt_at_opt_01472_ats_ptr_type (ats_ptr_type arg0, ats_int_type arg1) ; static ats_ptr_type list_nth_opt_01493_ats_ptr_type (ats_ptr_type arg0, ats_int_type arg1) ; static ats_ptr_type aux3_20 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_int_type arg4, ats_size_type arg5, ats_ptr_type arg6) ; static ats_clo_ptr_type aux3_20_closure_make (ats_ptr_type env0) ; static ats_ptr_type aux3_20_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_int_type arg4, ats_size_type arg5, ats_ptr_type arg6) ; static ats_ptr_type aux1_18_0aux2_19_0aux3_20 (ats_ptr_type env0, ats_int_type arg0, ...) ; static ats_clo_ptr_type aux1_18_0aux2_19_0aux3_20_closure_make (ats_ptr_type env0) ; static ats_ptr_type aux1_18_0aux2_19_0aux3_20_clofun (ats_clo_ptr_type cloptr, ats_int_type arg0, ...) ; /* partial value template declarations */ /* static temporary variable declarations */ /* external value variable declarations */ /* function implementations */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 633(line=35, offs=4) -- 774(line=39, offs=18) */ ATSstaticdec() ats_void_type fprint_lablstopt_0 (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ // ATSlocal_void (tmp0) ; ATSlocal (ats_ptr_type, tmp1) ; __ats_lab_fprint_lablstopt_0: #line 37 "assem.dats" do { /* branch: __ats_lab_0 */ #line 38 "assem.dats" __ats_lab_0_0: #line 38 "assem.dats" if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_1_0 ; } #line 38 "assem.dats" __ats_lab_0_1: #line 38 "assem.dats" tmp1 = ats_caselptr_mac(anairiats_sum_0, arg1, atslab_0) ; #line 38 "assem.dats" /* tmp0 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__fprint_lablst (arg0, tmp1) ; break ; /* branch: __ats_lab_1 */ #line 39 "assem.dats" __ats_lab_1_0: #line 39 "assem.dats" // if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 39 "assem.dats" __ats_lab_1_1: break ; } while (0) ; return /* (tmp0) */ ; } /* end of [fprint_lablstopt_0] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 828(line=42, offs=24) -- 1680(line=63, offs=4) */ ATSglobaldec() ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instr (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ // ATSlocal_void (tmp2) ; ATSlocal (ats_ptr_type, tmp3) ; ATSlocal (ats_ptr_type, tmp4) ; ATSlocal (ats_ptr_type, tmp5) ; ATSlocal (ats_ptr_type, tmp6) ; // ATSlocal_void (tmp7) ; // ATSlocal_void (tmp8) ; // ATSlocal_void (tmp9) ; // ATSlocal_void (tmp10) ; // ATSlocal_void (tmp11) ; // ATSlocal_void (tmp12) ; // ATSlocal_void (tmp13) ; // ATSlocal_void (tmp14) ; // ATSlocal_void (tmp15) ; // ATSlocal_void (tmp16) ; // ATSlocal_void (tmp17) ; // ATSlocal_void (tmp18) ; // ATSlocal_void (tmp19) ; ATSlocal (ats_ptr_type, tmp20) ; // ATSlocal_void (tmp21) ; // ATSlocal_void (tmp22) ; ATSlocal (ats_ptr_type, tmp23) ; ATSlocal (ats_int64_type, tmp24) ; ATSlocal (ats_int64_type, tmp25) ; // ATSlocal_void (tmp26) ; // ATSlocal_void (tmp27) ; // ATSlocal_void (tmp28) ; // ATSlocal_void (tmp29) ; // ATSlocal_void (tmp30) ; // ATSlocal_void (tmp31) ; // ATSlocal_void (tmp32) ; // ATSlocal_void (tmp33) ; // ATSlocal_void (tmp34) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instr: #line 45 "assem.dats" do { /* branch: __ats_lab_2 */ #line 46 "assem.dats" __ats_lab_2_0: #line 46 "assem.dats" if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_3_0 ; } #line 46 "assem.dats" __ats_lab_2_1: #line 46 "assem.dats" tmp3 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_0) ; #line 46 "assem.dats" tmp4 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_1) ; #line 46 "assem.dats" tmp5 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_2) ; #line 46 "assem.dats" tmp6 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_3) ; #line 47 "assem.dats" /* tmp7 = */ atspre_fprint_string (arg0, ATSstrcst("INSTRoper(")) ; #line 47 "assem.dats" /* tmp8 = */ atspre_fprint_string (arg0, tmp3) ; #line 47 "assem.dats" /* tmp9 = */ atspre_fprint_string (arg0, ATSstrcst("): ")) ; #line 48 "assem.dats" /* tmp10 = */ atspre_fprint_string (arg0, ATSstrcst("src=[")) ; #line 48 "assem.dats" /* tmp11 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__fprint_templst (arg0, tmp4) ; #line 48 "assem.dats" /* tmp12 = */ atspre_fprint_string (arg0, ATSstrcst("]")) ; #line 49 "assem.dats" /* tmp13 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ; #line 50 "assem.dats" /* tmp14 = */ atspre_fprint_string (arg0, ATSstrcst("dst=[")) ; #line 50 "assem.dats" /* tmp15 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__fprint_templst (arg0, tmp5) ; #line 50 "assem.dats" /* tmp16 = */ atspre_fprint_string (arg0, ATSstrcst("]")) ; #line 51 "assem.dats" /* tmp17 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ; #line 52 "assem.dats" /* tmp18 = */ atspre_fprint_string (arg0, ATSstrcst("jump=[")) ; #line 52 "assem.dats" /* tmp19 = */ fprint_lablstopt_0 (arg0, tmp6) ; #line 52 "assem.dats" /* tmp2 = */ atspre_fprint_string (arg0, ATSstrcst("]")) ; break ; /* branch: __ats_lab_3 */ #line 54 "assem.dats" __ats_lab_3_0: #line 54 "assem.dats" if (((ats_sum_ptr_type)arg1)->tag != 1) { goto __ats_lab_4_0 ; } #line 54 "assem.dats" __ats_lab_3_1: #line 54 "assem.dats" tmp20 = ats_caselptr_mac(anairiats_sum_2, arg1, atslab_0) ; #line 55 "assem.dats" /* tmp21 = */ atspre_fprint_string (arg0, ATSstrcst("INSTRlabel(")) ; #line 55 "assem.dats" /* tmp22 = */ atspre_fprint_string (arg0, tmp20) ; #line 55 "assem.dats" /* tmp2 = */ atspre_fprint_string (arg0, ATSstrcst(")")) ; break ; /* branch: __ats_lab_4 */ #line 57 "assem.dats" __ats_lab_4_0: #line 57 "assem.dats" // if (((ats_sum_ptr_type)arg1)->tag != 2) { ats_deadcode_failure_handle () ; } #line 57 "assem.dats" __ats_lab_4_1: #line 57 "assem.dats" tmp23 = ats_caselptr_mac(anairiats_sum_3, arg1, atslab_0) ; #line 57 "assem.dats" tmp24 = ats_caselptr_mac(anairiats_sum_3, arg1, atslab_1) ; #line 57 "assem.dats" tmp25 = ats_caselptr_mac(anairiats_sum_3, arg1, atslab_2) ; #line 58 "assem.dats" /* tmp26 = */ atspre_fprint_string (arg0, ATSstrcst("INSTRmove(")) ; #line 58 "assem.dats" /* tmp27 = */ atspre_fprint_string (arg0, tmp23) ; #line 58 "assem.dats" /* tmp28 = */ atspre_fprint_string (arg0, ATSstrcst("): ")) ; #line 59 "assem.dats" /* tmp29 = */ atspre_fprint_string (arg0, ATSstrcst("src=[")) ; #line 59 "assem.dats" /* tmp30 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__fprint_temp (arg0, tmp24) ; #line 59 "assem.dats" /* tmp31 = */ atspre_fprint_string (arg0, ATSstrcst("]")) ; #line 60 "assem.dats" /* tmp32 = */ atspre_fprint_string (arg0, ATSstrcst("; ")) ; #line 61 "assem.dats" /* tmp33 = */ atspre_fprint_string (arg0, ATSstrcst("dst=[")) ; #line 61 "assem.dats" /* tmp34 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__fprint_temp (arg0, tmp25) ; #line 61 "assem.dats" /* tmp2 = */ atspre_fprint_string (arg0, ATSstrcst("]")) ; break ; } while (0) ; return /* (tmp2) */ ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instr] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 1729(line=65, offs=23) -- 1767(line=65, offs=61) */ ATSglobaldec() ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__print_instr (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp35) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__print_instr: #line 65 "assem.dats" /* tmp35 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instr (stdout, arg0) ; return /* (tmp35) */ ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__print_instr] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 1790(line=66, offs=23) -- 1828(line=66, offs=61) */ ATSglobaldec() ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__prerr_instr (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp36) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__prerr_instr: #line 66 "assem.dats" /* tmp36 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instr (stderr, arg0) ; return /* (tmp36) */ ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__prerr_instr] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 1880(line=69, offs=7) -- 2106(line=74, offs=24) */ ATSstaticdec() ats_void_type loop_5 (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ // ATSlocal_void (tmp38) ; ATSlocal (ats_ptr_type, tmp39) ; ATSlocal (ats_ptr_type, tmp40) ; // ATSlocal_void (tmp41) ; // ATSlocal_void (tmp42) ; __ats_lab_loop_5: #line 70 "assem.dats" do { /* branch: __ats_lab_5 */ #line 71 "assem.dats" __ats_lab_5_0: #line 71 "assem.dats" if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_6_0 ; } #line 71 "assem.dats" __ats_lab_5_1: #line 71 "assem.dats" tmp39 = ats_caselptr_mac(anairiats_sum_4, arg1, atslab_0) ; #line 71 "assem.dats" tmp40 = ats_caselptr_mac(anairiats_sum_4, arg1, atslab_1) ; #line 72 "assem.dats" /* tmp41 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instr (arg0, tmp39) ; #line 72 "assem.dats" /* tmp42 = */ atspre_fprint_newline (arg0) ; #line 72 "assem.dats" arg0 = arg0 ; #line 72 "assem.dats" arg1 = tmp40 ; #line 72 "assem.dats" goto __ats_lab_loop_5 ; // tail call break ; /* branch: __ats_lab_6 */ #line 74 "assem.dats" __ats_lab_6_0: #line 74 "assem.dats" // if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 74 "assem.dats" __ats_lab_6_1: break ; } while (0) ; return /* (tmp38) */ ; } /* end of [loop_5] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 1856(line=68, offs=27) -- 2151(line=78, offs=4) */ ATSglobaldec() ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instrlst (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ // ATSlocal_void (tmp37) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instrlst: #line 77 "assem.dats" /* tmp37 = */ loop_5 (arg0, arg1) ; return /* (tmp37) */ ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instrlst] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 2206(line=80, offs=26) -- 2249(line=80, offs=69) */ ATSglobaldec() ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__print_instrlst (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp43) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__print_instrlst: #line 80 "assem.dats" /* tmp43 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instrlst (stdout, arg0) ; return /* (tmp43) */ ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__print_instrlst] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 2275(line=81, offs=26) -- 2318(line=81, offs=69) */ ATSglobaldec() ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__prerr_instrlst (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp44) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__prerr_instrlst: #line 81 "assem.dats" /* tmp44 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__fprint_instrlst (stderr, arg0) ; return /* (tmp44) */ ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__prerr_instrlst] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 2670(line=101, offs=7) -- 3005(line=109, offs=29) */ ATSstaticdec() ats_ptr_type loop_9 (ats_ptr_type arg0, ats_ptr_type arg1, ats_int_type arg2) { /* local vardec */ ATSlocal (ats_ptr_type, tmp46) ; ATSlocal (ats_char_type, tmp47) ; ATSlocal (ats_ptr_type, tmp48) ; // ATSlocal_void (tmp49) ; ATSlocal (ats_bool_type, tmp50) ; // ATSlocal_void (tmp51) ; ATSlocal (ats_int_type, tmp52) ; __ats_lab_loop_9: #line 103 "assem.dats" do { /* branch: __ats_lab_7 */ #line 104 "assem.dats" __ats_lab_7_0: #line 104 "assem.dats" if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_8_0 ; } #line 104 "assem.dats" __ats_lab_7_1: #line 104 "assem.dats" tmp47 = ats_caselptr_mac(anairiats_sum_5, arg1, atslab_0) ; #line 104 "assem.dats" tmp48 = ats_caselptr_mac(anairiats_sum_5, arg1, atslab_1) ; #line 104 "assem.dats" ATS_FREE(arg1) ; #line 105 "assem.dats" tmp50 = atspre_neq_char_char (ats_castfn_mac(ats_char_type, tmp47), '\000') ; #line 105 "assem.dats" /* tmp49 = */ atspre_assert (tmp50) ; #line 107 "assem.dats" /* tmp51 = */ atspre_strbuf_set_char_at__intsz (arg0, arg2, ats_castfn_mac(ats_char_type, tmp47)) ; #line 107 "assem.dats" tmp52 = atspre_isub (arg2, 1) ; #line 107 "assem.dats" arg0 = arg0 ; #line 107 "assem.dats" arg1 = tmp48 ; #line 107 "assem.dats" arg2 = tmp52 ; #line 107 "assem.dats" goto __ats_lab_loop_9 ; // tail call break ; /* branch: __ats_lab_8 */ #line 109 "assem.dats" __ats_lab_8_0: #line 109 "assem.dats" // if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 109 "assem.dats" __ats_lab_8_1: #line 109 "assem.dats" tmp46 = arg0 ; break ; } while (0) ; return (tmp46) ; } /* end of [loop_9] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list_vt.dats: 5728(line=194, offs=7) -- 5957(line=200, offs=6) */ ATSstaticdec() ats_int_type loop_11 (ats_ptr_type arg0, ats_int_type arg1) { /* local vardec */ ATSlocal (ats_int_type, tmp55) ; ATSlocal (ats_ptr_type, tmp56) ; ATSlocal (ats_ptr_type, tmp57) ; ATSlocal (ats_int_type, tmp58) ; __ats_lab_loop_11: #line 196 "list_vt.dats" do { /* branch: __ats_lab_9 */ #line 197 "list_vt.dats" __ats_lab_9_0: #line 197 "list_vt.dats" if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_10_0 ; } #line 197 "list_vt.dats" __ats_lab_9_1: #line 197 "list_vt.dats" tmp56 = &ats_caselptr_mac(anairiats_sum_5, arg0, atslab_1) ; #line 198 "list_vt.dats" tmp57 = ats_ptrget_mac(ats_ptr_type, tmp56) ; #line 198 "list_vt.dats" tmp58 = atspre_iadd (arg1, 1) ; #line 198 "list_vt.dats" arg0 = tmp57 ; #line 198 "list_vt.dats" arg1 = tmp58 ; #line 198 "list_vt.dats" goto __ats_lab_loop_11 ; // tail call break ; /* branch: __ats_lab_10 */ #line 199 "list_vt.dats" __ats_lab_10_0: #line 199 "list_vt.dats" // if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 199 "list_vt.dats" __ats_lab_10_1: #line 199 "list_vt.dats" tmp55 = arg1 ; break ; } while (0) ; return (tmp55) ; } /* end of [loop_11] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list_vt.dats: 5692(line=193, offs=16) -- 5976(line=201, offs=2) */ ATSstaticdec() ats_int_type list_vt_length_01557_ats_char_type (ats_ptr_type arg0) { /* local vardec */ ATSlocal (ats_int_type, tmp54) ; __ats_lab_list_vt_length_01557_ats_char_type: #line 193 "list_vt.dats" tmp54 = loop_11 (arg0, 0) ; return (tmp54) ; } /* end of [list_vt_length_01557_ats_char_type] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 2629(line=100, offs=3) -- 3187(line=115, offs=2) */ ATSglobaldec() ats_ptr_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__string_make_list_vt_rev (ats_ptr_type arg0) { /* local vardec */ ATSlocal (ats_ptr_type, tmp45) ; ATSlocal (ats_int_type, tmp53) ; ATSlocal (ats_ptr_type, tmp59) ; ATSlocal (ats_int_type, tmp60) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__string_make_list_vt_rev: #line 111 "assem.dats" tmp53 = list_vt_length_01557_ats_char_type (arg0) ; #line 112 "assem.dats" tmp59 = string_alloc (tmp53) ; #line 100 "assem.dats" tmp60 = atspre_isub (tmp53, 1) ; #line 100 "assem.dats" tmp45 = loop_9 (tmp59, arg0, tmp60) ; return (tmp45) ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__string_make_list_vt_rev] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 3470(line=127, offs=7) -- 3685(line=130, offs=49) */ ATSstaticdec() ats_ptr_type loop_13 (ats_ptr_type arg0, ats_ptr_type arg1, ats_size_type arg2) { /* local vardec */ ATSlocal (ats_ptr_type, tmp62) ; ATSlocal (ats_bool_type, tmp63) ; ATSlocal (ats_ptr_type, tmp64) ; ATSlocal (ats_char_type, tmp65) ; ATSlocal (ats_size_type, tmp66) ; __ats_lab_loop_13: #line 129 "assem.dats" tmp63 = atspre_string_is_at_end (arg0, arg2) ; #line 129 "assem.dats" if (tmp63) { #line 129 "assem.dats" tmp62 = arg1 ; } else { #line 130 "assem.dats" tmp65 = atspre_string_get_char_at (arg0, arg2) ; #line 130 "assem.dats" tmp64 = ATS_MALLOC(sizeof(anairiats_sum_5)) ; ats_selptrset_mac(anairiats_sum_5, tmp64, atslab_0, tmp65) ; ats_selptrset_mac(anairiats_sum_5, tmp64, atslab_1, arg1) ; #line 130 "assem.dats" tmp66 = atspre_add_size1_int1 (arg2, 1) ; #line 130 "assem.dats" arg0 = arg0 ; #line 130 "assem.dats" arg1 = tmp64 ; #line 130 "assem.dats" arg2 = tmp66 ; #line 130 "assem.dats" goto __ats_lab_loop_13 ; // tail call } /* end of [if] */ return (tmp62) ; } /* end of [loop_13] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 3390(line=125, offs=23) -- 3725(line=133, offs=2) */ ATSglobaldec() ats_ptr_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__revapp_string_list_vt (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp61) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__revapp_string_list_vt: #line 125 "assem.dats" tmp61 = loop_13 (ats_castfn_mac(ats_ptr_type, arg0), arg1, 0) ; return (tmp61) ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__revapp_string_list_vt] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list_vt.dats: 5146(line=170, offs=7) -- 5268(line=171, offs=73) */ ATSstaticdec() ats_void_type loop_17 (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp71) ; ATSlocal (ats_ptr_type, tmp72) ; __ats_lab_loop_17: #line 171 "list_vt.dats" do { /* branch: __ats_lab_11 */ #line 171 "list_vt.dats" __ats_lab_11_0: #line 171 "list_vt.dats" if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_12_0 ; } #line 171 "list_vt.dats" __ats_lab_11_1: #line 171 "list_vt.dats" tmp72 = ats_caselptr_mac(anairiats_sum_5, arg0, atslab_1) ; #line 171 "list_vt.dats" ATS_FREE(arg0) ; #line 171 "list_vt.dats" arg0 = tmp72 ; #line 171 "list_vt.dats" goto __ats_lab_loop_17 ; // tail call break ; /* branch: __ats_lab_12 */ #line 171 "list_vt.dats" __ats_lab_12_0: #line 171 "list_vt.dats" // if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 171 "list_vt.dats" __ats_lab_12_1: break ; } while (0) ; return /* (tmp71) */ ; } /* end of [loop_17] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list_vt.dats: 5128(line=169, offs=14) -- 5307(line=175, offs=4) */ ATSstaticdec() ats_void_type list_vt_free_01555_ats_char_type (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp70) ; __ats_lab_list_vt_free_01555_ats_char_type: #line 174 "list_vt.dats" /* tmp70 = */ loop_17 (arg0) ; return /* (tmp70) */ ; } /* end of [list_vt_free_01555_ats_char_type] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 3995(line=145, offs=6) -- 4226(line=152, offs=6) */ ATSstaticdec() ats_ptr_type err_15 (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp68) ; // ATSlocal_void (tmp69) ; // ATSlocal_void (tmp73) ; // ATSlocal_void (tmp74) ; // ATSlocal_void (tmp75) ; // ATSlocal_void (tmp76) ; __ats_lab_err_15: #line 146 "assem.dats" /* tmp69 = */ list_vt_free_01555_ats_char_type (arg1) ; #line 148 "assem.dats" /* tmp73 = */ atspre_prerr_string (ATSstrcst("INTERNAL ERROR")) ; #line 149 "assem.dats" /* tmp74 = */ atspre_prerr_string (ATSstrcst(": instr_format: illegal instruction: asm = ")) ; #line 149 "assem.dats" /* tmp75 = */ atspre_prerr_string (arg0) ; #line 150 "assem.dats" /* tmp76 = */ atspre_prerr_newline () ; #line 151 "assem.dats" /* tmp68 = */ ats_exit (1) ; return (tmp68) ; } /* end of [err_15] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 4253(line=154, offs=7) -- 4759(line=170, offs=8) */ ATSstaticdec() ats_ptr_type aux1_18 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_size_type arg4, ats_ptr_type arg5) { /* local vardec */ ATSlocal (ats_ptr_type, tmp153) ; #line 154 "assem.dats" tmp153 = aux1_18_0aux2_19_0aux3_20 (env0, 0, arg0, arg1, arg2, arg3, arg4, arg5) ; return (tmp153) ; } /* end of [aux1_18] */ typedef struct { ats_fun_ptr_type closure_fun ; ats_ptr_type closure_env_0 ; } aux1_18_closure_type ; ats_ptr_type aux1_18_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_size_type arg4, ats_ptr_type arg5) { return aux1_18 (((aux1_18_closure_type*)cloptr)->closure_env_0, arg0, arg1, arg2, arg3, arg4, arg5) ; } /* end of function */ ATSinline() ats_void_type aux1_18_closure_init (aux1_18_closure_type *p_clo, ats_ptr_type env0) { p_clo->closure_fun = (ats_fun_ptr_type)&aux1_18_clofun ; p_clo->closure_env_0 = env0 ; return ; } /* end of function */ ats_clo_ptr_type aux1_18_closure_make (ats_ptr_type env0) { aux1_18_closure_type *p_clo = ATS_MALLOC(sizeof(aux1_18_closure_type)) ; aux1_18_closure_init (p_clo, env0) ; return (ats_clo_ptr_type)p_clo ; } /* end of function */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 4804(line=173, offs=7) -- 5488(line=191, offs=8) */ ATSstaticdec() ats_ptr_type aux2_19 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_size_type arg4, ats_ptr_type arg5) { /* local vardec */ ATSlocal (ats_ptr_type, tmp154) ; #line 173 "assem.dats" tmp154 = aux1_18_0aux2_19_0aux3_20 (env0, 1, arg0, arg1, arg2, arg3, arg4, arg5) ; return (tmp154) ; } /* end of [aux2_19] */ typedef struct { ats_fun_ptr_type closure_fun ; ats_ptr_type closure_env_0 ; } aux2_19_closure_type ; ats_ptr_type aux2_19_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_size_type arg4, ats_ptr_type arg5) { return aux2_19 (((aux2_19_closure_type*)cloptr)->closure_env_0, arg0, arg1, arg2, arg3, arg4, arg5) ; } /* end of function */ ATSinline() ats_void_type aux2_19_closure_init (aux2_19_closure_type *p_clo, ats_ptr_type env0) { p_clo->closure_fun = (ats_fun_ptr_type)&aux2_19_clofun ; p_clo->closure_env_0 = env0 ; return ; } /* end of function */ ats_clo_ptr_type aux2_19_closure_make (ats_ptr_type env0) { aux2_19_closure_type *p_clo = ATS_MALLOC(sizeof(aux2_19_closure_type)) ; aux2_19_closure_init (p_clo, env0) ; return (ats_clo_ptr_type)p_clo ; } /* end of function */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list.dats: 48564(line=1663, offs=7) -- 48739(line=1667, offs=27) */ ATSstaticdec() ats_ptr_type loop_23 (ats_ptr_type arg0, ats_int_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp125) ; ATSlocal (ats_int64_type, tmp126) ; ATSlocal (ats_ptr_type, tmp127) ; ATSlocal (ats_bool_type, tmp128) ; ATSlocal (ats_int_type, tmp129) ; __ats_lab_loop_23: #line 1665 "list.dats" do { /* branch: __ats_lab_19 */ #line 1666 "list.dats" __ats_lab_19_0: #line 1666 "list.dats" if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_20_0 ; } #line 1666 "list.dats" __ats_lab_19_1: #line 1666 "list.dats" tmp126 = ats_caselptr_mac(anairiats_sum_6, arg0, atslab_0) ; #line 1666 "list.dats" tmp127 = ats_caselptr_mac(anairiats_sum_6, arg0, atslab_1) ; #line 1666 "list.dats" tmp128 = atspre_igt (arg1, 0) ; #line 1666 "list.dats" if (tmp128) { #line 1666 "list.dats" tmp129 = atspre_isub (arg1, 1) ; #line 1666 "list.dats" arg0 = tmp127 ; #line 1666 "list.dats" arg1 = tmp129 ; #line 1666 "list.dats" goto __ats_lab_loop_23 ; // tail call } else { #line 1666 "list.dats" tmp125 = ATS_MALLOC(sizeof(anairiats_sum_7)) ; ats_selptrset_mac(anairiats_sum_7, tmp125, atslab_0, tmp126) ; } /* end of [if] */ break ; /* branch: __ats_lab_20 */ #line 1667 "list.dats" __ats_lab_20_0: #line 1667 "list.dats" // if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 1667 "list.dats" __ats_lab_20_1: #line 1667 "list.dats" tmp125 = (ats_sum_ptr_type)0 ; break ; } while (0) ; return (tmp125) ; } /* end of [loop_23] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list.dats: 48544(line=1662, offs=21) -- 48780(line=1671, offs=4) */ ATSstaticdec() ats_ptr_type list_get_elt_at_opt_01472_ats_int64_type (ats_ptr_type arg0, ats_int_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp124) ; __ats_lab_list_get_elt_at_opt_01472_ats_int64_type: #line 1670 "list.dats" tmp124 = loop_23 (arg0, arg1) ; return (tmp124) ; } /* end of [list_get_elt_at_opt_01472_ats_int64_type] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list.dats: 48840(line=1674, offs=14) -- 48880(line=1674, offs=54) */ ATSstaticdec() ats_ptr_type list_nth_opt_01493_ats_int64_type (ats_ptr_type arg0, ats_int_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp123) ; __ats_lab_list_nth_opt_01493_ats_int64_type: #line 1674 "list.dats" tmp123 = list_get_elt_at_opt_01472_ats_int64_type (arg0, arg1) ; return (tmp123) ; } /* end of [list_nth_opt_01493_ats_int64_type] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list.dats: 48564(line=1663, offs=7) -- 48739(line=1667, offs=27) */ ATSstaticdec() ats_ptr_type loop_26 (ats_ptr_type arg0, ats_int_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp143) ; ATSlocal (ats_ptr_type, tmp144) ; ATSlocal (ats_ptr_type, tmp145) ; ATSlocal (ats_bool_type, tmp146) ; ATSlocal (ats_int_type, tmp147) ; __ats_lab_loop_26: #line 1665 "list.dats" do { /* branch: __ats_lab_28 */ #line 1666 "list.dats" __ats_lab_28_0: #line 1666 "list.dats" if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_29_0 ; } #line 1666 "list.dats" __ats_lab_28_1: #line 1666 "list.dats" tmp144 = ats_caselptr_mac(anairiats_sum_4, arg0, atslab_0) ; #line 1666 "list.dats" tmp145 = ats_caselptr_mac(anairiats_sum_4, arg0, atslab_1) ; #line 1666 "list.dats" tmp146 = atspre_igt (arg1, 0) ; #line 1666 "list.dats" if (tmp146) { #line 1666 "list.dats" tmp147 = atspre_isub (arg1, 1) ; #line 1666 "list.dats" arg0 = tmp145 ; #line 1666 "list.dats" arg1 = tmp147 ; #line 1666 "list.dats" goto __ats_lab_loop_26 ; // tail call } else { #line 1666 "list.dats" tmp143 = ATS_MALLOC(sizeof(anairiats_sum_0)) ; ats_selptrset_mac(anairiats_sum_0, tmp143, atslab_0, tmp144) ; } /* end of [if] */ break ; /* branch: __ats_lab_29 */ #line 1667 "list.dats" __ats_lab_29_0: #line 1667 "list.dats" // if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 1667 "list.dats" __ats_lab_29_1: #line 1667 "list.dats" tmp143 = (ats_sum_ptr_type)0 ; break ; } while (0) ; return (tmp143) ; } /* end of [loop_26] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list.dats: 48544(line=1662, offs=21) -- 48780(line=1671, offs=4) */ ATSstaticdec() ats_ptr_type list_get_elt_at_opt_01472_ats_ptr_type (ats_ptr_type arg0, ats_int_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp142) ; __ats_lab_list_get_elt_at_opt_01472_ats_ptr_type: #line 1670 "list.dats" tmp142 = loop_26 (arg0, arg1) ; return (tmp142) ; } /* end of [list_get_elt_at_opt_01472_ats_ptr_type] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list.dats: 48840(line=1674, offs=14) -- 48880(line=1674, offs=54) */ ATSstaticdec() ats_ptr_type list_nth_opt_01493_ats_ptr_type (ats_ptr_type arg0, ats_int_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp141) ; __ats_lab_list_nth_opt_01493_ats_ptr_type: #line 1674 "list.dats" tmp141 = list_get_elt_at_opt_01472_ats_ptr_type (arg0, arg1) ; return (tmp141) ; } /* end of [list_nth_opt_01493_ats_ptr_type] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 5533(line=194, offs=7) -- 7635(line=256, offs=8) */ ATSstaticdec() ats_ptr_type aux3_20 (ats_ptr_type env0, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_int_type arg4, ats_size_type arg5, ats_ptr_type arg6) { /* local vardec */ ATSlocal (ats_ptr_type, tmp155) ; #line 194 "assem.dats" tmp155 = aux1_18_0aux2_19_0aux3_20 (env0, 2, arg0, arg1, arg2, arg3, arg4, arg5, arg6) ; return (tmp155) ; } /* end of [aux3_20] */ typedef struct { ats_fun_ptr_type closure_fun ; ats_ptr_type closure_env_0 ; } aux3_20_closure_type ; ats_ptr_type aux3_20_clofun (ats_clo_ptr_type cloptr, ats_ptr_type arg0, ats_ptr_type arg1, ats_ptr_type arg2, ats_ptr_type arg3, ats_int_type arg4, ats_size_type arg5, ats_ptr_type arg6) { return aux3_20 (((aux3_20_closure_type*)cloptr)->closure_env_0, arg0, arg1, arg2, arg3, arg4, arg5, arg6) ; } /* end of function */ ATSinline() ats_void_type aux3_20_closure_init (aux3_20_closure_type *p_clo, ats_ptr_type env0) { p_clo->closure_fun = (ats_fun_ptr_type)&aux3_20_clofun ; p_clo->closure_env_0 = env0 ; return ; } /* end of function */ ats_clo_ptr_type aux3_20_closure_make (ats_ptr_type env0) { aux3_20_closure_type *p_clo = ATS_MALLOC(sizeof(aux3_20_closure_type)) ; aux3_20_closure_init (p_clo, env0) ; return (ats_clo_ptr_type)p_clo ; } /* end of function */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 4253(line=154, offs=7) -- 7635(line=256, offs=8) */ ATSstaticdec() ats_ptr_type aux1_18_0aux2_19_0aux3_20 (ats_ptr_type env0, ats_int_type arg0, ...) { /* local vardec */ ATSlocal (ats_ptr_type, tmp77) ; ATSlocal (ats_ptr_type, tmp78) ; ATSlocal (ats_ptr_type, tmp79) ; ATSlocal (ats_ptr_type, tmp80) ; ATSlocal (ats_size_type, tmp81) ; ATSlocal (ats_ptr_type, tmp82) ; ATSlocal (ats_ptr_type, tmp83) ; ATSlocal (ats_ptr_type, tmp84) ; ATSlocal (ats_ptr_type, tmp85) ; ATSlocal (ats_ptr_type, tmp86) ; ATSlocal (ats_size_type, tmp87) ; ATSlocal (ats_ptr_type, tmp88) ; ATSlocal (ats_ptr_type, tmp89) ; ATSlocal (ats_ptr_type, tmp90) ; ATSlocal (ats_ptr_type, tmp91) ; ATSlocal (ats_ptr_type, tmp92) ; ATSlocal (ats_int_type, tmp93) ; ATSlocal (ats_size_type, tmp94) ; ATSlocal (ats_ptr_type, tmp95) ; ATSlocal (ats_ptr_type, tmp96) ; ATSlocal (ats_bool_type, tmp97) ; ATSlocal (ats_char_type, tmp98) ; ATSlocal (ats_bool_type, tmp99) ; ATSlocal (ats_ptr_type, tmp100) ; ATSlocal (ats_size_type, tmp101) ; ATSlocal (ats_size_type, tmp102) ; ATSlocal (ats_ptr_type, tmp103) ; ATSlocal (ats_bool_type, tmp104) ; ATSlocal (ats_char_type, tmp105) ; ATSlocal (ats_int_type, tmp106) ; ATSlocal (ats_size_type, tmp107) ; ATSlocal (ats_int_type, tmp108) ; ATSlocal (ats_size_type, tmp109) ; ATSlocal (ats_int_type, tmp110) ; ATSlocal (ats_size_type, tmp111) ; ATSlocal (ats_ptr_type, tmp112) ; ATSlocal (ats_size_type, tmp113) ; ATSlocal (ats_ptr_type, tmp114) ; ATSlocal (ats_bool_type, tmp115) ; ATSlocal (ats_char_type, tmp116) ; ATSlocal (ats_char_type, tmp117) ; ATSlocal (ats_bool_type, tmp118) ; ATSlocal (ats_int_type, tmp119) ; // ATSlocal_void (tmp120) ; ATSlocal (ats_bool_type, tmp121) ; ATSlocal (ats_ptr_type, tmp122) ; ATSlocal (ats_int64_type, tmp130) ; ATSlocal (ats_ptr_type, tmp131) ; ATSlocal (ats_ptr_type, tmp132) ; ATSlocal (ats_size_type, tmp133) ; ATSlocal (ats_ptr_type, tmp134) ; ATSlocal (ats_int64_type, tmp135) ; ATSlocal (ats_ptr_type, tmp136) ; ATSlocal (ats_ptr_type, tmp137) ; ATSlocal (ats_size_type, tmp138) ; ATSlocal (ats_ptr_type, tmp139) ; ATSlocal (ats_ptr_type, tmp140) ; ATSlocal (ats_ptr_type, tmp148) ; ATSlocal (ats_ptr_type, tmp149) ; ATSlocal (ats_ptr_type, tmp150) ; ATSlocal (ats_size_type, tmp151) ; ATSlocal (ats_ptr_type, tmp152) ; va_list funarg ; switch (arg0) { case 0: va_start(funarg, arg0) ; tmp77 = va_arg(funarg, ats_ptr_type) ; tmp78 = va_arg(funarg, ats_ptr_type) ; tmp79 = va_arg(funarg, ats_ptr_type) ; tmp80 = va_arg(funarg, ats_ptr_type) ; tmp81 = va_arg(funarg, ats_size_type) ; tmp82 = va_arg(funarg, ats_ptr_type) ; va_end(funarg) ; goto __ats_lab_aux1_18 ; case 1: va_start(funarg, arg0) ; tmp83 = va_arg(funarg, ats_ptr_type) ; tmp84 = va_arg(funarg, ats_ptr_type) ; tmp85 = va_arg(funarg, ats_ptr_type) ; tmp86 = va_arg(funarg, ats_ptr_type) ; tmp87 = va_arg(funarg, ats_size_type) ; tmp88 = va_arg(funarg, ats_ptr_type) ; va_end(funarg) ; goto __ats_lab_aux2_19 ; case 2: va_start(funarg, arg0) ; tmp89 = va_arg(funarg, ats_ptr_type) ; tmp90 = va_arg(funarg, ats_ptr_type) ; tmp91 = va_arg(funarg, ats_ptr_type) ; tmp92 = va_arg(funarg, ats_ptr_type) ; tmp93 = va_arg(funarg, ats_int_type) ; tmp94 = va_arg(funarg, ats_size_type) ; tmp95 = va_arg(funarg, ats_ptr_type) ; va_end(funarg) ; goto __ats_lab_aux3_20 ; default: exit(1) ; /* deadcode */ } /* end of switch */ ATSlocal (va_list, arg1) ; va_start(arg1, arg0) ; #line 154 "assem.dats" __ats_lab_aux1_18: #line 159 "assem.dats" tmp97 = atspre_string_isnot_at_end (tmp77, tmp81) ; #line 159 "assem.dats" if (tmp97) { #line 160 "assem.dats" tmp98 = atspre_string_get_char_at (tmp77, tmp81) ; #line 162 "assem.dats" tmp99 = atspre_neq_char_char (tmp98, '`') ; #line 162 "assem.dats" if (tmp99) { #line 163 "assem.dats" tmp100 = ATS_MALLOC(sizeof(anairiats_sum_5)) ; ats_selptrset_mac(anairiats_sum_5, tmp100, atslab_0, tmp98) ; ats_selptrset_mac(anairiats_sum_5, tmp100, atslab_1, tmp82) ; #line 164 "assem.dats" tmp101 = atspre_add_size1_int1 (tmp81, 1) ; #line 164 "assem.dats" tmp77 = tmp77 ; #line 164 "assem.dats" tmp78 = tmp78 ; #line 164 "assem.dats" tmp79 = tmp79 ; #line 164 "assem.dats" tmp80 = tmp80 ; #line 164 "assem.dats" tmp81 = tmp101 ; #line 164 "assem.dats" tmp82 = tmp100 ; #line 164 "assem.dats" goto __ats_lab_aux1_18 ; // tail call } else { #line 166 "assem.dats" tmp102 = atspre_add_size1_int1 (tmp81, 1) ; #line 166 "assem.dats" tmp83 = tmp77 ; #line 166 "assem.dats" tmp84 = tmp78 ; #line 166 "assem.dats" tmp85 = tmp79 ; #line 166 "assem.dats" tmp86 = tmp80 ; #line 166 "assem.dats" tmp87 = tmp102 ; #line 166 "assem.dats" tmp88 = tmp82 ; #line 166 "assem.dats" goto __ats_lab_aux2_19 ; // tail call } /* end of [if] */ } else { #line 169 "assem.dats" tmp96 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__string_make_list_vt_rev (tmp82) ; } /* end of [if] */ return tmp96 ; #line 154 "assem.dats" __ats_lab_aux2_19: #line 178 "assem.dats" tmp104 = atspre_string_isnot_at_end (tmp83, tmp87) ; #line 178 "assem.dats" if (tmp104) { #line 179 "assem.dats" tmp105 = atspre_string_get_char_at (tmp83, tmp87) ; #line 181 "assem.dats" do { /* branch: __ats_lab_13 */ #line 182 "assem.dats" __ats_lab_13_0: #line 182 "assem.dats" if (tmp105 != 's') { goto __ats_lab_14_0 ; } #line 182 "assem.dats" __ats_lab_13_1: #line 182 "assem.dats" tmp106 = atspre_int_of_char (tmp105) ; #line 182 "assem.dats" tmp107 = atspre_add_size1_int1 (tmp87, 1) ; #line 182 "assem.dats" tmp89 = tmp83 ; #line 182 "assem.dats" tmp90 = tmp84 ; #line 182 "assem.dats" tmp91 = tmp85 ; #line 182 "assem.dats" tmp92 = tmp86 ; #line 182 "assem.dats" tmp93 = tmp106 ; #line 182 "assem.dats" tmp94 = tmp107 ; #line 182 "assem.dats" tmp95 = tmp88 ; #line 182 "assem.dats" goto __ats_lab_aux3_20 ; // tail call break ; /* branch: __ats_lab_14 */ #line 183 "assem.dats" __ats_lab_14_0: #line 183 "assem.dats" if (tmp105 != 'd') { goto __ats_lab_15_0 ; } #line 183 "assem.dats" __ats_lab_14_1: #line 183 "assem.dats" tmp108 = atspre_int_of_char (tmp105) ; #line 183 "assem.dats" tmp109 = atspre_add_size1_int1 (tmp87, 1) ; #line 183 "assem.dats" tmp89 = tmp83 ; #line 183 "assem.dats" tmp90 = tmp84 ; #line 183 "assem.dats" tmp91 = tmp85 ; #line 183 "assem.dats" tmp92 = tmp86 ; #line 183 "assem.dats" tmp93 = tmp108 ; #line 183 "assem.dats" tmp94 = tmp109 ; #line 183 "assem.dats" tmp95 = tmp88 ; #line 183 "assem.dats" goto __ats_lab_aux3_20 ; // tail call break ; /* branch: __ats_lab_15 */ #line 184 "assem.dats" __ats_lab_15_0: #line 184 "assem.dats" if (tmp105 != 'j') { goto __ats_lab_16_0 ; } #line 184 "assem.dats" __ats_lab_15_1: #line 184 "assem.dats" tmp110 = atspre_int_of_char (tmp105) ; #line 184 "assem.dats" tmp111 = atspre_add_size1_int1 (tmp87, 1) ; #line 184 "assem.dats" tmp89 = tmp83 ; #line 184 "assem.dats" tmp90 = tmp84 ; #line 184 "assem.dats" tmp91 = tmp85 ; #line 184 "assem.dats" tmp92 = tmp86 ; #line 184 "assem.dats" tmp93 = tmp110 ; #line 184 "assem.dats" tmp94 = tmp111 ; #line 184 "assem.dats" tmp95 = tmp88 ; #line 184 "assem.dats" goto __ats_lab_aux3_20 ; // tail call break ; /* branch: __ats_lab_16 */ #line 185 "assem.dats" __ats_lab_16_0: #line 185 "assem.dats" if (tmp105 != '`') { goto __ats_lab_17_0 ; } #line 185 "assem.dats" __ats_lab_16_1: #line 186 "assem.dats" tmp112 = ATS_MALLOC(sizeof(anairiats_sum_5)) ; ats_selptrset_mac(anairiats_sum_5, tmp112, atslab_0, '`') ; ats_selptrset_mac(anairiats_sum_5, tmp112, atslab_1, tmp88) ; #line 186 "assem.dats" tmp113 = atspre_add_size1_int1 (tmp87, 1) ; #line 186 "assem.dats" tmp77 = tmp83 ; #line 186 "assem.dats" tmp78 = tmp84 ; #line 186 "assem.dats" tmp79 = tmp85 ; #line 186 "assem.dats" tmp80 = tmp86 ; #line 186 "assem.dats" tmp81 = tmp113 ; #line 186 "assem.dats" tmp82 = tmp112 ; #line 186 "assem.dats" goto __ats_lab_aux1_18 ; // tail call break ; /* branch: __ats_lab_17 */ #line 188 "assem.dats" __ats_lab_17_0: #line 188 "assem.dats" __ats_lab_17_1: #line 188 "assem.dats" tmp103 = err_15 (tmp83, tmp88) ; break ; } while (0) ; } else { #line 190 "assem.dats" tmp103 = err_15 (tmp83, tmp88) ; } /* end of [if] */ return tmp103 ; #line 154 "assem.dats" __ats_lab_aux3_20: #line 199 "assem.dats" tmp115 = atspre_string_isnot_at_end (tmp89, tmp94) ; #line 199 "assem.dats" if (tmp115) { #line 200 "assem.dats" tmp116 = atspre_char_of_int (tmp93) ; #line 200 "assem.dats" tmp117 = atspre_string_get_char_at (tmp89, tmp94) ; #line 202 "assem.dats" tmp118 = atspre_char_isdigit (tmp117) ; #line 202 "assem.dats" if (tmp118) { #line 203 "assem.dats" tmp119 = atspre_sub_char_char (tmp117, '0') ; #line 209 "assem.dats" tmp121 = atspre_igte (tmp119, 0) ; #line 209 "assem.dats" /* tmp120 = */ atspre_assert (tmp121) ; #line 211 "assem.dats" do { /* branch: __ats_lab_18 */ #line 212 "assem.dats" __ats_lab_18_0: #line 212 "assem.dats" if (tmp116 != 's') { goto __ats_lab_23_0 ; } #line 212 "assem.dats" __ats_lab_18_1: #line 213 "assem.dats" tmp122 = list_nth_opt_01493_ats_int64_type (tmp90, tmp119) ; #line 215 "assem.dats" do { /* branch: __ats_lab_21 */ #line 216 "assem.dats" __ats_lab_21_0: #line 216 "assem.dats" if (tmp122 == (ats_sum_ptr_type)0) { goto __ats_lab_22_0 ; } #line 216 "assem.dats" __ats_lab_21_1: #line 216 "assem.dats" tmp130 = ats_caselptr_mac(anairiats_sum_7, tmp122, atslab_0) ; #line 216 "assem.dats" ATS_FREE(tmp122) ; #line 217 "assem.dats" tmp131 = ((ats_ptr_type(*)(ats_int64_type))env0) (tmp130) ; #line 218 "assem.dats" tmp132 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__revapp_string_list_vt (tmp131, tmp95) ; #line 220 "assem.dats" tmp133 = atspre_add_size1_int1 (tmp94, 1) ; #line 220 "assem.dats" tmp77 = tmp89 ; #line 220 "assem.dats" tmp78 = tmp90 ; #line 220 "assem.dats" tmp79 = tmp91 ; #line 220 "assem.dats" tmp80 = tmp92 ; #line 220 "assem.dats" tmp81 = tmp133 ; #line 220 "assem.dats" tmp82 = tmp132 ; #line 220 "assem.dats" goto __ats_lab_aux1_18 ; // tail call break ; /* branch: __ats_lab_22 */ #line 222 "assem.dats" __ats_lab_22_0: #line 222 "assem.dats" // if (tmp122 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 222 "assem.dats" __ats_lab_22_1: #line 222 "assem.dats" tmp114 = err_15 (tmp89, tmp95) ; break ; } while (0) ; break ; /* branch: __ats_lab_23 */ #line 224 "assem.dats" __ats_lab_23_0: #line 224 "assem.dats" if (tmp116 != 'd') { goto __ats_lab_26_0 ; } #line 224 "assem.dats" __ats_lab_23_1: #line 225 "assem.dats" tmp134 = list_nth_opt_01493_ats_int64_type (tmp91, tmp119) ; #line 227 "assem.dats" do { /* branch: __ats_lab_24 */ #line 228 "assem.dats" __ats_lab_24_0: #line 228 "assem.dats" if (tmp134 == (ats_sum_ptr_type)0) { goto __ats_lab_25_0 ; } #line 228 "assem.dats" __ats_lab_24_1: #line 228 "assem.dats" tmp135 = ats_caselptr_mac(anairiats_sum_7, tmp134, atslab_0) ; #line 228 "assem.dats" ATS_FREE(tmp134) ; #line 229 "assem.dats" tmp136 = ((ats_ptr_type(*)(ats_int64_type))env0) (tmp135) ; #line 230 "assem.dats" tmp137 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__revapp_string_list_vt (tmp136, tmp95) ; #line 232 "assem.dats" tmp138 = atspre_add_size1_int1 (tmp94, 1) ; #line 232 "assem.dats" tmp77 = tmp89 ; #line 232 "assem.dats" tmp78 = tmp90 ; #line 232 "assem.dats" tmp79 = tmp91 ; #line 232 "assem.dats" tmp80 = tmp92 ; #line 232 "assem.dats" tmp81 = tmp138 ; #line 232 "assem.dats" tmp82 = tmp137 ; #line 232 "assem.dats" goto __ats_lab_aux1_18 ; // tail call break ; /* branch: __ats_lab_25 */ #line 234 "assem.dats" __ats_lab_25_0: #line 234 "assem.dats" // if (tmp134 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 234 "assem.dats" __ats_lab_25_1: #line 234 "assem.dats" tmp114 = err_15 (tmp89, tmp95) ; break ; } while (0) ; break ; /* branch: __ats_lab_26 */ #line 236 "assem.dats" __ats_lab_26_0: #line 236 "assem.dats" __ats_lab_26_1: #line 237 "assem.dats" do { /* branch: __ats_lab_27 */ #line 238 "assem.dats" __ats_lab_27_0: #line 238 "assem.dats" if (tmp92 == (ats_sum_ptr_type)0) { goto __ats_lab_30_0 ; } #line 238 "assem.dats" __ats_lab_27_1: #line 238 "assem.dats" tmp140 = ats_caselptr_mac(anairiats_sum_0, tmp92, atslab_0) ; #line 238 "assem.dats" tmp139 = list_nth_opt_01493_ats_ptr_type (tmp140, tmp119) ; break ; /* branch: __ats_lab_30 */ #line 239 "assem.dats" __ats_lab_30_0: #line 239 "assem.dats" // if (tmp92 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 239 "assem.dats" __ats_lab_30_1: #line 239 "assem.dats" tmp139 = (ats_sum_ptr_type)0 ; break ; } while (0) ; #line 242 "assem.dats" do { /* branch: __ats_lab_31 */ #line 243 "assem.dats" __ats_lab_31_0: #line 243 "assem.dats" if (tmp139 == (ats_sum_ptr_type)0) { goto __ats_lab_32_0 ; } #line 243 "assem.dats" __ats_lab_31_1: #line 243 "assem.dats" tmp148 = ats_caselptr_mac(anairiats_sum_0, tmp139, atslab_0) ; #line 243 "assem.dats" ATS_FREE(tmp139) ; #line 244 "assem.dats" tmp149 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__label_name_get (tmp148) ; #line 245 "assem.dats" tmp150 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__revapp_string_list_vt (tmp149, tmp95) ; #line 247 "assem.dats" tmp151 = atspre_add_size1_int1 (tmp94, 1) ; #line 247 "assem.dats" tmp77 = tmp89 ; #line 247 "assem.dats" tmp78 = tmp90 ; #line 247 "assem.dats" tmp79 = tmp91 ; #line 247 "assem.dats" tmp80 = tmp92 ; #line 247 "assem.dats" tmp81 = tmp151 ; #line 247 "assem.dats" tmp82 = tmp150 ; #line 247 "assem.dats" goto __ats_lab_aux1_18 ; // tail call break ; /* branch: __ats_lab_32 */ #line 249 "assem.dats" __ats_lab_32_0: #line 249 "assem.dats" // if (tmp139 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 249 "assem.dats" __ats_lab_32_1: #line 249 "assem.dats" tmp114 = err_15 (tmp89, tmp95) ; break ; } while (0) ; break ; } while (0) ; } else { #line 252 "assem.dats" tmp114 = err_15 (tmp89, tmp95) ; } /* end of [if] */ } else { #line 255 "assem.dats" tmp114 = err_15 (tmp89, tmp95) ; } /* end of [if] */ return tmp114 ; return (tmp152) ; } /* end of [aux1_18_0aux2_19_0aux3_20] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 3797(line=138, offs=14) -- 8146(line=270, offs=4) */ ATSglobaldec() ats_ptr_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_format (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp67) ; ATSlocal (ats_ptr_type, tmp156) ; ATSlocal (ats_ptr_type, tmp157) ; ATSlocal (ats_ptr_type, tmp158) ; ATSlocal (ats_ptr_type, tmp159) ; ATSlocal (ats_ptr_type, tmp160) ; ATSlocal (ats_ptr_type, tmp161) ; ATSlocal (ats_ptr_type, tmp162) ; ATSlocal (ats_int64_type, tmp163) ; ATSlocal (ats_int64_type, tmp164) ; ATSlocal (ats_ptr_type, tmp165) ; ATSlocal (ats_ptr_type, tmp166) ; ATSlocal (ats_ptr_type, tmp167) ; ATSlocal (ats_ptr_type, tmp168) ; ATSlocal (ats_ptr_type, tmp169) ; ATSlocal (ats_ptr_type, tmp170) ; ATSlocal (ats_ptr_type, tmp171) ; ATSlocal (ats_ptr_type, tmp172) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_format: #line 259 "assem.dats" do { /* branch: __ats_lab_33 */ #line 260 "assem.dats" __ats_lab_33_0: #line 260 "assem.dats" if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_34_0 ; } #line 260 "assem.dats" __ats_lab_33_1: #line 260 "assem.dats" tmp156 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_0) ; #line 260 "assem.dats" tmp157 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_1) ; #line 260 "assem.dats" tmp158 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_2) ; #line 260 "assem.dats" tmp159 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_3) ; #line 262 "assem.dats" tmp160 = (ats_sum_ptr_type)0 ; #line 262 "assem.dats" tmp67 = aux1_18 (arg0, ats_castfn_mac(ats_ptr_type, tmp156), tmp157, tmp158, tmp159, 0, tmp160) ; break ; /* branch: __ats_lab_34 */ #line 264 "assem.dats" __ats_lab_34_0: #line 264 "assem.dats" if (((ats_sum_ptr_type)arg1)->tag != 1) { goto __ats_lab_35_0 ; } #line 264 "assem.dats" __ats_lab_34_1: #line 264 "assem.dats" tmp161 = ats_caselptr_mac(anairiats_sum_2, arg1, atslab_0) ; #line 264 "assem.dats" tmp67 = tmp161 ; break ; /* branch: __ats_lab_35 */ #line 265 "assem.dats" __ats_lab_35_0: #line 265 "assem.dats" // if (((ats_sum_ptr_type)arg1)->tag != 2) { ats_deadcode_failure_handle () ; } #line 265 "assem.dats" __ats_lab_35_1: #line 265 "assem.dats" tmp162 = ats_caselptr_mac(anairiats_sum_3, arg1, atslab_0) ; #line 265 "assem.dats" tmp163 = ats_caselptr_mac(anairiats_sum_3, arg1, atslab_1) ; #line 265 "assem.dats" tmp164 = ats_caselptr_mac(anairiats_sum_3, arg1, atslab_2) ; #line 267 "assem.dats" tmp165 = ATS_MALLOC(sizeof(anairiats_sum_6)) ; ats_selptrset_mac(anairiats_sum_6, tmp165, atslab_0, tmp163) ; #line 267 "assem.dats" tmp166 = &ats_selptr_mac(ats_castptr_mac(anairiats_sum_6, tmp165), atslab_1) ; #line 267 "assem.dats" tmp167 = (ats_sum_ptr_type)0 ; #line 267 "assem.dats" ats_ptrget_mac(ats_ptr_type, tmp166) = tmp167 ; #line 267 "assem.dats" tmp168 = ATS_MALLOC(sizeof(anairiats_sum_6)) ; ats_selptrset_mac(anairiats_sum_6, tmp168, atslab_0, tmp164) ; #line 267 "assem.dats" tmp169 = &ats_selptr_mac(ats_castptr_mac(anairiats_sum_6, tmp168), atslab_1) ; #line 267 "assem.dats" tmp170 = (ats_sum_ptr_type)0 ; #line 267 "assem.dats" ats_ptrget_mac(ats_ptr_type, tmp169) = tmp170 ; #line 267 "assem.dats" tmp171 = (ats_sum_ptr_type)0 ; #line 268 "assem.dats" tmp172 = (ats_sum_ptr_type)0 ; #line 268 "assem.dats" tmp67 = aux1_18 (arg0, ats_castfn_mac(ats_ptr_type, tmp162), tmp165, tmp168, tmp171, 0, tmp172) ; break ; } while (0) ; return (tmp67) ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_format] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 8217(line=275, offs=14) -- 8314(line=279, offs=24) */ ATSglobaldec() ats_bool_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_ismove (ats_ptr_type arg0) { /* local vardec */ ATSlocal (ats_bool_type, tmp173) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_ismove: #line 276 "assem.dats" do { /* branch: __ats_lab_36 */ #line 277 "assem.dats" __ats_lab_36_0: #line 277 "assem.dats" if (((ats_sum_ptr_type)arg0)->tag != 0) { goto __ats_lab_37_0 ; } #line 277 "assem.dats" __ats_lab_36_1: #line 277 "assem.dats" tmp173 = ats_false_bool ; break ; /* branch: __ats_lab_37 */ #line 278 "assem.dats" __ats_lab_37_0: #line 278 "assem.dats" if (((ats_sum_ptr_type)arg0)->tag != 1) { goto __ats_lab_38_0 ; } #line 278 "assem.dats" __ats_lab_37_1: #line 278 "assem.dats" tmp173 = ats_false_bool ; break ; /* branch: __ats_lab_38 */ #line 279 "assem.dats" __ats_lab_38_0: #line 279 "assem.dats" // if (((ats_sum_ptr_type)arg0)->tag != 2) { ats_deadcode_failure_handle () ; } #line 279 "assem.dats" __ats_lab_38_1: #line 279 "assem.dats" tmp173 = ats_true_bool ; break ; } while (0) ; return (tmp173) ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_ismove] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 8370(line=283, offs=18) -- 8488(line=287, offs=36) */ ATSglobaldec() ats_ptr_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_uselst_get (ats_ptr_type arg0) { /* local vardec */ ATSlocal (ats_ptr_type, tmp174) ; ATSlocal (ats_ptr_type, tmp175) ; ATSlocal (ats_int64_type, tmp176) ; ATSlocal (ats_ptr_type, tmp177) ; ATSlocal (ats_ptr_type, tmp178) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_uselst_get: #line 284 "assem.dats" do { /* branch: __ats_lab_39 */ #line 285 "assem.dats" __ats_lab_39_0: #line 285 "assem.dats" if (((ats_sum_ptr_type)arg0)->tag != 0) { goto __ats_lab_40_0 ; } #line 285 "assem.dats" __ats_lab_39_1: #line 285 "assem.dats" tmp175 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_1) ; #line 285 "assem.dats" tmp174 = tmp175 ; break ; /* branch: __ats_lab_40 */ #line 286 "assem.dats" __ats_lab_40_0: #line 286 "assem.dats" if (((ats_sum_ptr_type)arg0)->tag != 1) { goto __ats_lab_41_0 ; } #line 286 "assem.dats" __ats_lab_40_1: #line 286 "assem.dats" tmp174 = (ats_sum_ptr_type)0 ; break ; /* branch: __ats_lab_41 */ #line 287 "assem.dats" __ats_lab_41_0: #line 287 "assem.dats" // if (((ats_sum_ptr_type)arg0)->tag != 2) { ats_deadcode_failure_handle () ; } #line 287 "assem.dats" __ats_lab_41_1: #line 287 "assem.dats" tmp176 = ats_caselptr_mac(anairiats_sum_3, arg0, atslab_1) ; #line 287 "assem.dats" tmp174 = ATS_MALLOC(sizeof(anairiats_sum_6)) ; ats_selptrset_mac(anairiats_sum_6, tmp174, atslab_0, tmp176) ; #line 287 "assem.dats" tmp177 = &ats_selptr_mac(ats_castptr_mac(anairiats_sum_6, tmp174), atslab_1) ; #line 287 "assem.dats" tmp178 = (ats_sum_ptr_type)0 ; #line 287 "assem.dats" ats_ptrget_mac(ats_ptr_type, tmp177) = tmp178 ; break ; } while (0) ; return (tmp174) ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_uselst_get] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 8546(line=291, offs=18) -- 8664(line=295, offs=36) */ ATSglobaldec() ats_ptr_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_deflst_get (ats_ptr_type arg0) { /* local vardec */ ATSlocal (ats_ptr_type, tmp179) ; ATSlocal (ats_ptr_type, tmp180) ; ATSlocal (ats_int64_type, tmp181) ; ATSlocal (ats_ptr_type, tmp182) ; ATSlocal (ats_ptr_type, tmp183) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_deflst_get: #line 292 "assem.dats" do { /* branch: __ats_lab_42 */ #line 293 "assem.dats" __ats_lab_42_0: #line 293 "assem.dats" if (((ats_sum_ptr_type)arg0)->tag != 0) { goto __ats_lab_43_0 ; } #line 293 "assem.dats" __ats_lab_42_1: #line 293 "assem.dats" tmp180 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_2) ; #line 293 "assem.dats" tmp179 = tmp180 ; break ; /* branch: __ats_lab_43 */ #line 294 "assem.dats" __ats_lab_43_0: #line 294 "assem.dats" if (((ats_sum_ptr_type)arg0)->tag != 1) { goto __ats_lab_44_0 ; } #line 294 "assem.dats" __ats_lab_43_1: #line 294 "assem.dats" tmp179 = (ats_sum_ptr_type)0 ; break ; /* branch: __ats_lab_44 */ #line 295 "assem.dats" __ats_lab_44_0: #line 295 "assem.dats" // if (((ats_sum_ptr_type)arg0)->tag != 2) { ats_deadcode_failure_handle () ; } #line 295 "assem.dats" __ats_lab_44_1: #line 295 "assem.dats" tmp181 = ats_caselptr_mac(anairiats_sum_3, arg0, atslab_2) ; #line 295 "assem.dats" tmp179 = ATS_MALLOC(sizeof(anairiats_sum_6)) ; ats_selptrset_mac(anairiats_sum_6, tmp179, atslab_0, tmp181) ; #line 295 "assem.dats" tmp182 = &ats_selptr_mac(ats_castptr_mac(anairiats_sum_6, tmp179), atslab_1) ; #line 295 "assem.dats" tmp183 = (ats_sum_ptr_type)0 ; #line 295 "assem.dats" ats_ptrget_mac(ats_ptr_type, tmp182) = tmp183 ; break ; } while (0) ; return (tmp179) ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_deflst_get] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/assem.dats: 8720(line=299, offs=16) -- 8793(line=300, offs=53) */ ATSglobaldec() ats_ptr_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_jump_get (ats_ptr_type arg0) { /* local vardec */ ATSlocal (ats_ptr_type, tmp184) ; ATSlocal (ats_ptr_type, tmp185) ; __ats_lab__2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_jump_get: #line 299 "assem.dats" do { /* branch: __ats_lab_45 */ #line 300 "assem.dats" __ats_lab_45_0: #line 300 "assem.dats" if (((ats_sum_ptr_type)arg0)->tag != 0) { goto __ats_lab_46_0 ; } #line 300 "assem.dats" __ats_lab_45_1: #line 300 "assem.dats" tmp185 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_3) ; #line 300 "assem.dats" tmp184 = tmp185 ; break ; /* branch: __ats_lab_46 */ #line 300 "assem.dats" __ats_lab_46_0: #line 300 "assem.dats" __ats_lab_46_1: #line 300 "assem.dats" tmp184 = (ats_sum_ptr_type)0 ; break ; } while (0) ; return (tmp184) ; } /* end of [_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__instr_jump_get] */ /* static load function */ extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__staload (void) ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats__staload (void) ; extern ats_void_type ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats__staload (void) ; ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__staload () { static int _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__staload_flag = 0 ; if (_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__staload_flag) return ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__staload_flag = 1 ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__staload () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats__staload () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats__staload () ; return ; } /* staload function */ /* dynamic load function */ // dynload flag declaration extern ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__dynload_flag ; ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__dynload () { _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__dynload_flag = 1 ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__staload () ; #ifdef _ATS_PROOFCHECK ATS_2d0_2e2_2e6_2prelude_2SATS_2list_2esats__list_length_is_nonnegative_prfck () ; ATS_2d0_2e2_2e6_2prelude_2SATS_2list_vt_2esats__list_vt_length_is_nonnegative_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats____assert_prfck () ; #endif /* _ATS_PROOFCHECK */ /* marking static variables for GC */ /* marking external values for GC */ /* code for dynamic loading */ return ; } /* end of [dynload function] */ /* external codes at mid */ /* external codes at bot */ /* ****** ****** */ /* end of [assem_dats.c] */