/* ** ** The C code is generated by ATS/Anairiats ** The compilation time is: 2011-9-10: 22h:10m ** */ /* 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 */ /* type definitions */ typedef struct { ats_ptr_type atslab_0 ; ats_ptr_type atslab_1 ; } anairiats_rec_0 ; typedef struct { ats_ptr_type atslab_0 ; ats_ptr_type atslab_1 ; } anairiats_sum_1 ; 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_2 ; typedef struct { int tag ; ats_ptr_type atslab_0 ; ats_ptr_type atslab_1 ; } anairiats_sum_3 ; typedef struct { int tag ; ats_ptr_type atslab_0 ; ats_int64_type atslab_1 ; ats_int64_type atslab_2 ; } anairiats_sum_4 ; /* 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__list_vt_cons) ; ATSextern_val(ats_sum_type, ATS_2d0_2e2_2e6_2prelude_2basics_sta_2esats__list_vt_nil) ; 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) ; ATSextern_val(ats_sum_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__FRAGproc) ; ATSextern_val(ats_sum_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__FRAGstring) ; ATSextern_val(ats_sum_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__F1RAGproc) ; ATSextern_val(ats_sum_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__F1RAGstring) ; /* external dynamic constant declarations */ ATSextern_fun(ats_void_type, atspre_fprint_newline) (ats_ptr_type) ; ATSextern_fun(ats_char_type, atspre_char_of_int) (ats_int_type) ; ATSextern_fun(ats_bool_type, atspre_eq_char_char) (ats_char_type, ats_char_type) ; ATSextern_fun(ats_void_type, atspre_print_char) (ats_char_type) ; ATSextern_fun(ats_bool_type, atspre_char_isprint) (ats_char_type) ; ATSextern_fun(ats_int_type, atspre_int_of_char) (ats_char_type) ; ATSextern_fun(ats_int_type, atspre_add_int_int) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_bool_type, atspre_lte_int_int) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_bool_type, atspre_gt_int_int) (ats_int_type, ats_int_type) ; ATSextern_fun(ats_uint_type, atspre_uint_of_char) (ats_char_type) ; ATSextern_fun(ats_uint_type, atspre_div_uint_uint) (ats_uint_type, ats_uint_type) ; ATSextern_fun(ats_uint_type, atspre_mod_uint_uint) (ats_uint_type, ats_uint_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_void_type, atspre_printf_exn) (ats_ptr_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_print_string) (ats_ptr_type) ; ATSextern_fun(ats_char_type, atspre_string_get_char_at) (ats_ptr_type, ats_size_type) ; ATSextern_fun(ats_bool_type, atspre_string_is_empty) (ats_ptr_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_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2parser_2esats__parse_from_stdin) () ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2parser_2esats__parse_from_file) (ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tychecker_2esats__transProg) (ats_ptr_type) ; ATSextern_fun(ats_bool_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__eq_temp_temp) (ats_int64_type, ats_int64_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__print_label) (ats_ptr_type) ; ATSextern_fun(ats_void_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2irtree_2esats__fprint_stm) (ats_ptr_type, ats_ptr_type) ; ATSextern_val(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__theTopFrame) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__frame_name_get) (ats_ptr_type) ; ATSextern_fun(ats_int_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__frame_size_get) (ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__frame_theFraglst_get) () ; ATSextern_fun(ats_void_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__procEntryExit1_entr_emit) (ats_ptr_type, ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2translate_2esats__unNx) (ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2translate_2esats__transProg1) (ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__linearize) (ats_ptr_type) ; ATSextern_fun(anairiats_rec_0, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__blocklst_gen) (ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__trace_schedule) (ats_ptr_type, ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2codegen_2esats__codegen_proc) (ats_ptr_type, ats_ptr_type) ; ATSextern_fun(ats_int64_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__regassgn_find) (ats_int64_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__regalloc_insfmt) (ats_ptr_type) ; ATSextern_fun(ats_ptr_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__instrlst_regalloc) (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) ; /* 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 */ ATSglobal(ats_sum_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__F1RAGproc) ; ATSglobal(ats_sum_type, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__F1RAGstring) ; /* exn constructor declarations */ /* global dynamic (non-functional) constant declarations */ /* internal function declarations */ static ats_void_type compusage_0 (ats_ptr_type arg0) ; static ats_void_type fprint_stmlst_1 (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_void_type print_stmlst_2 (ats_ptr_type arg0) ; static ats_void_type loop_4 (ats_ptr_type arg0) ; static ats_void_type emit_proc_3 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) ; static ats_void_type emit_char_5 (ats_char_type arg0) ; static ats_void_type loop_7 (ats_ptr_type arg0, ats_size_type arg1) ; static ats_void_type emit_string_def_6 (ats_ptr_type arg0) ; static ats_void_type emit_string_8 (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_ptr_type loop_12 (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_ptr_type list_reverse_append2_vt_01496_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_ptr_type list_reverse_01497_ats_ptr_type (ats_ptr_type arg0) ; static ats_ptr_type revapp_16 (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_ptr_type list_vt_reverse_append_01561_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_ptr_type list_vt_reverse_01560_ats_ptr_type (ats_ptr_type arg0) ; static ats_ptr_type loop_13 (ats_ptr_type arg0, ats_ptr_type arg1) ; static ats_void_type loop_17 (ats_ptr_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/tigerats_main.dats: 1379(line=83, offs=4) -- 1667(line=90, offs=4) */ ATSstaticdec() ats_void_type compusage_0 (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp0) ; // ATSlocal_void (tmp1) ; // ATSlocal_void (tmp2) ; __ats_lab_compusage_0: #line 84 "tigerats_main.dats" /* tmp1 = */ atspre_printf_exn (ATSstrcst("%s --help: print out usage\n"), arg0) ; #line 88 "tigerats_main.dats" /* tmp2 = */ atspre_printf_exn (ATSstrcst("%s : compile the given \n"), arg0) ; #line 89 "tigerats_main.dats" /* tmp0 = */ atspre_printf_exn (ATSstrcst("%s : compile the program read from the stdin\n"), arg0) ; return /* (tmp0) */ ; } /* end of [compusage_0] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 2959(line=143, offs=5) -- 3203(line=148, offs=40) */ ATSstaticdec() ats_void_type fprint_stmlst_1 (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ // ATSlocal_void (tmp3) ; ATSlocal (ats_ptr_type, tmp4) ; ATSlocal (ats_ptr_type, tmp5) ; // ATSlocal_void (tmp6) ; // ATSlocal_void (tmp7) ; __ats_lab_fprint_stmlst_1: #line 144 "tigerats_main.dats" do { /* branch: __ats_lab_0 */ #line 145 "tigerats_main.dats" __ats_lab_0_0: #line 145 "tigerats_main.dats" if (arg1 == (ats_sum_ptr_type)0) { goto __ats_lab_1_0 ; } #line 145 "tigerats_main.dats" __ats_lab_0_1: #line 145 "tigerats_main.dats" tmp4 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_0) ; #line 145 "tigerats_main.dats" tmp5 = ats_caselptr_mac(anairiats_sum_1, arg1, atslab_1) ; #line 146 "tigerats_main.dats" /* tmp6 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2irtree_2esats__fprint_stm (arg0, tmp4) ; #line 146 "tigerats_main.dats" /* tmp7 = */ atspre_fprint_newline (arg0) ; #line 146 "tigerats_main.dats" arg0 = arg0 ; #line 146 "tigerats_main.dats" arg1 = tmp5 ; #line 146 "tigerats_main.dats" goto __ats_lab_fprint_stmlst_1 ; // tail call break ; /* branch: __ats_lab_1 */ #line 148 "tigerats_main.dats" __ats_lab_1_0: #line 148 "tigerats_main.dats" // if (arg1 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 148 "tigerats_main.dats" __ats_lab_1_1: #line 148 "tigerats_main.dats" /* tmp3 = */ atspre_fprint_newline (arg0) ; break ; } while (0) ; return /* (tmp3) */ ; } /* end of [fprint_stmlst_1] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 3234(line=151, offs=4) -- 3302(line=151, offs=72) */ ATSstaticdec() ats_void_type print_stmlst_2 (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp8) ; __ats_lab_print_stmlst_2: #line 151 "tigerats_main.dats" /* tmp8 = */ fprint_stmlst_1 (stdout, arg0) ; return /* (tmp8) */ ; } /* end of [print_stmlst_2] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 4110(line=178, offs=7) -- 5016(line=200, offs=24) */ ATSstaticdec() ats_void_type loop_4 (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp20) ; ATSlocal (ats_ptr_type, tmp21) ; ATSlocal (ats_ptr_type, tmp22) ; // ATSlocal_void (tmp23) ; ATSlocal (ats_ptr_type, tmp24) ; ATSlocal (ats_bool_type, tmp25) ; ATSlocal (ats_ptr_type, tmp26) ; ATSlocal (ats_ptr_type, tmp27) ; ATSlocal (ats_int64_type, tmp28) ; ATSlocal (ats_int64_type, tmp29) ; ATSlocal (ats_int64_type, tmp30) ; ATSlocal (ats_int64_type, tmp31) ; ATSlocal (ats_bool_type, tmp32) ; ATSlocal (ats_ptr_type, tmp33) ; __ats_lab_loop_4: #line 178 "tigerats_main.dats" do { /* branch: __ats_lab_2 */ #line 179 "tigerats_main.dats" __ats_lab_2_0: #line 179 "tigerats_main.dats" if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_7_0 ; } #line 179 "tigerats_main.dats" __ats_lab_2_1: #line 179 "tigerats_main.dats" tmp21 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_0) ; #line 179 "tigerats_main.dats" tmp22 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_1) ; #line 183 "tigerats_main.dats" do { /* branch: __ats_lab_3 */ #line 184 "tigerats_main.dats" __ats_lab_3_0: #line 184 "tigerats_main.dats" if (((ats_sum_ptr_type)tmp21)->tag != 0) { goto __ats_lab_4_0 ; } #line 184 "tigerats_main.dats" __ats_lab_3_1: #line 184 "tigerats_main.dats" tmp24 = ats_caselptr_mac(anairiats_sum_2, tmp21, atslab_0) ; #line 185 "tigerats_main.dats" tmp25 = atspre_string_is_empty (tmp24) ; #line 185 "tigerats_main.dats" if (!tmp25) { goto __ats_lab_4_1 ; } break ; /* branch: __ats_lab_4 */ #line 187 "tigerats_main.dats" __ats_lab_4_0: #line 187 "tigerats_main.dats" if (((ats_sum_ptr_type)tmp21)->tag != 0) { goto __ats_lab_5_0 ; } #line 187 "tigerats_main.dats" __ats_lab_4_1: #line 188 "tigerats_main.dats" tmp26 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__regalloc_insfmt (tmp21) ; #line 188 "tigerats_main.dats" /* tmp23 = */ atspre_printf_exn (ATSstrcst("\t%s\n"), tmp26) ; break ; /* branch: __ats_lab_5 */ #line 190 "tigerats_main.dats" __ats_lab_5_0: #line 190 "tigerats_main.dats" if (((ats_sum_ptr_type)tmp21)->tag != 1) { goto __ats_lab_6_0 ; } #line 190 "tigerats_main.dats" __ats_lab_5_1: #line 190 "tigerats_main.dats" tmp27 = ats_caselptr_mac(anairiats_sum_3, tmp21, atslab_0) ; #line 190 "tigerats_main.dats" /* tmp23 = */ atspre_printf_exn (ATSstrcst("%s\n"), tmp27) ; break ; /* branch: __ats_lab_6 */ #line 191 "tigerats_main.dats" __ats_lab_6_0: #line 191 "tigerats_main.dats" // if (((ats_sum_ptr_type)tmp21)->tag != 2) { ats_deadcode_failure_handle () ; } #line 191 "tigerats_main.dats" __ats_lab_6_1: #line 191 "tigerats_main.dats" tmp28 = ats_caselptr_mac(anairiats_sum_4, tmp21, atslab_1) ; #line 191 "tigerats_main.dats" tmp29 = ats_caselptr_mac(anairiats_sum_4, tmp21, atslab_2) ; #line 192 "tigerats_main.dats" tmp30 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__regassgn_find (tmp28) ; #line 192 "tigerats_main.dats" tmp31 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__regassgn_find (tmp29) ; #line 193 "tigerats_main.dats" tmp32 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__eq_temp_temp (tmp30, tmp31) ; #line 193 "tigerats_main.dats" if (tmp32) { /* empty */ } else { #line 194 "tigerats_main.dats" tmp33 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__regalloc_insfmt (tmp21) ; #line 194 "tigerats_main.dats" /* tmp23 = */ atspre_printf_exn (ATSstrcst("\t%s\n"), tmp33) ; } /* end of [if] */ break ; } while (0) ; #line 198 "tigerats_main.dats" arg0 = tmp22 ; #line 198 "tigerats_main.dats" goto __ats_lab_loop_4 ; // tail call break ; /* branch: __ats_lab_7 */ #line 200 "tigerats_main.dats" __ats_lab_7_0: #line 200 "tigerats_main.dats" // if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 200 "tigerats_main.dats" __ats_lab_7_1: break ; } while (0) ; return /* (tmp20) */ ; } /* end of [loop_4] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 3373(line=159, offs=4) -- 5181(line=206, offs=2) */ ATSstaticdec() ats_void_type emit_proc_3 (ats_int_type arg0, ats_ptr_type arg1, ats_ptr_type arg2) { /* local vardec */ // ATSlocal_void (tmp9) ; ATSlocal (ats_int_type, tmp10) ; ATSlocal (ats_ptr_type, tmp11) ; ATSlocal (ats_ptr_type, tmp12) ; // ATSlocal_void (tmp13) ; // ATSlocal_void (tmp14) ; ATSlocal (ats_bool_type, tmp15) ; // ATSlocal_void (tmp16) ; // ATSlocal_void (tmp17) ; // ATSlocal_void (tmp18) ; // ATSlocal_void (tmp19) ; // ATSlocal_void (tmp34) ; // ATSlocal_void (tmp35) ; __ats_lab_emit_proc_3: #line 162 "tigerats_main.dats" tmp10 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__frame_size_get (arg1) ; #line 163 "tigerats_main.dats" tmp11 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__frame_name_get (arg1) ; #line 164 "tigerats_main.dats" tmp12 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__label_name_get (tmp11) ; #line 165 "tigerats_main.dats" /* tmp13 = */ atspre_print_string (ATSstrcst("\t.text\n")) ; #line 166 "tigerats_main.dats" tmp15 = atspre_gt_int_int (arg0, 0) ; #line 166 "tigerats_main.dats" if (tmp15) { #line 167 "tigerats_main.dats" /* tmp14 = */ atspre_printf_exn (ATSstrcst(".globl %s\n"), tmp12) ; } else { /* empty */ } /* end of [if] */ #line 170 "tigerats_main.dats" /* tmp16 = */ atspre_printf_exn (ATSstrcst("\t.type\t%s, @function\n"), tmp12) ; #line 172 "tigerats_main.dats" /* tmp17 = */ atspre_printf_exn (ATSstrcst("%s:\n"), tmp12) ; #line 175 "tigerats_main.dats" /* tmp18 = */ atspre_printf_exn (ATSstrcst("\t.set\t.%s_framesize, %i\n"), tmp12, tmp10) ; #line 177 "tigerats_main.dats" /* tmp19 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__procEntryExit1_entr_emit (stdout, arg1) ; #line 202 "tigerats_main.dats" /* tmp34 = */ loop_4 (arg2) ; #line 204 "tigerats_main.dats" /* tmp35 = */ atspre_printf_exn (ATSstrcst("\t.size\t%s, .-%s\n"), tmp12, tmp12) ; return /* (tmp9) */ ; } /* end of [emit_proc_3] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 5229(line=210, offs=4) -- 5809(line=228, offs=8) */ ATSstaticdec() ats_void_type emit_char_5 (ats_char_type arg0) { /* local vardec */ // ATSlocal_void (tmp36) ; ATSlocal (ats_bool_type, tmp37) ; ATSlocal (ats_bool_type, tmp38) ; ATSlocal (ats_bool_type, tmp39) ; ATSlocal (ats_int_type, tmp40) ; ATSlocal (ats_uint_type, tmp41) ; ATSlocal (ats_uint_type, tmp42) ; ATSlocal (ats_char_type, tmp43) ; ATSlocal (ats_int_type, tmp44) ; ATSlocal (ats_uint_type, tmp45) ; ATSlocal (ats_uint_type, tmp46) ; ATSlocal (ats_char_type, tmp47) ; ATSlocal (ats_int_type, tmp48) ; ATSlocal (ats_uint_type, tmp49) ; ATSlocal (ats_char_type, tmp50) ; ATSlocal (ats_int_type, tmp51) ; // ATSlocal_void (tmp52) ; // ATSlocal_void (tmp53) ; // ATSlocal_void (tmp54) ; __ats_lab_emit_char_5: #line 211 "tigerats_main.dats" do { /* branch: __ats_lab_8 */ #line 212 "tigerats_main.dats" __ats_lab_8_0: #line 212 "tigerats_main.dats" __ats_lab_8_1: #line 212 "tigerats_main.dats" tmp37 = atspre_char_isprint (arg0) ; #line 212 "tigerats_main.dats" if (!tmp37) { goto __ats_lab_9_1 ; } #line 212 "tigerats_main.dats" /* tmp36 = */ atspre_print_char (arg0) ; break ; /* branch: __ats_lab_9 */ #line 213 "tigerats_main.dats" __ats_lab_9_0: #line 213 "tigerats_main.dats" __ats_lab_9_1: #line 213 "tigerats_main.dats" tmp38 = atspre_eq_char_char (arg0, '\n') ; #line 213 "tigerats_main.dats" if (!tmp38) { goto __ats_lab_10_1 ; } #line 213 "tigerats_main.dats" /* tmp36 = */ atspre_print_string (ATSstrcst("\\n")) ; break ; /* branch: __ats_lab_10 */ #line 214 "tigerats_main.dats" __ats_lab_10_0: #line 214 "tigerats_main.dats" __ats_lab_10_1: #line 214 "tigerats_main.dats" tmp39 = atspre_eq_char_char (arg0, '\t') ; #line 214 "tigerats_main.dats" if (!tmp39) { goto __ats_lab_11_1 ; } #line 214 "tigerats_main.dats" /* tmp36 = */ atspre_print_string (ATSstrcst("\\t")) ; break ; /* branch: __ats_lab_11 */ #line 215 "tigerats_main.dats" __ats_lab_11_0: #line 215 "tigerats_main.dats" __ats_lab_11_1: #line 216 "tigerats_main.dats" tmp40 = atspre_int_of_char ('0') ; #line 217 "tigerats_main.dats" tmp41 = atspre_uint_of_char (arg0) ; #line 218 "tigerats_main.dats" tmp42 = atspre_mod_uint_uint (tmp41, 8U) ; #line 219 "tigerats_main.dats" tmp44 = atspre_add_int_int (tmp40, ats_castfn_mac(ats_int_type, tmp42)) ; #line 219 "tigerats_main.dats" tmp43 = atspre_char_of_int (tmp44) ; #line 220 "tigerats_main.dats" tmp45 = atspre_div_uint_uint (tmp41, 8U) ; #line 221 "tigerats_main.dats" tmp46 = atspre_mod_uint_uint (tmp45, 8U) ; #line 222 "tigerats_main.dats" tmp48 = atspre_add_int_int (tmp40, ats_castfn_mac(ats_int_type, tmp46)) ; #line 222 "tigerats_main.dats" tmp47 = atspre_char_of_int (tmp48) ; #line 223 "tigerats_main.dats" tmp49 = atspre_div_uint_uint (tmp45, 8U) ; #line 225 "tigerats_main.dats" tmp51 = atspre_add_int_int (tmp40, ats_castfn_mac(ats_int_type, tmp49)) ; #line 225 "tigerats_main.dats" tmp50 = atspre_char_of_int (tmp51) ; #line 227 "tigerats_main.dats" /* tmp52 = */ atspre_print_char ('\\') ; #line 227 "tigerats_main.dats" /* tmp53 = */ atspre_print_char (tmp50) ; #line 227 "tigerats_main.dats" /* tmp54 = */ atspre_print_char (tmp47) ; #line 227 "tigerats_main.dats" /* tmp36 = */ atspre_print_char (tmp43) ; break ; } while (0) ; return /* (tmp36) */ ; } /* end of [emit_char_5] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 6025(line=238, offs=9) -- 6178(line=241, offs=49) */ ATSstaticdec() ats_void_type loop_7 (ats_ptr_type arg0, ats_size_type arg1) { /* local vardec */ // ATSlocal_void (tmp57) ; ATSlocal (ats_bool_type, tmp58) ; // ATSlocal_void (tmp59) ; ATSlocal (ats_char_type, tmp60) ; ATSlocal (ats_size_type, tmp61) ; __ats_lab_loop_7: #line 240 "tigerats_main.dats" tmp58 = atspre_string_isnot_at_end (arg0, arg1) ; #line 240 "tigerats_main.dats" if (tmp58) { #line 241 "tigerats_main.dats" tmp60 = atspre_string_get_char_at (arg0, arg1) ; #line 241 "tigerats_main.dats" /* tmp59 = */ emit_char_5 (tmp60) ; #line 241 "tigerats_main.dats" tmp61 = atspre_add_size1_int1 (arg1, 1) ; #line 241 "tigerats_main.dats" arg0 = arg0 ; #line 241 "tigerats_main.dats" arg1 = tmp61 ; #line 241 "tigerats_main.dats" goto __ats_lab_loop_7 ; // tail call } else { /* empty */ } /* end of [if] */ return /* (tmp57) */ ; } /* end of [loop_7] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 5871(line=233, offs=4) -- 6268(line=246, offs=2) */ ATSstaticdec() ats_void_type emit_string_def_6 (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp55) ; // ATSlocal_void (tmp56) ; // ATSlocal_void (tmp62) ; __ats_lab_emit_string_def_6: #line 235 "tigerats_main.dats" /* tmp56 = */ atspre_print_char ('"') ; #line 236 "tigerats_main.dats" /* tmp62 = */ loop_7 (ats_castfn_mac(ats_ptr_type, arg0), 0) ; #line 245 "tigerats_main.dats" /* tmp55 = */ atspre_print_char ('"') ; return /* (tmp55) */ ; } /* end of [emit_string_def_6] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 6649(line=261, offs=4) -- 6878(line=269, offs=2) */ ATSstaticdec() ats_void_type emit_string_8 (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ // ATSlocal_void (tmp63) ; // ATSlocal_void (tmp64) ; // ATSlocal_void (tmp65) ; // ATSlocal_void (tmp66) ; // ATSlocal_void (tmp67) ; // ATSlocal_void (tmp68) ; __ats_lab_emit_string_8: #line 263 "tigerats_main.dats" /* tmp64 = */ atspre_print_string (ATSstrcst(".")) ; #line 264 "tigerats_main.dats" /* tmp65 = */ _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2esats__print_label (arg0) ; #line 265 "tigerats_main.dats" /* tmp66 = */ atspre_print_string (ATSstrcst(":\n")) ; #line 266 "tigerats_main.dats" /* tmp67 = */ atspre_print_string (ATSstrcst("\t.string\t")) ; #line 267 "tigerats_main.dats" /* tmp68 = */ emit_string_def_6 (arg1) ; #line 268 "tigerats_main.dats" /* tmp63 = */ atspre_print_string (ATSstrcst("\n")) ; return /* (tmp63) */ ; } /* end of [emit_string_8] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list.dats: 56557(line=1952, offs=7) -- 56722(line=1954, offs=74) */ ATSstaticdec() ats_ptr_type loop_12 (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp83) ; ATSlocal (ats_ptr_type, tmp84) ; ATSlocal (ats_ptr_type, tmp85) ; ATSlocal (ats_ptr_type, tmp86) ; __ats_lab_loop_12: #line 1954 "list.dats" do { /* branch: __ats_lab_18 */ #line 1954 "list.dats" __ats_lab_18_0: #line 1954 "list.dats" if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_19_0 ; } #line 1954 "list.dats" __ats_lab_18_1: #line 1954 "list.dats" tmp84 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_0) ; #line 1954 "list.dats" tmp85 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_1) ; #line 1954 "list.dats" tmp86 = ATS_MALLOC(sizeof(anairiats_sum_1)) ; ats_selptrset_mac(anairiats_sum_1, tmp86, atslab_0, tmp84) ; ats_selptrset_mac(anairiats_sum_1, tmp86, atslab_1, arg1) ; #line 1954 "list.dats" arg0 = tmp85 ; #line 1954 "list.dats" arg1 = tmp86 ; #line 1954 "list.dats" goto __ats_lab_loop_12 ; // tail call break ; /* branch: __ats_lab_19 */ #line 1954 "list.dats" __ats_lab_19_0: #line 1954 "list.dats" // if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 1954 "list.dats" __ats_lab_19_1: #line 1954 "list.dats" tmp83 = arg1 ; break ; } while (0) ; return (tmp83) ; } /* end of [loop_12] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list.dats: 56536(line=1951, offs=25) -- 56745(line=1957, offs=4) */ ATSstaticdec() ats_ptr_type list_reverse_append2_vt_01496_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp82) ; __ats_lab_list_reverse_append2_vt_01496_ats_ptr_type: #line 1956 "list.dats" tmp82 = loop_12 (arg0, arg1) ; return (tmp82) ; } /* end of [list_reverse_append2_vt_01496_ats_ptr_type] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list.dats: 56830(line=1962, offs=14) -- 56886(line=1963, offs=50) */ ATSstaticdec() ats_ptr_type list_reverse_01497_ats_ptr_type (ats_ptr_type arg0) { /* local vardec */ ATSlocal (ats_ptr_type, tmp81) ; ATSlocal (ats_ptr_type, tmp87) ; __ats_lab_list_reverse_01497_ats_ptr_type: #line 1963 "list.dats" tmp87 = (ats_sum_ptr_type)0 ; #line 1963 "list.dats" tmp81 = list_reverse_append2_vt_01496_ats_ptr_type (arg0, tmp87) ; return (tmp81) ; } /* end of [list_reverse_01497_ats_ptr_type] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list_vt.dats: 6886(line=238, offs=7) -- 7171(line=247, offs=28) */ ATSstaticdec() ats_ptr_type revapp_16 (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp106) ; ATSlocal (ats_ptr_type, tmp107) ; ATSlocal (ats_ptr_type, tmp108) ; ATSlocal (ats_ptr_type, tmp109) ; __ats_lab_revapp_16: #line 241 "list_vt.dats" do { /* branch: __ats_lab_24 */ #line 242 "list_vt.dats" __ats_lab_24_0: #line 242 "list_vt.dats" if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_25_0 ; } #line 242 "list_vt.dats" __ats_lab_24_1: #line 242 "list_vt.dats" tmp107 = &ats_caselptr_mac(anairiats_sum_1, arg0, atslab_1) ; #line 243 "list_vt.dats" tmp108 = ats_ptrget_mac(ats_ptr_type, tmp107) ; #line 245 "list_vt.dats" ats_ptrget_mac(ats_ptr_type, tmp107) = arg1 ; #line 245 "list_vt.dats" tmp109 = arg0 ; #line 245 "list_vt.dats" arg0 = tmp108 ; #line 245 "list_vt.dats" arg1 = tmp109 ; #line 245 "list_vt.dats" goto __ats_lab_revapp_16 ; // tail call break ; /* branch: __ats_lab_25 */ #line 247 "list_vt.dats" __ats_lab_25_0: #line 247 "list_vt.dats" // if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 247 "list_vt.dats" __ats_lab_25_1: #line 247 "list_vt.dats" tmp106 = arg1 ; break ; } while (0) ; return (tmp106) ; } /* end of [revapp_16] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list_vt.dats: 6865(line=237, offs=24) -- 7217(line=251, offs=4) */ ATSstaticdec() ats_ptr_type list_vt_reverse_append_01561_ats_ptr_type (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp105) ; __ats_lab_list_vt_reverse_append_01561_ats_ptr_type: #line 250 "list_vt.dats" tmp105 = revapp_16 (arg0, arg1) ; return (tmp105) ; } /* end of [list_vt_reverse_append_01561_ats_ptr_type] */ /* // /home/fac2/hwxi/research/ATS/IMPLEMENT/Geizella/Anairiats/svn/ats-lang/prelude/DATS/list_vt.dats: 6747(line=232, offs=17) -- 6799(line=233, offs=46) */ ATSstaticdec() ats_ptr_type list_vt_reverse_01560_ats_ptr_type (ats_ptr_type arg0) { /* local vardec */ ATSlocal (ats_ptr_type, tmp104) ; ATSlocal (ats_ptr_type, tmp110) ; __ats_lab_list_vt_reverse_01560_ats_ptr_type: #line 233 "list_vt.dats" tmp110 = (ats_sum_ptr_type)0 ; #line 233 "list_vt.dats" tmp104 = list_vt_reverse_append_01561_ats_ptr_type (arg0, tmp110) ; return (tmp104) ; } /* end of [list_vt_reverse_01560_ats_ptr_type] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 8470(line=329, offs=9) -- 9815(line=364, offs=47) */ ATSstaticdec() ats_ptr_type loop_13 (ats_ptr_type arg0, ats_ptr_type arg1) { /* local vardec */ ATSlocal (ats_ptr_type, tmp89) ; ATSlocal (ats_ptr_type, tmp90) ; ATSlocal (ats_ptr_type, tmp91) ; ATSlocal (ats_ptr_type, tmp92) ; ATSlocal (ats_ptr_type, tmp93) ; ATSlocal (ats_ptr_type, tmp94) ; ATSlocal (ats_ptr_type, tmp95) ; ATSlocal (anairiats_rec_0, tmp96) ; ATSlocal (ats_ptr_type, tmp97) ; ATSlocal (ats_ptr_type, tmp98) ; ATSlocal (ats_ptr_type, tmp99) ; ATSlocal (ats_ptr_type, tmp100) ; ATSlocal (ats_ptr_type, tmp101) ; ATSlocal (ats_ptr_type, tmp102) ; ATSlocal (ats_ptr_type, tmp103) ; __ats_lab_loop_13: #line 329 "tigerats_main.dats" do { /* branch: __ats_lab_20 */ #line 330 "tigerats_main.dats" __ats_lab_20_0: #line 330 "tigerats_main.dats" if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_23_0 ; } #line 330 "tigerats_main.dats" __ats_lab_20_1: #line 330 "tigerats_main.dats" tmp90 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_0) ; #line 330 "tigerats_main.dats" tmp91 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_1) ; #line 330 "tigerats_main.dats" ATS_FREE(arg0) ; #line 331 "tigerats_main.dats" do { /* branch: __ats_lab_21 */ #line 332 "tigerats_main.dats" __ats_lab_21_0: #line 332 "tigerats_main.dats" if (((ats_sum_ptr_type)tmp90)->tag != 0) { goto __ats_lab_22_0 ; } #line 332 "tigerats_main.dats" __ats_lab_21_1: #line 332 "tigerats_main.dats" tmp93 = ats_caselptr_mac(anairiats_sum_3, tmp90, atslab_0) ; #line 332 "tigerats_main.dats" tmp94 = ats_caselptr_mac(anairiats_sum_3, tmp90, atslab_1) ; #line 336 "tigerats_main.dats" tmp95 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__linearize (tmp94) ; #line 337 "tigerats_main.dats" tmp96 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__blocklst_gen (tmp95) ; #line 337 "tigerats_main.dats" tmp97 = ats_select_mac(tmp96, atslab_0) ; #line 337 "tigerats_main.dats" tmp98 = ats_select_mac(tmp96, atslab_1) ; #line 338 "tigerats_main.dats" tmp99 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__trace_schedule (tmp97, tmp98) ; #line 339 "tigerats_main.dats" tmp100 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__frame_name_get (tmp93) ; #line 348 "tigerats_main.dats" tmp92 = ATS_MALLOC(sizeof(anairiats_sum_3)) ; ((ats_sum_ptr_type)tmp92)->tag = 0 ; ats_selptrset_mac(anairiats_sum_3, tmp92, atslab_0, tmp93) ; ats_selptrset_mac(anairiats_sum_3, tmp92, atslab_1, tmp99) ; break ; /* branch: __ats_lab_22 */ #line 350 "tigerats_main.dats" __ats_lab_22_0: #line 350 "tigerats_main.dats" // if (((ats_sum_ptr_type)tmp90)->tag != 1) { ats_deadcode_failure_handle () ; } #line 350 "tigerats_main.dats" __ats_lab_22_1: #line 350 "tigerats_main.dats" tmp101 = ats_caselptr_mac(anairiats_sum_3, tmp90, atslab_0) ; #line 350 "tigerats_main.dats" tmp102 = ats_caselptr_mac(anairiats_sum_3, tmp90, atslab_1) ; #line 359 "tigerats_main.dats" tmp92 = ATS_MALLOC(sizeof(anairiats_sum_3)) ; ((ats_sum_ptr_type)tmp92)->tag = 1 ; ats_selptrset_mac(anairiats_sum_3, tmp92, atslab_0, tmp101) ; ats_selptrset_mac(anairiats_sum_3, tmp92, atslab_1, tmp102) ; break ; } while (0) ; #line 362 "tigerats_main.dats" tmp103 = ATS_MALLOC(sizeof(anairiats_sum_1)) ; ats_selptrset_mac(anairiats_sum_1, tmp103, atslab_0, tmp92) ; ats_selptrset_mac(anairiats_sum_1, tmp103, atslab_1, arg1) ; #line 362 "tigerats_main.dats" arg0 = tmp91 ; #line 362 "tigerats_main.dats" arg1 = tmp103 ; #line 362 "tigerats_main.dats" goto __ats_lab_loop_13 ; // tail call break ; /* branch: __ats_lab_23 */ #line 364 "tigerats_main.dats" __ats_lab_23_0: #line 364 "tigerats_main.dats" // if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 364 "tigerats_main.dats" __ats_lab_23_1: #line 364 "tigerats_main.dats" tmp89 = list_vt_reverse_01560_ats_ptr_type (arg1) ; break ; } while (0) ; return (tmp89) ; } /* end of [loop_13] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 10162(line=377, offs=9) -- 10956(line=398, offs=30) */ ATSstaticdec() ats_void_type loop_17 (ats_ptr_type arg0) { /* local vardec */ // ATSlocal_void (tmp118) ; ATSlocal (ats_ptr_type, tmp119) ; ATSlocal (ats_ptr_type, tmp120) ; // ATSlocal_void (tmp121) ; ATSlocal (ats_ptr_type, tmp122) ; ATSlocal (ats_ptr_type, tmp123) ; ATSlocal (ats_ptr_type, tmp124) ; ATSlocal (ats_ptr_type, tmp125) ; ATSlocal (ats_ptr_type, tmp126) ; ATSlocal (ats_ptr_type, tmp127) ; __ats_lab_loop_17: #line 377 "tigerats_main.dats" do { /* branch: __ats_lab_26 */ #line 378 "tigerats_main.dats" __ats_lab_26_0: #line 378 "tigerats_main.dats" if (arg0 == (ats_sum_ptr_type)0) { goto __ats_lab_29_0 ; } #line 378 "tigerats_main.dats" __ats_lab_26_1: #line 378 "tigerats_main.dats" tmp119 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_0) ; #line 378 "tigerats_main.dats" tmp120 = ats_caselptr_mac(anairiats_sum_1, arg0, atslab_1) ; #line 378 "tigerats_main.dats" ATS_FREE(arg0) ; #line 379 "tigerats_main.dats" do { /* branch: __ats_lab_27 */ #line 380 "tigerats_main.dats" __ats_lab_27_0: #line 380 "tigerats_main.dats" if (((ats_sum_ptr_type)tmp119)->tag != 0) { goto __ats_lab_28_0 ; } #line 380 "tigerats_main.dats" __ats_lab_27_1: #line 380 "tigerats_main.dats" tmp122 = ats_caselptr_mac(anairiats_sum_3, tmp119, atslab_0) ; #line 380 "tigerats_main.dats" tmp123 = ats_caselptr_mac(anairiats_sum_3, tmp119, atslab_1) ; #line 387 "tigerats_main.dats" tmp124 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2codegen_2esats__codegen_proc (tmp122, tmp123) ; #line 388 "tigerats_main.dats" tmp125 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__instrlst_regalloc (tmp122, tmp124) ; #line 389 "tigerats_main.dats" /* tmp121 = */ emit_proc_3 (0, tmp122, tmp125) ; break ; /* branch: __ats_lab_28 */ #line 393 "tigerats_main.dats" __ats_lab_28_0: #line 393 "tigerats_main.dats" // if (((ats_sum_ptr_type)tmp119)->tag != 1) { ats_deadcode_failure_handle () ; } #line 393 "tigerats_main.dats" __ats_lab_28_1: #line 393 "tigerats_main.dats" tmp126 = ats_caselptr_mac(anairiats_sum_3, tmp119, atslab_0) ; #line 393 "tigerats_main.dats" tmp127 = ats_caselptr_mac(anairiats_sum_3, tmp119, atslab_1) ; #line 393 "tigerats_main.dats" /* tmp121 = */ emit_string_8 (tmp126, tmp127) ; break ; } while (0) ; #line 396 "tigerats_main.dats" arg0 = tmp120 ; #line 396 "tigerats_main.dats" goto __ats_lab_loop_17 ; // tail call break ; /* branch: __ats_lab_29 */ #line 398 "tigerats_main.dats" __ats_lab_29_0: #line 398 "tigerats_main.dats" // if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; } #line 398 "tigerats_main.dats" __ats_lab_29_1: break ; } while (0) ; return /* (tmp118) */ ; } /* end of [loop_17] */ /* // /cs-pub/www-dir/faculty/hwxi/academic/courses/CS525/Spring09/code/Tiger/tigerats_main.dats: 6968(line=274, offs=16) -- 11258(line=409, offs=4) */ ATSglobaldec() ats_void_type mainats (ats_int_type arg0, ats_ref_type arg1) { /* local vardec */ // ATSlocal_void (tmp69) ; // ATSlocal_void (tmp70) ; ATSlocal (ats_bool_type, tmp71) ; ATSlocal (ats_ptr_type, tmp72) ; // ATSlocal_void (tmp73) ; ATSlocal (ats_ptr_type, tmp74) ; ATSlocal (ats_ptr_type, tmp75) ; ATSlocal (ats_ptr_type, tmp76) ; ATSlocal (ats_ptr_type, tmp77) ; ATSlocal (ats_ptr_type, tmp78) ; ATSlocal (ats_ptr_type, tmp79) ; ATSlocal (ats_ptr_type, tmp80) ; ATSlocal (ats_ptr_type, tmp88) ; ATSlocal (ats_ptr_type, tmp111) ; ATSlocal (ats_ptr_type, tmp112) ; ATSlocal (ats_ptr_type, tmp113) ; ATSlocal (anairiats_rec_0, tmp114) ; ATSlocal (ats_ptr_type, tmp115) ; ATSlocal (ats_ptr_type, tmp116) ; ATSlocal (ats_ptr_type, tmp117) ; // ATSlocal_void (tmp128) ; ATSlocal (ats_ptr_type, tmp129) ; ATSlocal (ats_ptr_type, tmp130) ; __ats_lab_mainats: #line 275 "tigerats_main.dats" do { /* branch: __ats_lab_12 */ #line 276 "tigerats_main.dats" __ats_lab_12_0: #line 276 "tigerats_main.dats" __ats_lab_12_1: #line 276 "tigerats_main.dats" tmp71 = atspre_igte (arg0, 2) ; #line 276 "tigerats_main.dats" if (!tmp71) { goto __ats_lab_15_1 ; } #line 276 "tigerats_main.dats" tmp72 = ats_caselind_mac(ats_ptr_type, arg1, [1]) ; #line 276 "tigerats_main.dats" do { /* branch: __ats_lab_13 */ #line 277 "tigerats_main.dats" __ats_lab_13_0: #line 277 "tigerats_main.dats" if (__strcmpats(tmp72, ATSstrcst("--help"))) { goto __ats_lab_14_0 ; } #line 277 "tigerats_main.dats" __ats_lab_13_1: #line 278 "tigerats_main.dats" tmp74 = ats_caselind_mac(ats_ptr_type, arg1, [0]) ; #line 278 "tigerats_main.dats" /* tmp73 = */ compusage_0 (tmp74) ; #line 278 "tigerats_main.dats" /* tmp70 = */ ats_exit (0) ; break ; /* branch: __ats_lab_14 */ #line 283 "tigerats_main.dats" __ats_lab_14_0: #line 283 "tigerats_main.dats" __ats_lab_14_1: break ; } while (0) ; break ; /* branch: __ats_lab_15 */ #line 285 "tigerats_main.dats" __ats_lab_15_0: #line 285 "tigerats_main.dats" __ats_lab_15_1: break ; } while (0) ; #line 287 "tigerats_main.dats" do { /* branch: __ats_lab_16 */ #line 288 "tigerats_main.dats" __ats_lab_16_0: #line 288 "tigerats_main.dats" if (arg0 != 1) { goto __ats_lab_17_0 ; } #line 288 "tigerats_main.dats" __ats_lab_16_1: #line 288 "tigerats_main.dats" tmp75 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2parser_2esats__parse_from_stdin () ; break ; /* branch: __ats_lab_17 */ #line 289 "tigerats_main.dats" __ats_lab_17_0: #line 289 "tigerats_main.dats" __ats_lab_17_1: #line 289 "tigerats_main.dats" tmp76 = ats_caselind_mac(ats_ptr_type, arg1, [1]) ; #line 289 "tigerats_main.dats" tmp75 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2parser_2esats__parse_from_file (tmp76) ; break ; } while (0) ; #line 296 "tigerats_main.dats" tmp77 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tychecker_2esats__transProg (tmp75) ; #line 309 "tigerats_main.dats" tmp78 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2translate_2esats__transProg1 (tmp75) ; #line 315 "tigerats_main.dats" tmp79 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2translate_2esats__unNx (tmp78) ; #line 321 "tigerats_main.dats" tmp88 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__frame_theFraglst_get () ; #line 321 "tigerats_main.dats" tmp80 = list_reverse_01497_ats_ptr_type (tmp88) ; #line 328 "tigerats_main.dats" tmp112 = (ats_sum_ptr_type)0 ; #line 328 "tigerats_main.dats" tmp111 = loop_13 (tmp80, tmp112) ; #line 368 "tigerats_main.dats" tmp113 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__linearize (tmp79) ; #line 369 "tigerats_main.dats" tmp114 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__blocklst_gen (tmp113) ; #line 369 "tigerats_main.dats" tmp115 = ats_select_mac(tmp114, atslab_0) ; #line 369 "tigerats_main.dats" tmp116 = ats_select_mac(tmp114, atslab_1) ; #line 370 "tigerats_main.dats" tmp117 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__trace_schedule (tmp115, tmp116) ; #line 376 "tigerats_main.dats" /* tmp128 = */ loop_17 (tmp111) ; #line 403 "tigerats_main.dats" tmp129 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2codegen_2esats__codegen_proc (_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__theTopFrame, tmp117) ; #line 405 "tigerats_main.dats" tmp130 = _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__instrlst_regalloc (_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__theTopFrame, tmp129) ; #line 406 "tigerats_main.dats" /* tmp69 = */ emit_proc_3 (1, _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__theTopFrame, tmp130) ; return /* (tmp69) */ ; } /* end of [mainats] */ /* static load function */ extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2error_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2types_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2absyn_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2parser_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tychecker_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp0_2esats__staload (void) ; 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_2irtree_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2translate_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp1_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 _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2codegen_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fgraph_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2igraph_2esats__staload (void) ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_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_2tigerats_main_2edats__staload () { static int _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__staload_flag = 0 ; if (_2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__staload_flag) return ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__staload_flag = 1 ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2error_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2types_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2absyn_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2parser_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tychecker_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp0_2esats__staload () ; _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_2irtree_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2translate_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp1_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2codegen_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fgraph_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2igraph_2esats__staload () ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2esats__staload () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_2edats__staload () ; ATS_2d0_2e2_2e6_2prelude_2DATS_2list_vt_2edats__staload () ; // _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__F1RAGproc.tag = 0 ; // _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__F1RAGstring.tag = 1 ; return ; } /* staload function */ /* dynamic load function */ ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2liveness_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2liveness_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2igraph_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2igraph_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fgraph_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fgraph_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tempset_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tempset_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fgnode_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fgnode_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2codegen_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2codegen_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp1_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp1_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2translate_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2translate_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2irtree_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2irtree_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp0_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp0_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tychecker_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tychecker_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2PARCOMB_2parcomb_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2PARCOMB_2parcomb_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2PARCOMB_2tokenize_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2PARCOMB_2tokenize_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2PARCOMB_2posloc_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2PARCOMB_2posloc_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2parser_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2parser_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fixity_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fixity_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2absyn_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2absyn_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2types_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2types_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2symbol_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2symbol_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2stamp_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2stamp_2edats__dynload (void) ; ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2error_2edats__dynload_flag = 0 ; extern ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2error_2edats__dynload (void) ; // dynload flag declaration // extern ats_int_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__dynload_flag ; ats_void_type _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__dynload () { // _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__dynload_flag = 1 ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_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 */ #line 39 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2error_2edats__dynload () ; #line 40 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2stamp_2edats__dynload () ; #line 41 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2symbol_2edats__dynload () ; #line 42 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2types_2edats__dynload () ; #line 43 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2absyn_2edats__dynload () ; #line 45 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fixity_2edats__dynload () ; #line 46 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2parser_2edats__dynload () ; #line 48 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2PARCOMB_2posloc_2edats__dynload () ; #line 49 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2PARCOMB_2tokenize_2edats__dynload () ; #line 50 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2PARCOMB_2parcomb_2edats__dynload () ; #line 52 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tychecker_2edats__dynload () ; #line 54 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp0_2edats__dynload () ; #line 56 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2templab_2edats__dynload () ; #line 58 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2irtree_2edats__dynload () ; #line 60 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2frame_2edats__dynload () ; #line 62 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2translate_2edats__dynload () ; #line 64 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2canonical_2edats__dynload () ; #line 66 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2interp1_2edats__dynload () ; #line 68 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2assem_2edats__dynload () ; #line 70 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2codegen_2edats__dynload () ; #line 72 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fgnode_2edats__dynload () ; #line 73 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tempset_2edats__dynload () ; #line 75 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2fgraph_2edats__dynload () ; #line 76 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2igraph_2edats__dynload () ; #line 78 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2liveness_2edats__dynload () ; #line 79 "tigerats_main.dats" _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2regalloc_2edats__dynload () ; return ; } /* end of [dynload function] */ int main (int argc, char *argv[]) { ATS_GC_INIT() ; mainats_prelude() ; _2cs_2dpub_2www_2ddir_2faculty_2hwxi_2academic_2courses_2CS525_2Spring09_2code_2Tiger_2tigerats_main_2edats__dynload() ; mainats((ats_int_type)argc, (ats_ptr_type)argv) ; return (0) ; } /* end of main */ /* external codes at mid */ /* external codes at bot */ /* ****** ****** */ /* end of [tigerats_main_dats.c] */