• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #define DEF_FUNC(x)                                                            \
2   void x() {}
3 #define DEF_2_FUNCS(x) DEF_FUNC(x##_1) DEF_FUNC(x##_2)
4 #define DEF_4_FUNCS(x) DEF_2_FUNCS(x##_1) DEF_2_FUNCS(x##_2)
5 #define DEF_8_FUNCS(x) DEF_4_FUNCS(x##_1) DEF_4_FUNCS(x##_2)
6 #define DEF_16_FUNCS(x) DEF_8_FUNCS(x##_1) DEF_8_FUNCS(x##_2)
7 #define DEF_32_FUNCS(x) DEF_16_FUNCS(x##_1) DEF_16_FUNCS(x##_2)
8 #define DEF_64_FUNCS(x) DEF_32_FUNCS(x##_1) DEF_32_FUNCS(x##_2)
9 #define DEF_128_FUNCS(x) DEF_64_FUNCS(x##_1) DEF_64_FUNCS(x##_2)
10 #define DEF_256_FUNCS(x) DEF_128_FUNCS(x##_1) DEF_128_FUNCS(x##_2)
11 #define DEF_512_FUNCS(x) DEF_256_FUNCS(x##_1) DEF_256_FUNCS(x##_2)
12 
13 #define FUNC_ADDR(x) &x,
14 #define FUNC_2_ADDRS(x) FUNC_ADDR(x##_1) FUNC_ADDR(x##_2)
15 #define FUNC_4_ADDRS(x) FUNC_2_ADDRS(x##_1) FUNC_2_ADDRS(x##_2)
16 #define FUNC_8_ADDRS(x) FUNC_4_ADDRS(x##_1) FUNC_4_ADDRS(x##_2)
17 #define FUNC_16_ADDRS(x) FUNC_8_ADDRS(x##_1) FUNC_8_ADDRS(x##_2)
18 #define FUNC_32_ADDRS(x) FUNC_16_ADDRS(x##_1) FUNC_16_ADDRS(x##_2)
19 #define FUNC_64_ADDRS(x) FUNC_32_ADDRS(x##_1) FUNC_32_ADDRS(x##_2)
20 #define FUNC_128_ADDRS(x) FUNC_64_ADDRS(x##_1) FUNC_64_ADDRS(x##_2)
21 #define FUNC_256_ADDRS(x) FUNC_128_ADDRS(x##_1) FUNC_128_ADDRS(x##_2)
22 #define FUNC_512_ADDRS(x) FUNC_256_ADDRS(x##_1) FUNC_256_ADDRS(x##_2)
23 
24 DEF_512_FUNCS(foo)
25 void *CalleeAddrs[] = {FUNC_512_ADDRS(foo)};
26 
27 typedef void (*FPT)(void);
28 
getFunc(int I)29 FPT getFunc(int I) { return CalleeAddrs[I]; }
30 
31 #ifdef SHARED_LIB
shared_entry()32 int shared_entry() {
33 #else
34 #ifdef CALL_SHARED
35 extern int shared_entry();
36 #endif
37 int main() {
38 #endif
39   int I;
40   for (I = 0; I < 512; I++) {
41     FPT Fp = getFunc(I);
42     int J;
43     for (J = 0; J < 1000 - I; J++)
44       Fp();
45 
46     Fp = getFunc(511 - I);
47     for (J = 0; J < 2000 - I; J++)
48       Fp();
49 #ifdef STRESS
50     Fp = getFunc(I);
51     for (J = 0; J < 2000 - I; J++)
52       Fp();
53 
54     Fp = getFunc(I);
55     for (J = 0; J < 2000 - I; J++)
56       Fp();
57 
58     Fp = getFunc(I);
59     for (J = 0; J < 2000 - I; J++)
60       Fp();
61 
62     Fp = getFunc(I);
63     for (J = 0; J < 2000 - I; J++)
64       Fp();
65 #endif
66   }
67 #ifdef CALL_SHARED
68   shared_entry();
69 #endif
70   return 0;
71 }
72 
73 // IR: :ir
74 // CHECK-LABEL:  main:
75 // CHECK:	[ 0, foo_1_1_1_1_1_1_1_1_1, 1000 ]
76 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_1_1_1_2, 999 ]
77 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_1_1_2_1, 998 ]
78 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_1_1_2_2, 997 ]
79 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_1_2_1_1, 996 ]
80 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_1_2_1_2, 995 ]
81 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_1_2_2_1, 994 ]
82 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_1_2_2_2, 993 ]
83 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_2_1_1_1, 992 ]
84 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_2_1_1_2, 991 ]
85 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_2_1_2_1, 990 ]
86 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_2_1_2_2, 989 ]
87 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_2_2_1_1, 988 ]
88 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_2_2_1_2, 987 ]
89 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_2_2_2_1, 986 ]
90 // CHECK-NEXT:	[ 0, foo_1_1_1_1_1_2_2_2_2, 985 ]
91 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_1_1_1_1, 984 ]
92 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_1_1_1_2, 983 ]
93 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_1_1_2_1, 982 ]
94 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_1_1_2_2, 981 ]
95 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_1_2_1_1, 980 ]
96 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_1_2_1_2, 979 ]
97 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_1_2_2_1, 978 ]
98 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_1_2_2_2, 977 ]
99 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_2_1_1_1, 976 ]
100 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_2_1_1_2, 975 ]
101 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_2_1_2_1, 974 ]
102 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_2_1_2_2, 973 ]
103 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_2_2_1_1, 972 ]
104 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_2_2_1_2, 971 ]
105 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_2_2_2_1, 970 ]
106 // CHECK-NEXT:	[ 0, foo_1_1_1_1_2_2_2_2_2, 969 ]
107 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_1_1_1_1, 968 ]
108 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_1_1_1_2, 967 ]
109 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_1_1_2_1, 966 ]
110 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_1_1_2_2, 965 ]
111 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_1_2_1_1, 964 ]
112 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_1_2_1_2, 963 ]
113 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_1_2_2_1, 962 ]
114 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_1_2_2_2, 961 ]
115 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_2_1_1_1, 960 ]
116 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_2_1_1_2, 959 ]
117 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_2_1_2_1, 958 ]
118 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_2_1_2_2, 957 ]
119 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_2_2_1_1, 956 ]
120 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_2_2_1_2, 955 ]
121 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_2_2_2_1, 954 ]
122 // CHECK-NEXT:	[ 0, foo_1_1_1_2_1_2_2_2_2, 953 ]
123 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_1_1_1_1, 952 ]
124 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_1_1_1_2, 951 ]
125 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_1_1_2_1, 950 ]
126 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_1_1_2_2, 949 ]
127 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_1_2_1_1, 948 ]
128 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_1_2_1_2, 947 ]
129 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_1_2_2_1, 946 ]
130 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_1_2_2_2, 945 ]
131 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_2_1_1_1, 944 ]
132 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_2_1_1_2, 943 ]
133 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_2_1_2_1, 942 ]
134 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_2_1_2_2, 941 ]
135 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_2_2_1_1, 940 ]
136 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_2_2_1_2, 939 ]
137 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_2_2_2_1, 938 ]
138 // CHECK-NEXT:	[ 0, foo_1_1_1_2_2_2_2_2_2, 937 ]
139 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_1_1_1_1, 936 ]
140 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_1_1_1_2, 935 ]
141 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_1_1_2_1, 934 ]
142 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_1_1_2_2, 933 ]
143 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_1_2_1_1, 932 ]
144 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_1_2_1_2, 931 ]
145 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_1_2_2_1, 930 ]
146 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_1_2_2_2, 929 ]
147 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_2_1_1_1, 928 ]
148 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_2_1_1_2, 927 ]
149 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_2_1_2_1, 926 ]
150 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_2_1_2_2, 925 ]
151 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_2_2_1_1, 924 ]
152 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_2_2_1_2, 923 ]
153 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_2_2_2_1, 922 ]
154 // CHECK-NEXT:	[ 0, foo_1_1_2_1_1_2_2_2_2, 921 ]
155 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_1_1_1_1, 920 ]
156 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_1_1_1_2, 919 ]
157 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_1_1_2_1, 918 ]
158 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_1_1_2_2, 917 ]
159 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_1_2_1_1, 916 ]
160 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_1_2_1_2, 915 ]
161 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_1_2_2_1, 914 ]
162 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_1_2_2_2, 913 ]
163 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_2_1_1_1, 912 ]
164 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_2_1_1_2, 911 ]
165 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_2_1_2_1, 910 ]
166 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_2_1_2_2, 909 ]
167 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_2_2_1_1, 908 ]
168 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_2_2_1_2, 907 ]
169 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_2_2_2_1, 906 ]
170 // CHECK-NEXT:	[ 0, foo_1_1_2_1_2_2_2_2_2, 905 ]
171 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_1_1_1_1, 904 ]
172 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_1_1_1_2, 903 ]
173 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_1_1_2_1, 902 ]
174 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_1_1_2_2, 901 ]
175 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_1_2_1_1, 900 ]
176 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_1_2_1_2, 899 ]
177 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_1_2_2_1, 898 ]
178 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_1_2_2_2, 897 ]
179 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_2_1_1_1, 896 ]
180 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_2_1_1_2, 895 ]
181 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_2_1_2_1, 894 ]
182 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_2_1_2_2, 893 ]
183 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_2_2_1_1, 892 ]
184 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_2_2_1_2, 891 ]
185 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_2_2_2_1, 890 ]
186 // CHECK-NEXT:	[ 0, foo_1_1_2_2_1_2_2_2_2, 889 ]
187 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_1_1_1_1, 888 ]
188 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_1_1_1_2, 887 ]
189 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_1_1_2_1, 886 ]
190 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_1_1_2_2, 885 ]
191 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_1_2_1_1, 884 ]
192 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_1_2_1_2, 883 ]
193 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_1_2_2_1, 882 ]
194 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_1_2_2_2, 881 ]
195 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_2_1_1_1, 880 ]
196 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_2_1_1_2, 879 ]
197 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_2_1_2_1, 878 ]
198 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_2_1_2_2, 877 ]
199 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_2_2_1_1, 876 ]
200 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_2_2_1_2, 875 ]
201 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_2_2_2_1, 874 ]
202 // CHECK-NEXT:	[ 0, foo_1_1_2_2_2_2_2_2_2, 873 ]
203 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_1_1_1_1, 872 ]
204 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_1_1_1_2, 871 ]
205 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_1_1_2_1, 870 ]
206 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_1_1_2_2, 869 ]
207 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_1_2_1_1, 868 ]
208 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_1_2_1_2, 867 ]
209 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_1_2_2_1, 866 ]
210 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_1_2_2_2, 865 ]
211 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_2_1_1_1, 864 ]
212 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_2_1_1_2, 863 ]
213 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_2_1_2_1, 862 ]
214 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_2_1_2_2, 861 ]
215 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_2_2_1_1, 860 ]
216 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_2_2_1_2, 859 ]
217 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_2_2_2_1, 858 ]
218 // CHECK-NEXT:	[ 0, foo_1_2_1_1_1_2_2_2_2, 857 ]
219 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_1_1_1_1, 856 ]
220 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_1_1_1_2, 855 ]
221 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_1_1_2_1, 854 ]
222 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_1_1_2_2, 853 ]
223 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_1_2_1_1, 852 ]
224 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_1_2_1_2, 851 ]
225 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_1_2_2_1, 850 ]
226 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_1_2_2_2, 849 ]
227 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_2_1_1_1, 848 ]
228 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_2_1_1_2, 847 ]
229 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_2_1_2_1, 846 ]
230 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_2_1_2_2, 845 ]
231 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_2_2_1_1, 844 ]
232 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_2_2_1_2, 843 ]
233 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_2_2_2_1, 842 ]
234 // CHECK-NEXT:	[ 0, foo_1_2_1_1_2_2_2_2_2, 841 ]
235 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_1_1_1_1, 840 ]
236 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_1_1_1_2, 839 ]
237 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_1_1_2_1, 838 ]
238 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_1_1_2_2, 837 ]
239 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_1_2_1_1, 836 ]
240 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_1_2_1_2, 835 ]
241 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_1_2_2_1, 834 ]
242 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_1_2_2_2, 833 ]
243 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_2_1_1_1, 832 ]
244 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_2_1_1_2, 831 ]
245 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_2_1_2_1, 830 ]
246 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_2_1_2_2, 829 ]
247 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_2_2_1_1, 828 ]
248 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_2_2_1_2, 827 ]
249 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_2_2_2_1, 826 ]
250 // CHECK-NEXT:	[ 0, foo_1_2_1_2_1_2_2_2_2, 825 ]
251 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_1_1_1_1, 824 ]
252 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_1_1_1_2, 823 ]
253 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_1_1_2_1, 822 ]
254 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_1_1_2_2, 821 ]
255 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_1_2_1_1, 820 ]
256 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_1_2_1_2, 819 ]
257 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_1_2_2_1, 818 ]
258 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_1_2_2_2, 817 ]
259 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_2_1_1_1, 816 ]
260 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_2_1_1_2, 815 ]
261 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_2_1_2_1, 814 ]
262 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_2_1_2_2, 813 ]
263 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_2_2_1_1, 812 ]
264 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_2_2_1_2, 811 ]
265 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_2_2_2_1, 810 ]
266 // CHECK-NEXT:	[ 0, foo_1_2_1_2_2_2_2_2_2, 809 ]
267 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_1_1_1_1, 808 ]
268 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_1_1_1_2, 807 ]
269 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_1_1_2_1, 806 ]
270 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_1_1_2_2, 805 ]
271 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_1_2_1_1, 804 ]
272 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_1_2_1_2, 803 ]
273 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_1_2_2_1, 802 ]
274 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_1_2_2_2, 801 ]
275 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_2_1_1_1, 800 ]
276 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_2_1_1_2, 799 ]
277 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_2_1_2_1, 798 ]
278 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_2_1_2_2, 797 ]
279 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_2_2_1_1, 796 ]
280 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_2_2_1_2, 795 ]
281 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_2_2_2_1, 794 ]
282 // CHECK-NEXT:	[ 0, foo_1_2_2_1_1_2_2_2_2, 793 ]
283 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_1_1_1_1, 792 ]
284 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_1_1_1_2, 791 ]
285 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_1_1_2_1, 790 ]
286 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_1_1_2_2, 789 ]
287 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_1_2_1_1, 788 ]
288 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_1_2_1_2, 787 ]
289 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_1_2_2_1, 786 ]
290 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_1_2_2_2, 785 ]
291 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_2_1_1_1, 784 ]
292 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_2_1_1_2, 783 ]
293 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_2_1_2_1, 782 ]
294 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_2_1_2_2, 781 ]
295 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_2_2_1_1, 780 ]
296 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_2_2_1_2, 779 ]
297 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_2_2_2_1, 778 ]
298 // CHECK-NEXT:	[ 0, foo_1_2_2_1_2_2_2_2_2, 777 ]
299 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_1_1_1_1, 776 ]
300 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_1_1_1_2, 775 ]
301 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_1_1_2_1, 774 ]
302 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_1_1_2_2, 773 ]
303 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_1_2_1_1, 772 ]
304 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_1_2_1_2, 771 ]
305 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_1_2_2_1, 770 ]
306 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_1_2_2_2, 769 ]
307 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_2_1_1_1, 768 ]
308 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_2_1_1_2, 767 ]
309 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_2_1_2_1, 766 ]
310 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_2_1_2_2, 765 ]
311 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_2_2_1_1, 764 ]
312 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_2_2_1_2, 763 ]
313 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_2_2_2_1, 762 ]
314 // CHECK-NEXT:	[ 0, foo_1_2_2_2_1_2_2_2_2, 761 ]
315 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_1_1_1_1, 760 ]
316 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_1_1_1_2, 759 ]
317 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_1_1_2_1, 758 ]
318 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_1_1_2_2, 757 ]
319 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_1_2_1_1, 756 ]
320 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_1_2_1_2, 755 ]
321 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_1_2_2_1, 754 ]
322 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_1_2_2_2, 753 ]
323 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_2_1_1_1, 752 ]
324 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_2_1_1_2, 751 ]
325 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_2_1_2_1, 750 ]
326 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_2_1_2_2, 749 ]
327 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_2_2_1_1, 748 ]
328 // CHECK-NEXT:	[ 0, foo_1_2_2_2_2_2_2_1_2, 747 ]
329 // CHECK-NEXT:	[ 0, foo
330 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_2_2_2_2, 2000 ]
331 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_2_2_2_1, 1999 ]
332 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_2_2_1_2, 1998 ]
333 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_2_2_1_1, 1997 ]
334 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_2_1_2_2, 1996 ]
335 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_2_1_2_1, 1995 ]
336 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_2_1_1_2, 1994 ]
337 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_2_1_1_1, 1993 ]
338 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_1_2_2_2, 1992 ]
339 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_1_2_2_1, 1991 ]
340 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_1_2_1_2, 1990 ]
341 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_1_2_1_1, 1989 ]
342 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_1_1_2_2, 1988 ]
343 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_1_1_2_1, 1987 ]
344 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_1_1_1_2, 1986 ]
345 // CHECK-NEXT:	[ 1, foo_2_2_2_2_2_1_1_1_1, 1985 ]
346 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_2_2_2_2, 1984 ]
347 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_2_2_2_1, 1983 ]
348 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_2_2_1_2, 1982 ]
349 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_2_2_1_1, 1981 ]
350 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_2_1_2_2, 1980 ]
351 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_2_1_2_1, 1979 ]
352 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_2_1_1_2, 1978 ]
353 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_2_1_1_1, 1977 ]
354 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_1_2_2_2, 1976 ]
355 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_1_2_2_1, 1975 ]
356 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_1_2_1_2, 1974 ]
357 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_1_2_1_1, 1973 ]
358 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_1_1_2_2, 1972 ]
359 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_1_1_2_1, 1971 ]
360 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_1_1_1_2, 1970 ]
361 // CHECK-NEXT:	[ 1, foo_2_2_2_2_1_1_1_1_1, 1969 ]
362 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_2_2_2_2, 1968 ]
363 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_2_2_2_1, 1967 ]
364 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_2_2_1_2, 1966 ]
365 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_2_2_1_1, 1965 ]
366 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_2_1_2_2, 1964 ]
367 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_2_1_2_1, 1963 ]
368 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_2_1_1_2, 1962 ]
369 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_2_1_1_1, 1961 ]
370 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_1_2_2_2, 1960 ]
371 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_1_2_2_1, 1959 ]
372 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_1_2_1_2, 1958 ]
373 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_1_2_1_1, 1957 ]
374 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_1_1_2_2, 1956 ]
375 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_1_1_2_1, 1955 ]
376 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_1_1_1_2, 1954 ]
377 // CHECK-NEXT:	[ 1, foo_2_2_2_1_2_1_1_1_1, 1953 ]
378 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_2_2_2_2, 1952 ]
379 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_2_2_2_1, 1951 ]
380 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_2_2_1_2, 1950 ]
381 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_2_2_1_1, 1949 ]
382 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_2_1_2_2, 1948 ]
383 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_2_1_2_1, 1947 ]
384 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_2_1_1_2, 1946 ]
385 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_2_1_1_1, 1945 ]
386 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_1_2_2_2, 1944 ]
387 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_1_2_2_1, 1943 ]
388 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_1_2_1_2, 1942 ]
389 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_1_2_1_1, 1941 ]
390 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_1_1_2_2, 1940 ]
391 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_1_1_2_1, 1939 ]
392 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_1_1_1_2, 1938 ]
393 // CHECK-NEXT:	[ 1, foo_2_2_2_1_1_1_1_1_1, 1937 ]
394 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_2_2_2_2, 1936 ]
395 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_2_2_2_1, 1935 ]
396 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_2_2_1_2, 1934 ]
397 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_2_2_1_1, 1933 ]
398 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_2_1_2_2, 1932 ]
399 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_2_1_2_1, 1931 ]
400 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_2_1_1_2, 1930 ]
401 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_2_1_1_1, 1929 ]
402 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_1_2_2_2, 1928 ]
403 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_1_2_2_1, 1927 ]
404 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_1_2_1_2, 1926 ]
405 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_1_2_1_1, 1925 ]
406 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_1_1_2_2, 1924 ]
407 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_1_1_2_1, 1923 ]
408 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_1_1_1_2, 1922 ]
409 // CHECK-NEXT:	[ 1, foo_2_2_1_2_2_1_1_1_1, 1921 ]
410 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_2_2_2_2, 1920 ]
411 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_2_2_2_1, 1919 ]
412 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_2_2_1_2, 1918 ]
413 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_2_2_1_1, 1917 ]
414 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_2_1_2_2, 1916 ]
415 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_2_1_2_1, 1915 ]
416 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_2_1_1_2, 1914 ]
417 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_2_1_1_1, 1913 ]
418 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_1_2_2_2, 1912 ]
419 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_1_2_2_1, 1911 ]
420 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_1_2_1_2, 1910 ]
421 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_1_2_1_1, 1909 ]
422 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_1_1_2_2, 1908 ]
423 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_1_1_2_1, 1907 ]
424 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_1_1_1_2, 1906 ]
425 // CHECK-NEXT:	[ 1, foo_2_2_1_2_1_1_1_1_1, 1905 ]
426 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_2_2_2_2, 1904 ]
427 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_2_2_2_1, 1903 ]
428 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_2_2_1_2, 1902 ]
429 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_2_2_1_1, 1901 ]
430 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_2_1_2_2, 1900 ]
431 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_2_1_2_1, 1899 ]
432 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_2_1_1_2, 1898 ]
433 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_2_1_1_1, 1897 ]
434 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_1_2_2_2, 1896 ]
435 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_1_2_2_1, 1895 ]
436 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_1_2_1_2, 1894 ]
437 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_1_2_1_1, 1893 ]
438 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_1_1_2_2, 1892 ]
439 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_1_1_2_1, 1891 ]
440 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_1_1_1_2, 1890 ]
441 // CHECK-NEXT:	[ 1, foo_2_2_1_1_2_1_1_1_1, 1889 ]
442 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_2_2_2_2, 1888 ]
443 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_2_2_2_1, 1887 ]
444 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_2_2_1_2, 1886 ]
445 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_2_2_1_1, 1885 ]
446 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_2_1_2_2, 1884 ]
447 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_2_1_2_1, 1883 ]
448 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_2_1_1_2, 1882 ]
449 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_2_1_1_1, 1881 ]
450 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_1_2_2_2, 1880 ]
451 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_1_2_2_1, 1879 ]
452 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_1_2_1_2, 1878 ]
453 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_1_2_1_1, 1877 ]
454 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_1_1_2_2, 1876 ]
455 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_1_1_2_1, 1875 ]
456 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_1_1_1_2, 1874 ]
457 // CHECK-NEXT:	[ 1, foo_2_2_1_1_1_1_1_1_1, 1873 ]
458 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_2_2_2_2, 1872 ]
459 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_2_2_2_1, 1871 ]
460 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_2_2_1_2, 1870 ]
461 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_2_2_1_1, 1869 ]
462 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_2_1_2_2, 1868 ]
463 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_2_1_2_1, 1867 ]
464 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_2_1_1_2, 1866 ]
465 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_2_1_1_1, 1865 ]
466 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_1_2_2_2, 1864 ]
467 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_1_2_2_1, 1863 ]
468 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_1_2_1_2, 1862 ]
469 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_1_2_1_1, 1861 ]
470 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_1_1_2_2, 1860 ]
471 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_1_1_2_1, 1859 ]
472 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_1_1_1_2, 1858 ]
473 // CHECK-NEXT:	[ 1, foo_2_1_2_2_2_1_1_1_1, 1857 ]
474 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_2_2_2_2, 1856 ]
475 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_2_2_2_1, 1855 ]
476 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_2_2_1_2, 1854 ]
477 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_2_2_1_1, 1853 ]
478 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_2_1_2_2, 1852 ]
479 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_2_1_2_1, 1851 ]
480 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_2_1_1_2, 1850 ]
481 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_2_1_1_1, 1849 ]
482 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_1_2_2_2, 1848 ]
483 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_1_2_2_1, 1847 ]
484 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_1_2_1_2, 1846 ]
485 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_1_2_1_1, 1845 ]
486 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_1_1_2_2, 1844 ]
487 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_1_1_2_1, 1843 ]
488 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_1_1_1_2, 1842 ]
489 // CHECK-NEXT:	[ 1, foo_2_1_2_2_1_1_1_1_1, 1841 ]
490 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_2_2_2_2, 1840 ]
491 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_2_2_2_1, 1839 ]
492 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_2_2_1_2, 1838 ]
493 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_2_2_1_1, 1837 ]
494 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_2_1_2_2, 1836 ]
495 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_2_1_2_1, 1835 ]
496 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_2_1_1_2, 1834 ]
497 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_2_1_1_1, 1833 ]
498 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_1_2_2_2, 1832 ]
499 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_1_2_2_1, 1831 ]
500 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_1_2_1_2, 1830 ]
501 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_1_2_1_1, 1829 ]
502 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_1_1_2_2, 1828 ]
503 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_1_1_2_1, 1827 ]
504 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_1_1_1_2, 1826 ]
505 // CHECK-NEXT:	[ 1, foo_2_1_2_1_2_1_1_1_1, 1825 ]
506 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_2_2_2_2, 1824 ]
507 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_2_2_2_1, 1823 ]
508 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_2_2_1_2, 1822 ]
509 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_2_2_1_1, 1821 ]
510 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_2_1_2_2, 1820 ]
511 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_2_1_2_1, 1819 ]
512 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_2_1_1_2, 1818 ]
513 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_2_1_1_1, 1817 ]
514 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_1_2_2_2, 1816 ]
515 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_1_2_2_1, 1815 ]
516 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_1_2_1_2, 1814 ]
517 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_1_2_1_1, 1813 ]
518 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_1_1_2_2, 1812 ]
519 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_1_1_2_1, 1811 ]
520 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_1_1_1_2, 1810 ]
521 // CHECK-NEXT:	[ 1, foo_2_1_2_1_1_1_1_1_1, 1809 ]
522 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_2_2_2_2, 1808 ]
523 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_2_2_2_1, 1807 ]
524 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_2_2_1_2, 1806 ]
525 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_2_2_1_1, 1805 ]
526 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_2_1_2_2, 1804 ]
527 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_2_1_2_1, 1803 ]
528 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_2_1_1_2, 1802 ]
529 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_2_1_1_1, 1801 ]
530 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_1_2_2_2, 1800 ]
531 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_1_2_2_1, 1799 ]
532 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_1_2_1_2, 1798 ]
533 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_1_2_1_1, 1797 ]
534 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_1_1_2_2, 1796 ]
535 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_1_1_2_1, 1795 ]
536 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_1_1_1_2, 1794 ]
537 // CHECK-NEXT:	[ 1, foo_2_1_1_2_2_1_1_1_1, 1793 ]
538 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_2_2_2_2, 1792 ]
539 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_2_2_2_1, 1791 ]
540 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_2_2_1_2, 1790 ]
541 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_2_2_1_1, 1789 ]
542 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_2_1_2_2, 1788 ]
543 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_2_1_2_1, 1787 ]
544 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_2_1_1_2, 1786 ]
545 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_2_1_1_1, 1785 ]
546 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_1_2_2_2, 1784 ]
547 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_1_2_2_1, 1783 ]
548 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_1_2_1_2, 1782 ]
549 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_1_2_1_1, 1781 ]
550 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_1_1_2_2, 1780 ]
551 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_1_1_2_1, 1779 ]
552 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_1_1_1_2, 1778 ]
553 // CHECK-NEXT:	[ 1, foo_2_1_1_2_1_1_1_1_1, 1777 ]
554 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_2_2_2_2, 1776 ]
555 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_2_2_2_1, 1775 ]
556 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_2_2_1_2, 1774 ]
557 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_2_2_1_1, 1773 ]
558 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_2_1_2_2, 1772 ]
559 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_2_1_2_1, 1771 ]
560 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_2_1_1_2, 1770 ]
561 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_2_1_1_1, 1769 ]
562 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_1_2_2_2, 1768 ]
563 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_1_2_2_1, 1767 ]
564 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_1_2_1_2, 1766 ]
565 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_1_2_1_1, 1765 ]
566 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_1_1_2_2, 1764 ]
567 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_1_1_2_1, 1763 ]
568 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_1_1_1_2, 1762 ]
569 // CHECK-NEXT:	[ 1, foo_2_1_1_1_2_1_1_1_1, 1761 ]
570 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_2_2_2_2, 1760 ]
571 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_2_2_2_1, 1759 ]
572 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_2_2_1_2, 1758 ]
573 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_2_2_1_1, 1757 ]
574 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_2_1_2_2, 1756 ]
575 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_2_1_2_1, 1755 ]
576 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_2_1_1_2, 1754 ]
577 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_2_1_1_1, 1753 ]
578 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_1_2_2_2, 1752 ]
579 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_1_2_2_1, 1751 ]
580 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_1_2_1_2, 1750 ]
581 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_1_2_1_1, 1749 ]
582 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_1_1_2_2, 1748 ]
583 // CHECK-NEXT:	[ 1, foo_2_1_1_1_1_1_1_2_1, 1747 ]
584 // CHECK-NEXT:	[ 1, foo
585 
586 // SHARED-LABEL:  shared_entry:
587 // SHARED:	[ 0, foo_1_1_1_1_1_1_1_1_1, 1000 ]
588 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_1_1_1_2, 999 ]
589 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_1_1_2_1, 998 ]
590 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_1_1_2_2, 997 ]
591 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_1_2_1_1, 996 ]
592 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_1_2_1_2, 995 ]
593 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_1_2_2_1, 994 ]
594 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_1_2_2_2, 993 ]
595 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_2_1_1_1, 992 ]
596 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_2_1_1_2, 991 ]
597 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_2_1_2_1, 990 ]
598 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_2_1_2_2, 989 ]
599 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_2_2_1_1, 988 ]
600 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_2_2_1_2, 987 ]
601 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_2_2_2_1, 986 ]
602 // SHARED-NEXT:	[ 0, foo_1_1_1_1_1_2_2_2_2, 985 ]
603 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_1_1_1_1, 984 ]
604 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_1_1_1_2, 983 ]
605 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_1_1_2_1, 982 ]
606 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_1_1_2_2, 981 ]
607 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_1_2_1_1, 980 ]
608 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_1_2_1_2, 979 ]
609 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_1_2_2_1, 978 ]
610 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_1_2_2_2, 977 ]
611 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_2_1_1_1, 976 ]
612 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_2_1_1_2, 975 ]
613 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_2_1_2_1, 974 ]
614 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_2_1_2_2, 973 ]
615 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_2_2_1_1, 972 ]
616 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_2_2_1_2, 971 ]
617 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_2_2_2_1, 970 ]
618 // SHARED-NEXT:	[ 0, foo_1_1_1_1_2_2_2_2_2, 969 ]
619 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_1_1_1_1, 968 ]
620 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_1_1_1_2, 967 ]
621 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_1_1_2_1, 966 ]
622 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_1_1_2_2, 965 ]
623 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_1_2_1_1, 964 ]
624 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_1_2_1_2, 963 ]
625 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_1_2_2_1, 962 ]
626 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_1_2_2_2, 961 ]
627 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_2_1_1_1, 960 ]
628 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_2_1_1_2, 959 ]
629 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_2_1_2_1, 958 ]
630 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_2_1_2_2, 957 ]
631 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_2_2_1_1, 956 ]
632 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_2_2_1_2, 955 ]
633 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_2_2_2_1, 954 ]
634 // SHARED-NEXT:	[ 0, foo_1_1_1_2_1_2_2_2_2, 953 ]
635 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_1_1_1_1, 952 ]
636 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_1_1_1_2, 951 ]
637 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_1_1_2_1, 950 ]
638 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_1_1_2_2, 949 ]
639 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_1_2_1_1, 948 ]
640 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_1_2_1_2, 947 ]
641 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_1_2_2_1, 946 ]
642 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_1_2_2_2, 945 ]
643 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_2_1_1_1, 944 ]
644 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_2_1_1_2, 943 ]
645 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_2_1_2_1, 942 ]
646 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_2_1_2_2, 941 ]
647 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_2_2_1_1, 940 ]
648 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_2_2_1_2, 939 ]
649 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_2_2_2_1, 938 ]
650 // SHARED-NEXT:	[ 0, foo_1_1_1_2_2_2_2_2_2, 937 ]
651 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_1_1_1_1, 936 ]
652 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_1_1_1_2, 935 ]
653 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_1_1_2_1, 934 ]
654 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_1_1_2_2, 933 ]
655 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_1_2_1_1, 932 ]
656 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_1_2_1_2, 931 ]
657 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_1_2_2_1, 930 ]
658 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_1_2_2_2, 929 ]
659 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_2_1_1_1, 928 ]
660 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_2_1_1_2, 927 ]
661 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_2_1_2_1, 926 ]
662 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_2_1_2_2, 925 ]
663 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_2_2_1_1, 924 ]
664 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_2_2_1_2, 923 ]
665 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_2_2_2_1, 922 ]
666 // SHARED-NEXT:	[ 0, foo_1_1_2_1_1_2_2_2_2, 921 ]
667 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_1_1_1_1, 920 ]
668 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_1_1_1_2, 919 ]
669 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_1_1_2_1, 918 ]
670 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_1_1_2_2, 917 ]
671 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_1_2_1_1, 916 ]
672 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_1_2_1_2, 915 ]
673 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_1_2_2_1, 914 ]
674 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_1_2_2_2, 913 ]
675 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_2_1_1_1, 912 ]
676 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_2_1_1_2, 911 ]
677 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_2_1_2_1, 910 ]
678 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_2_1_2_2, 909 ]
679 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_2_2_1_1, 908 ]
680 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_2_2_1_2, 907 ]
681 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_2_2_2_1, 906 ]
682 // SHARED-NEXT:	[ 0, foo_1_1_2_1_2_2_2_2_2, 905 ]
683 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_1_1_1_1, 904 ]
684 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_1_1_1_2, 903 ]
685 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_1_1_2_1, 902 ]
686 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_1_1_2_2, 901 ]
687 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_1_2_1_1, 900 ]
688 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_1_2_1_2, 899 ]
689 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_1_2_2_1, 898 ]
690 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_1_2_2_2, 897 ]
691 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_2_1_1_1, 896 ]
692 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_2_1_1_2, 895 ]
693 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_2_1_2_1, 894 ]
694 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_2_1_2_2, 893 ]
695 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_2_2_1_1, 892 ]
696 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_2_2_1_2, 891 ]
697 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_2_2_2_1, 890 ]
698 // SHARED-NEXT:	[ 0, foo_1_1_2_2_1_2_2_2_2, 889 ]
699 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_1_1_1_1, 888 ]
700 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_1_1_1_2, 887 ]
701 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_1_1_2_1, 886 ]
702 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_1_1_2_2, 885 ]
703 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_1_2_1_1, 884 ]
704 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_1_2_1_2, 883 ]
705 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_1_2_2_1, 882 ]
706 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_1_2_2_2, 881 ]
707 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_2_1_1_1, 880 ]
708 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_2_1_1_2, 879 ]
709 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_2_1_2_1, 878 ]
710 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_2_1_2_2, 877 ]
711 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_2_2_1_1, 876 ]
712 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_2_2_1_2, 875 ]
713 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_2_2_2_1, 874 ]
714 // SHARED-NEXT:	[ 0, foo_1_1_2_2_2_2_2_2_2, 873 ]
715 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_1_1_1_1, 872 ]
716 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_1_1_1_2, 871 ]
717 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_1_1_2_1, 870 ]
718 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_1_1_2_2, 869 ]
719 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_1_2_1_1, 868 ]
720 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_1_2_1_2, 867 ]
721 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_1_2_2_1, 866 ]
722 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_1_2_2_2, 865 ]
723 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_2_1_1_1, 864 ]
724 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_2_1_1_2, 863 ]
725 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_2_1_2_1, 862 ]
726 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_2_1_2_2, 861 ]
727 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_2_2_1_1, 860 ]
728 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_2_2_1_2, 859 ]
729 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_2_2_2_1, 858 ]
730 // SHARED-NEXT:	[ 0, foo_1_2_1_1_1_2_2_2_2, 857 ]
731 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_1_1_1_1, 856 ]
732 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_1_1_1_2, 855 ]
733 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_1_1_2_1, 854 ]
734 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_1_1_2_2, 853 ]
735 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_1_2_1_1, 852 ]
736 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_1_2_1_2, 851 ]
737 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_1_2_2_1, 850 ]
738 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_1_2_2_2, 849 ]
739 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_2_1_1_1, 848 ]
740 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_2_1_1_2, 847 ]
741 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_2_1_2_1, 846 ]
742 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_2_1_2_2, 845 ]
743 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_2_2_1_1, 844 ]
744 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_2_2_1_2, 843 ]
745 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_2_2_2_1, 842 ]
746 // SHARED-NEXT:	[ 0, foo_1_2_1_1_2_2_2_2_2, 841 ]
747 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_1_1_1_1, 840 ]
748 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_1_1_1_2, 839 ]
749 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_1_1_2_1, 838 ]
750 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_1_1_2_2, 837 ]
751 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_1_2_1_1, 836 ]
752 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_1_2_1_2, 835 ]
753 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_1_2_2_1, 834 ]
754 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_1_2_2_2, 833 ]
755 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_2_1_1_1, 832 ]
756 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_2_1_1_2, 831 ]
757 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_2_1_2_1, 830 ]
758 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_2_1_2_2, 829 ]
759 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_2_2_1_1, 828 ]
760 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_2_2_1_2, 827 ]
761 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_2_2_2_1, 826 ]
762 // SHARED-NEXT:	[ 0, foo_1_2_1_2_1_2_2_2_2, 825 ]
763 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_1_1_1_1, 824 ]
764 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_1_1_1_2, 823 ]
765 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_1_1_2_1, 822 ]
766 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_1_1_2_2, 821 ]
767 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_1_2_1_1, 820 ]
768 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_1_2_1_2, 819 ]
769 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_1_2_2_1, 818 ]
770 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_1_2_2_2, 817 ]
771 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_2_1_1_1, 816 ]
772 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_2_1_1_2, 815 ]
773 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_2_1_2_1, 814 ]
774 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_2_1_2_2, 813 ]
775 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_2_2_1_1, 812 ]
776 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_2_2_1_2, 811 ]
777 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_2_2_2_1, 810 ]
778 // SHARED-NEXT:	[ 0, foo_1_2_1_2_2_2_2_2_2, 809 ]
779 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_1_1_1_1, 808 ]
780 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_1_1_1_2, 807 ]
781 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_1_1_2_1, 806 ]
782 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_1_1_2_2, 805 ]
783 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_1_2_1_1, 804 ]
784 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_1_2_1_2, 803 ]
785 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_1_2_2_1, 802 ]
786 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_1_2_2_2, 801 ]
787 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_2_1_1_1, 800 ]
788 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_2_1_1_2, 799 ]
789 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_2_1_2_1, 798 ]
790 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_2_1_2_2, 797 ]
791 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_2_2_1_1, 796 ]
792 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_2_2_1_2, 795 ]
793 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_2_2_2_1, 794 ]
794 // SHARED-NEXT:	[ 0, foo_1_2_2_1_1_2_2_2_2, 793 ]
795 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_1_1_1_1, 792 ]
796 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_1_1_1_2, 791 ]
797 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_1_1_2_1, 790 ]
798 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_1_1_2_2, 789 ]
799 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_1_2_1_1, 788 ]
800 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_1_2_1_2, 787 ]
801 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_1_2_2_1, 786 ]
802 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_1_2_2_2, 785 ]
803 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_2_1_1_1, 784 ]
804 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_2_1_1_2, 783 ]
805 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_2_1_2_1, 782 ]
806 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_2_1_2_2, 781 ]
807 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_2_2_1_1, 780 ]
808 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_2_2_1_2, 779 ]
809 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_2_2_2_1, 778 ]
810 // SHARED-NEXT:	[ 0, foo_1_2_2_1_2_2_2_2_2, 777 ]
811 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_1_1_1_1, 776 ]
812 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_1_1_1_2, 775 ]
813 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_1_1_2_1, 774 ]
814 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_1_1_2_2, 773 ]
815 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_1_2_1_1, 772 ]
816 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_1_2_1_2, 771 ]
817 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_1_2_2_1, 770 ]
818 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_1_2_2_2, 769 ]
819 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_2_1_1_1, 768 ]
820 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_2_1_1_2, 767 ]
821 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_2_1_2_1, 766 ]
822 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_2_1_2_2, 765 ]
823 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_2_2_1_1, 764 ]
824 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_2_2_1_2, 763 ]
825 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_2_2_2_1, 762 ]
826 // SHARED-NEXT:	[ 0, foo_1_2_2_2_1_2_2_2_2, 761 ]
827 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_1_1_1_1, 760 ]
828 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_1_1_1_2, 759 ]
829 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_1_1_2_1, 758 ]
830 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_1_1_2_2, 757 ]
831 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_1_2_1_1, 756 ]
832 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_1_2_1_2, 755 ]
833 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_1_2_2_1, 754 ]
834 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_1_2_2_2, 753 ]
835 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_2_1_1_1, 752 ]
836 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_2_1_1_2, 751 ]
837 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_2_1_2_1, 750 ]
838 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_2_1_2_2, 749 ]
839 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_2_2_1_1, 748 ]
840 // SHARED-NEXT:	[ 0, foo_1_2_2_2_2_2_2_1_2, 747 ]
841 // SHARED-NEXT:	[ 0, foo
842 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_2_2_2_2, 2000 ]
843 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_2_2_2_1, 1999 ]
844 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_2_2_1_2, 1998 ]
845 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_2_2_1_1, 1997 ]
846 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_2_1_2_2, 1996 ]
847 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_2_1_2_1, 1995 ]
848 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_2_1_1_2, 1994 ]
849 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_2_1_1_1, 1993 ]
850 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_1_2_2_2, 1992 ]
851 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_1_2_2_1, 1991 ]
852 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_1_2_1_2, 1990 ]
853 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_1_2_1_1, 1989 ]
854 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_1_1_2_2, 1988 ]
855 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_1_1_2_1, 1987 ]
856 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_1_1_1_2, 1986 ]
857 // SHARED-NEXT:	[ 1, foo_2_2_2_2_2_1_1_1_1, 1985 ]
858 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_2_2_2_2, 1984 ]
859 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_2_2_2_1, 1983 ]
860 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_2_2_1_2, 1982 ]
861 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_2_2_1_1, 1981 ]
862 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_2_1_2_2, 1980 ]
863 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_2_1_2_1, 1979 ]
864 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_2_1_1_2, 1978 ]
865 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_2_1_1_1, 1977 ]
866 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_1_2_2_2, 1976 ]
867 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_1_2_2_1, 1975 ]
868 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_1_2_1_2, 1974 ]
869 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_1_2_1_1, 1973 ]
870 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_1_1_2_2, 1972 ]
871 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_1_1_2_1, 1971 ]
872 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_1_1_1_2, 1970 ]
873 // SHARED-NEXT:	[ 1, foo_2_2_2_2_1_1_1_1_1, 1969 ]
874 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_2_2_2_2, 1968 ]
875 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_2_2_2_1, 1967 ]
876 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_2_2_1_2, 1966 ]
877 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_2_2_1_1, 1965 ]
878 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_2_1_2_2, 1964 ]
879 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_2_1_2_1, 1963 ]
880 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_2_1_1_2, 1962 ]
881 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_2_1_1_1, 1961 ]
882 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_1_2_2_2, 1960 ]
883 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_1_2_2_1, 1959 ]
884 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_1_2_1_2, 1958 ]
885 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_1_2_1_1, 1957 ]
886 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_1_1_2_2, 1956 ]
887 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_1_1_2_1, 1955 ]
888 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_1_1_1_2, 1954 ]
889 // SHARED-NEXT:	[ 1, foo_2_2_2_1_2_1_1_1_1, 1953 ]
890 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_2_2_2_2, 1952 ]
891 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_2_2_2_1, 1951 ]
892 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_2_2_1_2, 1950 ]
893 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_2_2_1_1, 1949 ]
894 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_2_1_2_2, 1948 ]
895 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_2_1_2_1, 1947 ]
896 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_2_1_1_2, 1946 ]
897 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_2_1_1_1, 1945 ]
898 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_1_2_2_2, 1944 ]
899 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_1_2_2_1, 1943 ]
900 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_1_2_1_2, 1942 ]
901 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_1_2_1_1, 1941 ]
902 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_1_1_2_2, 1940 ]
903 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_1_1_2_1, 1939 ]
904 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_1_1_1_2, 1938 ]
905 // SHARED-NEXT:	[ 1, foo_2_2_2_1_1_1_1_1_1, 1937 ]
906 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_2_2_2_2, 1936 ]
907 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_2_2_2_1, 1935 ]
908 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_2_2_1_2, 1934 ]
909 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_2_2_1_1, 1933 ]
910 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_2_1_2_2, 1932 ]
911 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_2_1_2_1, 1931 ]
912 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_2_1_1_2, 1930 ]
913 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_2_1_1_1, 1929 ]
914 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_1_2_2_2, 1928 ]
915 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_1_2_2_1, 1927 ]
916 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_1_2_1_2, 1926 ]
917 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_1_2_1_1, 1925 ]
918 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_1_1_2_2, 1924 ]
919 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_1_1_2_1, 1923 ]
920 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_1_1_1_2, 1922 ]
921 // SHARED-NEXT:	[ 1, foo_2_2_1_2_2_1_1_1_1, 1921 ]
922 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_2_2_2_2, 1920 ]
923 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_2_2_2_1, 1919 ]
924 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_2_2_1_2, 1918 ]
925 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_2_2_1_1, 1917 ]
926 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_2_1_2_2, 1916 ]
927 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_2_1_2_1, 1915 ]
928 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_2_1_1_2, 1914 ]
929 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_2_1_1_1, 1913 ]
930 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_1_2_2_2, 1912 ]
931 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_1_2_2_1, 1911 ]
932 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_1_2_1_2, 1910 ]
933 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_1_2_1_1, 1909 ]
934 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_1_1_2_2, 1908 ]
935 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_1_1_2_1, 1907 ]
936 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_1_1_1_2, 1906 ]
937 // SHARED-NEXT:	[ 1, foo_2_2_1_2_1_1_1_1_1, 1905 ]
938 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_2_2_2_2, 1904 ]
939 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_2_2_2_1, 1903 ]
940 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_2_2_1_2, 1902 ]
941 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_2_2_1_1, 1901 ]
942 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_2_1_2_2, 1900 ]
943 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_2_1_2_1, 1899 ]
944 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_2_1_1_2, 1898 ]
945 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_2_1_1_1, 1897 ]
946 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_1_2_2_2, 1896 ]
947 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_1_2_2_1, 1895 ]
948 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_1_2_1_2, 1894 ]
949 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_1_2_1_1, 1893 ]
950 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_1_1_2_2, 1892 ]
951 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_1_1_2_1, 1891 ]
952 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_1_1_1_2, 1890 ]
953 // SHARED-NEXT:	[ 1, foo_2_2_1_1_2_1_1_1_1, 1889 ]
954 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_2_2_2_2, 1888 ]
955 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_2_2_2_1, 1887 ]
956 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_2_2_1_2, 1886 ]
957 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_2_2_1_1, 1885 ]
958 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_2_1_2_2, 1884 ]
959 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_2_1_2_1, 1883 ]
960 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_2_1_1_2, 1882 ]
961 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_2_1_1_1, 1881 ]
962 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_1_2_2_2, 1880 ]
963 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_1_2_2_1, 1879 ]
964 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_1_2_1_2, 1878 ]
965 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_1_2_1_1, 1877 ]
966 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_1_1_2_2, 1876 ]
967 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_1_1_2_1, 1875 ]
968 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_1_1_1_2, 1874 ]
969 // SHARED-NEXT:	[ 1, foo_2_2_1_1_1_1_1_1_1, 1873 ]
970 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_2_2_2_2, 1872 ]
971 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_2_2_2_1, 1871 ]
972 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_2_2_1_2, 1870 ]
973 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_2_2_1_1, 1869 ]
974 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_2_1_2_2, 1868 ]
975 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_2_1_2_1, 1867 ]
976 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_2_1_1_2, 1866 ]
977 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_2_1_1_1, 1865 ]
978 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_1_2_2_2, 1864 ]
979 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_1_2_2_1, 1863 ]
980 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_1_2_1_2, 1862 ]
981 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_1_2_1_1, 1861 ]
982 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_1_1_2_2, 1860 ]
983 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_1_1_2_1, 1859 ]
984 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_1_1_1_2, 1858 ]
985 // SHARED-NEXT:	[ 1, foo_2_1_2_2_2_1_1_1_1, 1857 ]
986 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_2_2_2_2, 1856 ]
987 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_2_2_2_1, 1855 ]
988 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_2_2_1_2, 1854 ]
989 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_2_2_1_1, 1853 ]
990 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_2_1_2_2, 1852 ]
991 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_2_1_2_1, 1851 ]
992 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_2_1_1_2, 1850 ]
993 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_2_1_1_1, 1849 ]
994 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_1_2_2_2, 1848 ]
995 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_1_2_2_1, 1847 ]
996 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_1_2_1_2, 1846 ]
997 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_1_2_1_1, 1845 ]
998 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_1_1_2_2, 1844 ]
999 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_1_1_2_1, 1843 ]
1000 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_1_1_1_2, 1842 ]
1001 // SHARED-NEXT:	[ 1, foo_2_1_2_2_1_1_1_1_1, 1841 ]
1002 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_2_2_2_2, 1840 ]
1003 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_2_2_2_1, 1839 ]
1004 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_2_2_1_2, 1838 ]
1005 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_2_2_1_1, 1837 ]
1006 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_2_1_2_2, 1836 ]
1007 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_2_1_2_1, 1835 ]
1008 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_2_1_1_2, 1834 ]
1009 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_2_1_1_1, 1833 ]
1010 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_1_2_2_2, 1832 ]
1011 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_1_2_2_1, 1831 ]
1012 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_1_2_1_2, 1830 ]
1013 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_1_2_1_1, 1829 ]
1014 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_1_1_2_2, 1828 ]
1015 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_1_1_2_1, 1827 ]
1016 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_1_1_1_2, 1826 ]
1017 // SHARED-NEXT:	[ 1, foo_2_1_2_1_2_1_1_1_1, 1825 ]
1018 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_2_2_2_2, 1824 ]
1019 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_2_2_2_1, 1823 ]
1020 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_2_2_1_2, 1822 ]
1021 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_2_2_1_1, 1821 ]
1022 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_2_1_2_2, 1820 ]
1023 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_2_1_2_1, 1819 ]
1024 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_2_1_1_2, 1818 ]
1025 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_2_1_1_1, 1817 ]
1026 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_1_2_2_2, 1816 ]
1027 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_1_2_2_1, 1815 ]
1028 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_1_2_1_2, 1814 ]
1029 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_1_2_1_1, 1813 ]
1030 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_1_1_2_2, 1812 ]
1031 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_1_1_2_1, 1811 ]
1032 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_1_1_1_2, 1810 ]
1033 // SHARED-NEXT:	[ 1, foo_2_1_2_1_1_1_1_1_1, 1809 ]
1034 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_2_2_2_2, 1808 ]
1035 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_2_2_2_1, 1807 ]
1036 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_2_2_1_2, 1806 ]
1037 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_2_2_1_1, 1805 ]
1038 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_2_1_2_2, 1804 ]
1039 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_2_1_2_1, 1803 ]
1040 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_2_1_1_2, 1802 ]
1041 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_2_1_1_1, 1801 ]
1042 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_1_2_2_2, 1800 ]
1043 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_1_2_2_1, 1799 ]
1044 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_1_2_1_2, 1798 ]
1045 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_1_2_1_1, 1797 ]
1046 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_1_1_2_2, 1796 ]
1047 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_1_1_2_1, 1795 ]
1048 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_1_1_1_2, 1794 ]
1049 // SHARED-NEXT:	[ 1, foo_2_1_1_2_2_1_1_1_1, 1793 ]
1050 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_2_2_2_2, 1792 ]
1051 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_2_2_2_1, 1791 ]
1052 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_2_2_1_2, 1790 ]
1053 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_2_2_1_1, 1789 ]
1054 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_2_1_2_2, 1788 ]
1055 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_2_1_2_1, 1787 ]
1056 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_2_1_1_2, 1786 ]
1057 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_2_1_1_1, 1785 ]
1058 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_1_2_2_2, 1784 ]
1059 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_1_2_2_1, 1783 ]
1060 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_1_2_1_2, 1782 ]
1061 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_1_2_1_1, 1781 ]
1062 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_1_1_2_2, 1780 ]
1063 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_1_1_2_1, 1779 ]
1064 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_1_1_1_2, 1778 ]
1065 // SHARED-NEXT:	[ 1, foo_2_1_1_2_1_1_1_1_1, 1777 ]
1066 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_2_2_2_2, 1776 ]
1067 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_2_2_2_1, 1775 ]
1068 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_2_2_1_2, 1774 ]
1069 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_2_2_1_1, 1773 ]
1070 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_2_1_2_2, 1772 ]
1071 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_2_1_2_1, 1771 ]
1072 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_2_1_1_2, 1770 ]
1073 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_2_1_1_1, 1769 ]
1074 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_1_2_2_2, 1768 ]
1075 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_1_2_2_1, 1767 ]
1076 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_1_2_1_2, 1766 ]
1077 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_1_2_1_1, 1765 ]
1078 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_1_1_2_2, 1764 ]
1079 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_1_1_2_1, 1763 ]
1080 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_1_1_1_2, 1762 ]
1081 // SHARED-NEXT:	[ 1, foo_2_1_1_1_2_1_1_1_1, 1761 ]
1082 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_2_2_2_2, 1760 ]
1083 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_2_2_2_1, 1759 ]
1084 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_2_2_1_2, 1758 ]
1085 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_2_2_1_1, 1757 ]
1086 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_2_1_2_2, 1756 ]
1087 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_2_1_2_1, 1755 ]
1088 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_2_1_1_2, 1754 ]
1089 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_2_1_1_1, 1753 ]
1090 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_1_2_2_2, 1752 ]
1091 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_1_2_2_1, 1751 ]
1092 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_1_2_1_2, 1750 ]
1093 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_1_2_1_1, 1749 ]
1094 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_1_1_2_2, 1748 ]
1095 // SHARED-NEXT:	[ 1, foo_2_1_1_1_1_1_1_2_1, 1747 ]
1096 // SHARED-NEXT:	[ 1, foo
1097