igneum/tools/attack/f1-shadow/results/explain2-8948.txt
2026-10-07 10:02:44 +00:00

319 lines
27 KiB
Text

seed attack-f1/8948 reps 1: instructions 256 -> 253; chip 220 -> 218
idx op d a b rot mask | node new needed opt cost(A) cost(C) | normal form
0 mulhi r3 r7 r7 5 16 | #9 new yes a 0 1 | hi(#8)
1 xor r5 r4 r1 4 4 | #10 new yes a 1 1 | xor{#4 ^ #5}
2 mulhi r6 r3 r4 3 1 | #12 new yes a 0 1 | hi(#11)
3 add r2 r4 r4 27 16 | #14 new yes a 1 1 | sum{#2+#4+#13}
4 add r4 r0 r6 1 4 | #16 new yes a 1 1 | sum{#0+#4+#15}
5 mul r4 r3 r5 3 8 | #18 new yes a 0 1 | lo(#17)
6 rotl r5 r1 r4 2 1 | #19 new yes b 1 0 | xor{#4<<2 ^ #5<<2}
7 mul r4 r0 r2 10 16 | #21 new yes a 0 1 | lo(#20)
8 mad r5 r2 r3 10 4 | #24 new yes b 1 1 | sum{#19+#23}
9 mul r5 r1 r1 5 8 | #26 new yes a 0 1 | lo(#25)
10 xor r7 r0 r6 14 1 | #27 new yes a 1 1 | xor{#0 ^ #7}
11 or r0 r2 r1 21 2 | #28 new yes a 1 1 | or{#0|#14}
12 mul r3 r7 r0 30 1 | #30 new yes a 0 1 | lo(#29)
13 add r6 r0 r6 18 4 | #32 new yes a 1 1 | sum{#12+#28+#31}
14 rotr r3 r4 r2 3 8 | #33 new yes a 1 1 | rotr(#30, 1*#21)
15 xor r2 r1 r6 7 8 | #34 new yes a 1 1 | xor{#1 ^ #14}
16 mul r0 r2 r4 6 1 | #36 new yes a 0 1 | lo(#35)
17 mulhi r4 r3 r0 16 1 | #38 new yes a 0 1 | hi(#37)
18 sub r1 r7 r5 14 16 | #39 new yes a 1 1 | sum{#1+-#27}
19 shfl r6 r7 r5 21 2 | #40 new yes b 1 1 | xor{#0^l2 ^ #7^l2 ^ #32}
20 mul r6 r5 r3 31 4 | #42 new yes a 0 1 | lo(#41)
21 add r4 r6 r2 4 8 | #44 new yes a 1 1 | sum{#38+#42+#43}
22 mad r6 r2 r2 28 8 | #47 new yes b 1 1 | sum{#42+#46}
23 shfl r2 r0 r4 16 1 | #48 new yes b 1 1 | xor{#1 ^ #14 ^ #36^l1}
24 mulhi r5 r1 r5 13 1 | #50 new yes a 0 1 | hi(#49)
25 shfl r4 r6 r4 24 1 | #51 new yes b 1 1 | xor{#44 ^ #47^l1}
26 sub r7 r2 r7 27 2 | #52 new yes a 1 1 | sum{#27+-#48}
27 xor r1 r3 r2 3 1 | #53 new yes a 1 1 | xor{#33 ^ #39}
28 rotl r4 r6 r0 29 8 | #54 new yes b 1 0 | xor{#44<<29 ^ #47<<29^l1}
29 add r2 r4 r1 5 2 | #56 new yes a 1 1 | sum{#48+#54+#55}
30 add r4 r5 r3 20 2 | #58 new yes a 1 1 | sum{#50+#54+#57}
31 xor r4 r2 r3 19 4 | #59 new yes a 1 1 | xor{#56 ^ #58}
32 add r1 r2 r1 18 1 | #61 new yes b 1 1 | sum{#48+#53+#54+#55+#60}
33 sub r4 r7 r3 10 1 | #62 new yes b 1 1 | sum{-#27+#48+#59}
34 mul r7 r6 r0 3 4 | #64 new yes a 0 1 | lo(#63)
35 mul r5 r2 r4 30 2 | #66 new yes a 0 1 | lo(#65)
36 mulhi r6 r3 r5 2 4 | #68 new yes a 0 1 | hi(#67)
37 mad r3 r1 r7 14 8 | #71 new yes b 1 1 | sum{#33+#70}
38 add r0 r2 r5 6 16 | #73 new yes b 1 1 | sum{#36+#48+#54+#55+#72}
39 rotl r2 r1 r3 2 8 | #74 new yes a 1 0 | xor{#56<<2}
40 rotr r1 r0 r3 18 1 | #75 new yes a 1 1 | rotr(#61, 1*#73)
41 mulhi r6 r7 r7 5 4 | #77 new yes a 0 1 | hi(#76)
42 add r0 r4 r1 4 16 | #79 new yes b 1 1 | sum{-#27+#36+2*#48+#54+#55+#59+#72+#78}
43 add r0 r2 r2 6 16 | #81 new yes b 1 1 | sum{-#27+#36+2*#48+#54+#55+#59+#72+#74+#78+#80}
44 add r5 r4 r4 13 2 | #83 new yes b 1 1 | sum{-#27+#48+#59+#66+#82}
45 mul r4 r6 r5 21 1 | #85 new yes a 0 1 | lo(#84)
46 xor r5 r3 r6 14 4 | #86 new yes a 1 1 | xor{#71 ^ #83}
47 or r0 r3 r7 16 2 | #87 new yes a 1 1 | or{#71|#81}
48 shfl r4 r0 r1 23 1 | #88 new yes b 1 1 | xor{#85 ^ #87^l1}
49 sub r0 r1 r5 26 1 | #89 new yes a 1 1 | sum{-#75+#87}
50 mulhi r1 r6 r2 3 8 | #91 new yes a 0 1 | hi(#90)
51 xor r1 r4 r6 9 2 | #92 new yes b 1 1 | xor{#85 ^ #87^l1 ^ #91}
52 mad r6 r0 r4 18 1 | #95 new yes b 1 1 | sum{#77+#94}
53 mul r0 r2 r2 12 2 | #97 new yes a 0 1 | lo(#96)
54 rotl r0 r4 r5 30 2 | #98 new yes a 1 0 | xor{#97<<30}
55 mulhi r0 r1 r5 7 16 | #100 new yes a 0 1 | hi(#99)
56 mul r5 r0 r3 13 1 | #102 new yes a 0 1 | lo(#101)
57 add r2 r3 r7 10 8 | #104 new yes b 1 1 | sum{#33+#70+#74+#103}
58 add r7 r0 r3 23 1 | #106 new yes a 1 1 | sum{#64+#100+#105}
59 mad r7 r4 r1 28 8 | #109 new yes b 1 1 | sum{#64+#100+#105+#108}
60 rotr r1 r2 r5 9 8 | #110 new yes a 1 1 | rotr(#92, 1*#104)
61 xor r7 r4 r2 17 1 | #111 new yes b 1 1 | xor{#85 ^ #87^l1 ^ #109}
62 shfl r5 r4 r4 15 1 | #112 new yes b 1 1 | xor{#85^l1 ^ #87 ^ #102}
63 shfl r3 r5 r4 4 2 | #113 new yes b 1 1 | xor{#71 ^ #85^l3 ^ #87^l2 ^ #102^l2}
64 sub r4 r0 r4 6 1 | #114 new yes a 1 1 | sum{#88+-#100}
65 mul r3 r6 r6 4 4 | #116 new yes a 0 1 | lo(#115)
66 rotl r3 r1 r7 17 1 | #117 new yes a 1 0 | xor{#116<<17}
67 xor r7 r6 r0 3 1 | #118 new yes b 1 1 | xor{#85 ^ #87^l1 ^ #95 ^ #109}
68 mulhi r2 r7 r5 22 16 | #120 new yes a 0 1 | hi(#119)
69 mad r5 r0 r7 16 1 | #123 new yes a 1 1 | sum{#112+#122}
70 mul r6 r5 r0 19 1 | #125 new yes a 0 1 | lo(#124)
71 *mul r0 r7 r7 4 4 | #122 same yes a 0 0 | lo(#121)
72 mad r4 r0 r7 12 4 | #128 new yes b 1 1 | sum{#88+-#100+#127}
73 xor r1 r2 r7 15 16 | #129 new yes a 1 1 | xor{#110 ^ #120}
74 rotl r5 r3 r6 20 4 | #130 new yes a 1 0 | xor{#123<<20}
75 xor r1 r4 r0 17 2 | #131 new yes b 1 1 | xor{#110 ^ #120 ^ #128}
76 add r6 r7 r5 20 2 | #133 new yes a 1 1 | sum{#118+#125+#132}
77 mad r5 r0 r2 17 8 | #136 new yes b 1 1 | sum{#130+#135}
78 xor r7 r1 r5 30 2 | #137 new yes b 1 1 | xor{#85 ^ #87^l1 ^ #95 ^ #109 ^ #110 ^ #120 ^ #128}
79 add r4 r1 r5 29 4 | #139 new yes b 1 1 | sum{#88+-#100+#127+#131+#138}
80 mad r2 r7 r5 24 8 | #142 new yes b 1 1 | sum{#120+#141}
81 mul r0 r3 r0 17 8 | #144 new yes a 0 1 | lo(#143)
82 xor r0 r4 r2 4 2 | #145 new yes a 1 1 | xor{#139 ^ #144}
83 xor r2 r5 r2 29 4 | #146 new yes a 1 1 | xor{#136 ^ #142}
84 add r0 r5 r6 17 16 | #148 new yes b 1 1 | sum{#130+#135+#145+#147}
85 add r7 r0 r6 10 16 | #150 new yes b 1 1 | sum{#130+#135+#137+#145+#147+#149}
86 add r2 r6 r3 26 4 | #152 new yes b 1 1 | sum{#118+#125+#132+#146+#151}
87 mul r2 r0 r3 22 2 | #154 new yes a 0 1 | lo(#153)
88 add r1 r0 r6 22 4 | #156 new yes b 1 1 | sum{#130+#131+#135+#145+#147+#155}
89 rotl r6 r0 r3 12 4 | #157 new yes a 1 0 | xor{#133<<12}
90 mad r7 r6 r7 28 4 | #160 new yes b 1 1 | sum{#130+#135+#137+#145+#147+#149+#159}
91 rotl r0 r7 r2 11 2 | #161 new yes a 1 0 | xor{#148<<11}
92 xor r1 r5 r6 2 8 | #162 new yes a 1 1 | xor{#136 ^ #156}
93 mulhi r4 r5 r3 10 2 | #164 new yes a 0 1 | hi(#163)
94 rotl r3 r0 r7 17 2 | #165 new yes a 1 0 | xor{#116<<2}
95 rotl r1 r5 r4 10 1 | #166 new yes b 1 0 | xor{#136<<10 ^ #156<<10}
96 sub r3 r6 r5 8 1 | #167 new yes a 1 1 | sum{-#157+#165}
97 or r0 r7 r2 5 16 | #168 new yes a 1 1 | or{#160|#161}
98 shfl r1 r0 r0 5 16 | #169 new yes b 1 1 | xor{#136<<10 ^ #156<<10 ^ #168^l16}
99 mul r2 r3 r6 7 8 | #171 new yes a 0 1 | lo(#170)
100 mul r2 r7 r3 31 1 | #173 new yes a 0 1 | lo(#172)
101 mulhi r4 r3 r7 21 8 | #175 new yes a 0 1 | hi(#174)
102 xor r0 r1 r4 20 4 | #176 new yes b 1 1 | xor{#136<<10 ^ #156<<10 ^ #168 ^ #168^l16}
103 rotl r1 r2 r4 6 4 | #177 new yes b 1 0 | xor{#136<<16 ^ #156<<16 ^ #168<<6^l16}
104 *sub r1 r3 r0 9 8 | #178 new no - 0 1 | sum{#157+-#165+#177}
105 mad r7 r5 r6 1 8 | #181 new yes b 1 1 | sum{#130+#135+#137+#145+#147+#149+#159+#180}
106 sub r6 r3 r0 18 16 | #182 new yes a 1 1 | sum{2*#157+-#165}
107 mul r0 r4 r4 18 16 | #184 new yes a 0 1 | lo(#183)
108 shfl r2 r0 r3 22 8 | #185 new yes b 1 1 | xor{#173 ^ #184^l8}
109 or r4 r6 r7 20 8 | #186 new yes a 1 1 | or{#175|#182}
110 add r1 r3 r3 5 1 | #188 new yes a 1 1 | sum{#177+#187}
111 mad r1 r7 r5 24 16 | #191 new yes b 1 1 | sum{#177+#187+#190}
112 *xor r2 r1 r6 30 4 | #192 new no - 0 0 | xor{#173 ^ #184^l8 ^ #191}
113 rotr r0 r3 r1 3 16 | #193 new yes a 1 1 | rotr(#184, 1*#167)
114 mad r0 r1 r1 21 1 | #196 new yes b 1 1 | sum{#193+#195}
115 mulhi r6 r5 r2 4 8 | #198 new yes a 0 1 | hi(#197)
116 *xor r2 r1 r6 14 1 | #185 same yes b 1 1 | xor{#173 ^ #184^l8}
117 mul r2 r5 r4 17 16 | #200 new yes a 0 1 | lo(#199)
118 mulhi r0 r3 r6 17 2 | #202 new yes a 0 1 | hi(#201)
119 xor r6 r0 r2 23 2 | #203 new yes a 1 1 | xor{#198 ^ #202}
120 shfl r5 r6 r5 4 16 | #204 new yes b 1 1 | xor{#136 ^ #198^l16 ^ #202^l16}
121 mad r0 r5 r4 17 4 | #207 new yes b 1 1 | sum{#202+#206}
122 mul r3 r5 r4 30 4 | #209 new yes a 0 1 | lo(#208)
123 add r2 r0 r0 23 16 | #211 new yes b 1 1 | sum{#200+#202+#206+#210}
124 shfl r5 r2 r1 15 16 | #212 new yes b 1 1 | xor{#136 ^ #198^l16 ^ #202^l16 ^ #211^l16}
125 sub r7 r6 r2 15 2 | #213 new yes b 1 1 | sum{#130+#135+#137+#145+#147+#149+#159+#180+-#203}
126 add r0 r3 r4 24 1 | #215 new yes b 1 1 | sum{#202+#206+#209+#214}
127 rotr r1 r5 r1 30 1 | #216 new yes a 1 1 | rotr(#191, 1*#212)
128 mulhi r1 r0 r2 9 4 | #218 new yes a 0 1 | hi(#217)
129 mul r2 r4 r0 12 2 | #220 new yes a 0 1 | lo(#219)
130 rotl r4 r1 r2 9 1 | #221 new yes a 1 0 | xor{#186<<9}
131 mad r3 r7 r0 8 8 | #224 new yes b 1 1 | sum{#209+#223}
132 add r0 r1 r1 14 8 | #226 new yes b 1 1 | sum{#202+#206+#209+#214+#218+#225}
133 shfl r2 r0 r6 17 16 | #227 new yes b 1 1 | xor{#220 ^ #226^l16}
134 rotl r0 r3 r0 6 1 | #228 new yes a 1 0 | xor{#226<<6}
135 shfl r6 r0 r2 21 8 | #229 new yes b 1 1 | xor{#198 ^ #202 ^ #226<<6^l8}
136 mul r4 r0 r0 27 1 | #231 new yes a 0 1 | lo(#230)
137 xor r2 r4 r3 31 4 | #232 new yes b 1 1 | xor{#220 ^ #226^l16 ^ #231}
138 add r3 r7 r6 21 2 | #234 new yes b 1 1 | sum{#130+#135+#137+#145+#147+#149+#159+#180+-#203+#209+#223+#233}
139 rotr r3 r2 r4 9 16 | #235 new yes a 1 1 | rotr(#234, 1*#232)
140 rotl r3 r4 r5 19 1 | #236 new yes a 1 0 | xor{#235<<19}
141 mul r5 r7 r6 24 1 | #238 new yes a 0 1 | lo(#237)
142 shfl r7 r6 r3 10 16 | #239 new yes b 1 1 | xor{#198^l16 ^ #202^l16 ^ #213 ^ #226<<6^l24}
143 mad r5 r3 r1 16 8 | #242 new yes b 1 1 | sum{#238+#241}
144 mul r4 r7 r7 22 1 | #244 new yes a 0 1 | lo(#243)
145 rotl r1 r6 r1 2 16 | #245 new yes a 1 0 | xor{#218<<2}
146 add r5 r4 r0 6 16 | #247 new yes b 1 1 | sum{#238+#241+#244+#246}
147 or r3 r0 r0 17 16 | #248 new yes a 1 1 | or{#228|#236}
148 shfl r7 r5 r2 31 2 | #249 new yes b 1 1 | xor{#198^l16 ^ #202^l16 ^ #213 ^ #226<<6^l24 ^ #247^l2}
149 shfl r4 r3 r2 13 4 | #250 new yes b 1 1 | xor{#244 ^ #248^l4}
150 rotl r3 r5 r4 19 8 | #251 new yes a 1 0 | xor{#248<<19}
151 rotr r4 r0 r3 5 2 | #252 new yes a 1 1 | rotr(#250, 1*#228)
152 mul r7 r0 r0 4 8 | #254 new yes a 0 1 | lo(#253)
153 *rotl r7 r1 r3 17 16 | #255 new no - 0 0 | xor{#254<<17}
154 mulhi r3 r0 r3 22 2 | #257 new yes a 0 1 | hi(#256)
155 or r2 r5 r4 8 1 | #258 new yes a 1 1 | or{#232|#247}
156 *rotl r7 r3 r4 1 4 | #259 new no - 0 0 | xor{#254<<18}
157 xor r2 r1 r1 14 8 | #260 new yes a 1 1 | xor{#218<<2 ^ #258}
158 rotl r7 r1 r2 24 16 | #261 new yes a 1 0 | xor{#254<<10}
159 mulhi r1 r0 r4 13 1 | #263 new yes a 0 1 | hi(#262)
160 mul r7 r2 r1 9 8 | #265 new yes a 0 1 | lo(#264)
161 rotl r2 r5 r5 31 16 | #266 new yes b 1 0 | xor{#218<<1 ^ #258<<31}
162 mul r0 r4 r3 9 16 | #268 new yes a 0 1 | lo(#267)
163 xor r1 r7 r5 22 1 | #269 new yes a 1 1 | xor{#263 ^ #265}
164 xor r0 r2 r7 21 2 | #270 new yes b 1 1 | xor{#218<<1 ^ #258<<31 ^ #268}
165 sub r2 r5 r0 12 1 | #271 new yes b 1 1 | sum{-#238+-#241+-#244+-#246+#266}
166 mul r2 r4 r3 19 1 | #273 new yes a 0 1 | lo(#272)
167 mad r3 r7 r6 8 2 | #276 new yes b 1 1 | sum{#257+#275}
168 shfl r4 r6 r0 7 4 | #277 new yes b 1 1 | xor{#198^l4 ^ #202^l4 ^ #226<<6^l12 ^ #252}
169 rotr r6 r7 r0 7 2 | #278 new yes a 1 1 | rotr(#229, 1*#265)
170 mul r6 r7 r6 7 16 | #280 new yes a 0 1 | lo(#279)
171 mul r0 r4 r0 11 16 | #282 new yes a 0 1 | lo(#281)
172 shfl r0 r4 r2 26 4 | #283 new yes b 1 1 | xor{#198 ^ #202 ^ #226<<6^l8 ^ #252^l4 ^ #282}
173 rotl r6 r3 r5 14 16 | #284 new yes a 1 0 | xor{#280<<14}
174 mul r1 r2 r0 5 2 | #286 new yes a 0 1 | lo(#285)
175 add r4 r7 r4 13 2 | #288 new yes a 1 1 | sum{#265+#277+#287}
176 rotl r5 r3 r5 24 4 | #289 new yes a 1 0 | xor{#247<<24}
177 xor r6 r3 r0 20 16 | #290 new yes a 1 1 | xor{#276 ^ #280<<14}
178 mul r7 r0 r5 2 8 | #292 new yes a 0 1 | lo(#291)
179 sub r4 r0 r6 30 16 | #293 new yes b 1 1 | sum{#265+#277+-#283+#287}
180 mul r3 r1 r4 12 4 | #295 new yes a 0 1 | lo(#294)
181 shfl r7 r6 r2 31 4 | #296 new yes b 1 1 | xor{#276^l4 ^ #280<<14^l4 ^ #292}
182 add r1 r2 r4 3 2 | #298 new yes a 1 1 | sum{#273+#286+#297}
183 add r6 r0 r6 3 2 | #300 new yes a 1 1 | sum{#283+#290+#299}
184 add r1 r5 r4 13 16 | #302 new yes b 1 1 | sum{#273+#286+#289+#297+#301}
185 *rotl r4 r3 r1 3 1 | #303 new no - 0 0 | xor{#293<<3}
186 rotl r1 r5 r5 1 2 | #304 new yes a 1 0 | xor{#302<<1}
187 rotl r3 r7 r5 13 8 | #305 new yes a 1 0 | xor{#295<<13}
188 shfl r1 r3 r4 7 16 | #306 new yes b 1 1 | xor{#295<<13^l16 ^ #302<<1}
189 mad r7 r6 r7 18 1 | #309 new yes a 1 1 | sum{#296+#308}
190 rotl r4 r2 r0 20 2 | #310 new yes a 1 0 | xor{#293<<23}
191 sub r0 r6 r7 15 1 | #311 new yes a 1 1 | sum{-#290+-#299}
192 mulhi r1 r6 r6 2 16 | #313 new yes a 0 1 | hi(#312)
193 shfl r1 r3 r5 4 1 | #314 new yes b 1 1 | xor{#295<<13^l1 ^ #313}
194 rotr r4 r2 r5 6 2 | #315 new yes a 1 1 | rotr(#310, 1*#273)
195 rotl r7 r3 r0 21 4 | #316 new yes a 1 0 | xor{#309<<21}
196 rotl r2 r5 r2 10 8 | #317 new yes a 1 0 | xor{#273<<10}
197 rotl r1 r5 r6 8 2 | #318 new yes b 1 0 | xor{#295<<21^l1 ^ #313<<8}
198 or r4 r7 r6 13 4 | #319 new yes a 1 1 | or{#315|#316}
199 mulhi r6 r2 r3 23 8 | #321 new yes a 0 1 | hi(#320)
200 mul r1 r7 r7 1 8 | #323 new yes a 0 1 | lo(#322)
201 or r7 r5 r6 8 2 | #324 new yes a 1 1 | or{#289|#316}
202 mad r6 r4 r5 23 4 | #327 new yes b 1 1 | sum{#321+#326}
203 shfl r0 r1 r5 15 16 | #328 new yes b 1 1 | xor{#311 ^ #323^l16}
204 add r0 r7 r7 18 16 | #330 new yes a 1 1 | sum{#324+#328+#329}
205 rotr r3 r7 r2 22 16 | #331 new yes a 1 1 | rotr(#305, 1*#324)
206 rotr r2 r0 r3 23 1 | #332 new yes a 1 1 | rotr(#317, 1*#330)
207 mul r5 r2 r4 7 1 | #334 new yes a 0 1 | lo(#333)
208 sub r4 r2 r7 21 8 | #335 new yes a 1 1 | sum{#319+-#332}
209 add r2 r0 r2 23 16 | #337 new yes b 1 1 | sum{#324+#328+#329+#332+#336}
210 shfl r5 r4 r6 10 2 | #338 new yes b 1 1 | xor{#334 ^ #335^l2}
211 mad r1 r3 r6 29 1 | #341 new yes b 1 1 | sum{#323+#340}
212 *shfl r1 r6 r4 26 4 | #342 new no - 0 1 | xor{#327^l4 ^ #341}
213 rotl r1 r2 r7 31 4 | #343 new yes a 1 0 | xor{#327<<31^l4 ^ #341<<31}
214 xor r2 r1 r2 4 2 | #344 new yes b 1 1 | xor{#327<<31^l4 ^ #337 ^ #341<<31}
215 add r2 r1 r3 10 16 | #346 new yes a 1 1 | sum{#343+#344+#345}
216 xor r3 r7 r0 14 2 | #347 new yes a 1 1 | xor{#324 ^ #331}
217 sub r7 r4 r5 23 1 | #348 new yes b 1 1 | sum{-#319+#324+#332}
218 rotl r0 r5 r4 10 8 | #349 new yes a 1 0 | xor{#330<<10}
219 rotr r6 r7 r6 5 4 | #350 new yes a 1 1 | rotr(#327, 1*#348)
220 add r0 r5 r6 29 2 | #352 new yes a 1 1 | sum{#338+#349+#351}
221 shfl r6 r4 r1 26 4 | #353 new yes b 1 1 | xor{#335^l4 ^ #350}
222 *rotl r7 r5 r1 13 8 | #354 new no - 0 0 | xor{#348<<13}
223 rotl r7 r0 r4 7 4 | #355 new yes a 1 0 | xor{#348<<20}
224 sub r0 r1 r5 4 16 | #356 new yes b 1 1 | sum{#338+-#343+#349+#351}
225 rotl r4 r3 r2 18 2 | #357 new yes a 1 0 | xor{#335<<18}
226 or r3 r1 r3 14 16 | #358 new yes a 1 1 | or{#343|#347}
227 mad r6 r2 r6 20 1 | #361 new yes a 1 1 | sum{#353+#360}
228 shfl r0 r1 r0 8 1 | #362 new yes b 1 1 | xor{#327<<31^l5 ^ #341<<31^l1 ^ #356}
229 or r4 r0 r4 7 2 | #363 new yes a 1 1 | or{#357|#362}
230 xor r4 r1 r0 25 4 | #364 new yes b 1 1 | xor{#327<<31^l4 ^ #341<<31 ^ #363}
231 add r6 r7 r0 27 4 | #366 new yes b 1 1 | sum{#353+#355+#360+#365}
232 add r0 r6 r3 12 1 | #368 new yes b 1 1 | sum{#353+#355+#360+#362+#365+#367}
233 mad r2 r3 r4 8 4 | #371 new yes b 1 1 | sum{#343+#344+#345+#370}
234 xor r1 r0 r7 12 4 | #372 new yes b 1 1 | xor{#327<<31^l4 ^ #341<<31 ^ #368}
235 xor r3 r7 r0 8 16 | #373 new yes a 1 1 | xor{#348<<20 ^ #358}
236 add r7 r4 r0 22 4 | #375 new yes a 1 1 | sum{#355+#364+#374}
237 add r5 r3 r4 24 4 | #377 new yes a 1 1 | sum{#338+#373+#376}
238 mad r3 r0 r2 14 1 | #380 new yes b 1 1 | sum{#373+#379}
239 add r1 r0 r3 12 4 | #382 new yes b 1 1 | sum{#353+#355+#360+#362+#365+#367+#372+#381}
240 add r2 r5 r7 17 1 | #384 new yes b 1 1 | sum{#338+#343+#344+#345+#370+#373+#376+#383}
241 rotr r2 r5 r5 16 8 | #385 new yes a 1 1 | rotr(#384, 1*#377)
242 mad r2 r4 r7 30 4 | #388 new yes b 1 1 | sum{#385+#387}
243 sub r2 r0 r7 10 1 | #389 new yes b 1 1 | sum{-#353+-#355+-#360+-#362+-#365+-#367+#385+#387}
244 mulhi r1 r4 r0 30 8 | #391 new yes a 0 1 | hi(#390)
245 sub r5 r6 r7 10 1 | #392 new yes b 1 1 | sum{#338+-#353+-#355+-#360+-#365+#373+#376}
246 mul r0 r4 r0 14 2 | #394 new yes a 0 1 | lo(#393)
247 xor r1 r6 r5 29 4 | #395 new yes a 1 1 | xor{#366 ^ #391}
248 xor r3 r4 r1 16 1 | #396 new yes b 1 1 | xor{#327<<31^l4 ^ #341<<31 ^ #363 ^ #380}
249 mad r5 r1 r1 27 4 | #399 new yes b 1 1 | sum{#338+-#353+-#355+-#360+-#365+#373+#376+#398}
250 xor r3 r6 r0 8 16 | #400 new yes b 1 1 | xor{#327<<31^l4 ^ #341<<31 ^ #363 ^ #366 ^ #380}
251 mad r1 r4 r3 13 16 | #403 new yes b 1 1 | sum{#395+#402}
252 rotl r7 r0 r3 18 2 | #404 new yes a 1 0 | xor{#375<<18}
253 sub r5 r7 r6 31 16 | #405 new yes b 1 1 | sum{#338+-#353+-#355+-#360+-#365+#373+#376+#398+-#404}
254 rotl r1 r3 r5 27 16 | #406 new yes a 1 0 | xor{#403<<27}
255 shfl r2 r4 r4 5 16 | #407 new yes b 1 1 | xor{#327<<31^l20 ^ #341<<31^l16 ^ #363^l16 ^ #389}
lines flagged * (result is an existing node, or a node the realisation does not need): 9
extra needed node #8 cost 1 : mul64(#3,#7)
extra needed node #11 cost 1 : mul64(#6,#9)
extra needed node #17 cost 1 : mul64(#9,#16)
extra needed node #20 cost 1 : mul64(#0,#18)
extra needed node #25 cost 1 : mul64(#1,#24)
extra needed node #29 cost 1 : mul64(#9,#27)
extra needed node #35 cost 1 : mul64(#28,#34)
extra needed node #37 cost 1 : mul64(#21,#33)
extra needed node #41 cost 1 : mul64(#26,#40)
extra needed node #49 cost 1 : mul64(#26,#39)
extra needed node #63 cost 1 : mul64(#47,#52)
extra needed node #65 cost 1 : mul64(#50,#56)
extra needed node #67 cost 1 : mul64(#33,#47)
extra needed node #76 cost 1 : mul64(#64,#68)
extra needed node #84 cost 1 : mul64(#62,#77)
extra needed node #90 cost 1 : mul64(#75,#77)
extra needed node #96 cost 1 : mul64(#74,#89)
extra needed node #99 cost 1 : mul64(#92,#98)
extra needed node #101 cost 1 : mul64(#86,#100)
extra needed node #115 cost 1 : mul64(#95,#113)
extra needed node #119 cost 1 : mul64(#104,#118)
extra needed node #121 cost 1 : mul64(#100,#118)
extra needed node #124 cost 1 : mul64(#95,#123)
extra needed node #143 cost 1 : mul64(#117,#122)
extra needed node #153 cost 1 : mul64(#148,#152)
extra needed node #163 cost 1 : mul64(#136,#139)
extra needed node #170 cost 1 : mul64(#154,#167)
extra needed node #172 cost 1 : mul64(#160,#171)
extra needed node #174 cost 1 : mul64(#164,#167)
extra needed node #183 cost 1 : mul64(#175,#176)
extra needed node #197 cost 1 : mul64(#136,#182)
extra needed node #199 cost 1 : mul64(#136,#185)
extra needed node #201 cost 1 : mul64(#167,#196)
extra needed node #208 cost 1 : mul64(#167,#204)
extra needed node #217 cost 1 : mul64(#215,#216)
extra needed node #219 cost 1 : mul64(#186,#211)
extra needed node #230 cost 1 : mul64(#221,#228)
extra needed node #237 cost 1 : mul64(#212,#213)
extra needed node #243 cost 1 : mul64(#231,#239)
extra needed node #253 cost 1 : mul64(#228,#249)
extra needed node #256 cost 1 : mul64(#228,#251)
extra needed node #262 cost 1 : mul64(#228,#245)
extra needed node #264 cost 1 : mul64(#260,#261)
extra needed node #267 cost 1 : mul64(#228,#252)
extra needed node #272 cost 1 : mul64(#252,#271)
extra needed node #279 cost 1 : mul64(#265,#278)
extra needed node #281 cost 1 : mul64(#270,#277)
extra needed node #285 cost 1 : mul64(#269,#273)
extra needed node #291 cost 1 : mul64(#265,#283)
extra needed node #294 cost 1 : mul64(#276,#286)
extra needed node #307 cost 1 : mul64(#296,#300)
extra needed node #312 cost 1 : mul64(#300,#306)
extra needed node #320 cost 1 : mul64(#300,#317)
extra needed node #322 cost 1 : mul64(#316,#318)
extra needed node #333 cost 1 : mul64(#289,#332)
extra needed node #359 cost 1 : mul64(#346,#353)
extra needed node #390 cost 1 : mul64(#364,#382)
extra needed node #393 cost 1 : mul64(#364,#368)
extra needed node #451 cost 2 : xor{#327<<31^l4}
extra needed node #452 cost 1 : xor{#341<<31}