~mmach/netext73/isl

« back to all changes in this revision

Viewing changes to isl_schedule_tree.c

  • Committer: mmach
  • Date: 2019-11-30 10:20:58 UTC
  • Revision ID: netbit73@gmail.com-20191130102058-lsf24jbmi7uwprbs
22-2

Show diffs side-by-side

added added

removed removed

Lines of Context:
2736
2736
        return p;
2737
2737
}
2738
2738
 
 
2739
#undef BASE
 
2740
#define BASE str
 
2741
#define isl_str const char
 
2742
#include "print_yaml_field_templ.c"
 
2743
 
 
2744
#undef BASE
 
2745
#define BASE set
 
2746
#include "print_yaml_field_templ.c"
 
2747
 
 
2748
#undef BASE
 
2749
#define BASE union_set
 
2750
#include "print_yaml_field_templ.c"
 
2751
 
 
2752
#undef BASE
 
2753
#define BASE union_map
 
2754
#include "print_yaml_field_templ.c"
 
2755
 
 
2756
#undef BASE
 
2757
#define BASE union_pw_multi_aff
 
2758
#include "print_yaml_field_templ.c"
 
2759
 
2739
2760
/* Print "tree" to "p".
2740
2761
 *
2741
2762
 * If "n_ancestor" is non-negative, then "child_pos" contains the child
2767
2788
        switch (tree->type) {
2768
2789
        case isl_schedule_node_error:
2769
2790
                p = isl_printer_print_str(p, "ERROR");
 
2791
                p = isl_printer_yaml_next(p);
2770
2792
                break;
2771
2793
        case isl_schedule_node_leaf:
2772
2794
                p = isl_printer_print_str(p, "leaf");
 
2795
                p = isl_printer_yaml_next(p);
2773
2796
                break;
2774
2797
        case isl_schedule_node_sequence:
2775
2798
                p = isl_printer_print_str(p, "sequence");
 
2799
                p = isl_printer_yaml_next(p);
2776
2800
                sequence = 1;
2777
2801
                break;
2778
2802
        case isl_schedule_node_set:
2779
2803
                p = isl_printer_print_str(p, "set");
 
2804
                p = isl_printer_yaml_next(p);
2780
2805
                sequence = 1;
2781
2806
                break;
2782
2807
        case isl_schedule_node_context:
2783
 
                p = isl_printer_print_str(p, "context");
2784
 
                p = isl_printer_yaml_next(p);
2785
 
                p = isl_printer_print_str(p, "\"");
2786
 
                p = isl_printer_print_set(p, tree->context);
2787
 
                p = isl_printer_print_str(p, "\"");
 
2808
                p = print_yaml_field_set(p, "context", tree->context);
2788
2809
                break;
2789
2810
        case isl_schedule_node_domain:
2790
 
                p = isl_printer_print_str(p, "domain");
2791
 
                p = isl_printer_yaml_next(p);
2792
 
                p = isl_printer_print_str(p, "\"");
2793
 
                p = isl_printer_print_union_set(p, tree->domain);
2794
 
                p = isl_printer_print_str(p, "\"");
 
2811
                p = print_yaml_field_union_set(p, "domain", tree->domain);
2795
2812
                break;
2796
2813
        case isl_schedule_node_expansion:
2797
 
                p = isl_printer_print_str(p, "contraction");
2798
 
                p = isl_printer_yaml_next(p);
2799
 
                p = isl_printer_print_str(p, "\"");
2800
 
                p = isl_printer_print_union_pw_multi_aff(p, tree->contraction);
2801
 
                p = isl_printer_print_str(p, "\"");
2802
 
                p = isl_printer_yaml_next(p);
2803
 
                p = isl_printer_print_str(p, "expansion");
2804
 
                p = isl_printer_yaml_next(p);
2805
 
                p = isl_printer_print_str(p, "\"");
2806
 
                p = isl_printer_print_union_map(p, tree->expansion);
2807
 
                p = isl_printer_print_str(p, "\"");
 
2814
                p = print_yaml_field_union_pw_multi_aff(p, "contraction",
 
2815
                                                        tree->contraction);
 
2816
                p = print_yaml_field_union_map(p, "expansion", tree->expansion);
2808
2817
                break;
2809
2818
        case isl_schedule_node_extension:
2810
 
                p = isl_printer_print_str(p, "extension");
2811
 
                p = isl_printer_yaml_next(p);
2812
 
                p = isl_printer_print_str(p, "\"");
2813
 
                p = isl_printer_print_union_map(p, tree->extension);
2814
 
                p = isl_printer_print_str(p, "\"");
 
2819
                p = print_yaml_field_union_map(p, "extension", tree->extension);
2815
2820
                break;
2816
2821
        case isl_schedule_node_filter:
2817
 
                p = isl_printer_print_str(p, "filter");
2818
 
                p = isl_printer_yaml_next(p);
2819
 
                p = isl_printer_print_str(p, "\"");
2820
 
                p = isl_printer_print_union_set(p, tree->filter);
2821
 
                p = isl_printer_print_str(p, "\"");
 
2822
                p = print_yaml_field_union_set(p, "filter", tree->filter);
2822
2823
                break;
2823
2824
        case isl_schedule_node_guard:
2824
 
                p = isl_printer_print_str(p, "guard");
2825
 
                p = isl_printer_yaml_next(p);
2826
 
                p = isl_printer_print_str(p, "\"");
2827
 
                p = isl_printer_print_set(p, tree->guard);
2828
 
                p = isl_printer_print_str(p, "\"");
 
2825
                p = print_yaml_field_set(p, "guard", tree->guard);
2829
2826
                break;
2830
2827
        case isl_schedule_node_mark:
2831
 
                p = isl_printer_print_str(p, "mark");
2832
 
                p = isl_printer_yaml_next(p);
2833
 
                p = isl_printer_print_str(p, "\"");
2834
 
                p = isl_printer_print_str(p, isl_id_get_name(tree->mark));
2835
 
                p = isl_printer_print_str(p, "\"");
 
2828
                p = print_yaml_field_str(p, "mark",
 
2829
                                        isl_id_get_name(tree->mark));
2836
2830
                break;
2837
2831
        case isl_schedule_node_band:
2838
2832
                p = print_tree_band(p, tree->band);
 
2833
                p = isl_printer_yaml_next(p);
2839
2834
                break;
2840
2835
        }
2841
 
        p = isl_printer_yaml_next(p);
2842
2836
 
2843
2837
        n = isl_schedule_tree_n_children(tree);
2844
2838
        if (n < 0)