Created
July 5, 2014 20:48
-
-
Save cfbolz/3d354b82245ad5b020f5 to your computer and use it in GitHub Desktop.
earley.rkt trace 0a0daff7b862f57d6460dadf6bab504090c41473
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[f464b432d7e] {jit-log-opt-loop | |
# Loop 0 ((let ([AppRand1_fresh_221 (+ conf 1)]) (vector-ref state AppRand1_fresh_221))) : loop with 100 ops | |
[p0, p1] | |
+83: label(p0, p1, descr=TargetToken(140248750869264)) | |
+83: guard_not_invalidated(descr=<Guard0x11bce20>) [p0, p1] | |
debug_merge_point(0, 0, '(+ conf 1)') | |
+83: guard_class(p0, 9625672, descr=<Guard0x11bd830>) [p0, p1] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+106: guard_class(p3, ConstClass(W_Fixnum), descr=<Guard0x11bd7c0>) [p0, p3, p1] | |
+118: i5 = getfield_gc_pure(p3, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+122: i7 = int_add_ovf(i5, 1) | |
guard_no_overflow(descr=<Guard0x11bd750>) [p0, i5, i7, p3, p1] | |
+135: p8 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(vector-ref state AppRand1_fresh_221)') | |
+135: p9 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+139: guard_nonnull_class(p9, ConstClass(W_Vector), descr=<Guard0x11bd6e0>) [p9, p1, p0, i7, None, None] | |
+157: i13 = int_ge(i7, 0) | |
guard_true(i13, descr=<Guard0x11bd670>) [i7, p9, p1, p0, None, None, None] | |
+167: i14 = getfield_gc_pure(p9, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+171: i15 = int_lt(i7, i14) | |
guard_true(i15, descr=<Guard0x11bd600>) [p9, p1, p0, i7, None, None] | |
+180: p16 = getfield_gc(p9, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+184: guard_class(p16, 9641744, descr=<Guard0x11bd590>) [i7, p16, p1, p0, p9, None, None, None] | |
+196: p18 = getfield_gc(p9, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+200: p19 = getarrayitem_gc(p18, i7, descr=<ArrayP 8>) | |
+205: guard_nonnull_class(p1, 9629776, descr=<Guard0x11bd520>) [p1, p19, None, None, None] | |
+230: p21 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+234: guard_value(p21, ConstPtr(ptr22), descr=<Guard0x11bd4b0>) [p21, p1, p19, None, None, None] | |
+253: i23 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+257: guard_value(i23, 0, descr=<Guard0x11bd440>) [i23, p1, p19, None, None, None] | |
+267: p25 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+271: p26 = getfield_gc_pure(p25, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+275: p27 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(if pred-set (let ([next (+ pred 1)]) (let ([next-set (conf-set-get* state state-num next)]) (conf-set-union state next-set next pred-set))) #f)') | |
+279: i29 = instance_ptr_eq(p19, ConstPtr(ptr28)) | |
guard_false(i29, descr=<Guard0x11bd3d0>) [p26, p27, p25, p19, None, None, None] | |
debug_merge_point(0, 0, '(let ([next (+ pred 1)]) (let ([next-set (conf-set-get* state state-num next)]) (conf-set-union state next-set next pred-set)))') | |
debug_merge_point(0, 0, '(+ pred 1)') | |
+292: guard_class(p25, 9625432, descr=<Guard0x11bd360>) [p25, p26, p27, None, p19, None, None, None] | |
+304: p31 = getfield_gc_pure(p25, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+308: guard_class(p31, 9625128, descr=<Guard0x11bd2f0>) [p31, p26, p27, p25, p19, None, None, None] | |
+320: p33 = getfield_gc_pure(p31, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+324: p35 = getarrayitem_gc_pure(p33, 9, descr=<ArrayP 8>) | |
+328: guard_class(p35, ConstClass(W_Fixnum), descr=<Guard0x11bd280>) [p35, p26, p27, p25, p19, None, None, None] | |
+340: i37 = getfield_gc_pure(p35, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+344: i39 = int_add_ovf(i37, 1) | |
guard_no_overflow(descr=<Guard0x11bd210>) [i37, i39, p35, p26, p27, p25, p19, None, None, None] | |
debug_merge_point(0, 0, '(let ([next-set (conf-set-get* state state-num next)]) (conf-set-union state next-set next pred-set))') | |
debug_merge_point(0, 0, '(conf-set-get* state state-num next)') | |
+357: p41 = getarrayitem_gc_pure(p33, 10, descr=<ArrayP 8>) | |
+361: p43 = getarrayitem_gc_pure(p33, 11, descr=<ArrayP 8>) | |
+365: p45 = getarrayitem_gc_pure(p33, 4, descr=<ArrayP 8>) | |
+369: guard_class(p41, 9632160, descr=<Guard0x11bd130>) [p41, p45, p43, i39, None, p26, p27, p25, p19, None, None, None] | |
+381: p47 = getfield_gc_pure(p41, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+385: guard_value(p47, ConstPtr(ptr48), descr=<Guard0x11bd0c0>) [p47, p41, p45, p43, i39, None, p26, p27, p25, p19, None, None, None] | |
+404: p49 = getfield_gc_pure(p41, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+408: i50 = instance_ptr_eq(p25, p49) | |
guard_false(i50, descr=<Guard0x11bcfe0>) [p49, p45, p43, i39, None, p26, p27, p25, p19, None, None, None] | |
+417: p51 = getfield_gc_pure(p49, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([conf-set (conf-set-get state conf)]) (if conf-set conf-set (let ([conf-set (let ([AppRand0_fresh_220 (+ state-num 6)]) (make-vector AppRand0_fresh_220 #f))]) (vector-set! conf-set 1 -3) (vector-set! conf-set 2 -1) (vector-set! conf-set 3 -1) (vector-set! conf-set 4 -1) (let ([AppRand1_fresh_219 (+ conf 1)]) (vector-set! state AppRand1_fresh_219 conf-set)) conf-set)))') | |
debug_merge_point(0, 0, '(conf-set-get state conf)') | |
+421: guard_class(p49, 9625432, descr=<Guard0x11bcf70>) [p49, p51, p45, p43, i39, None, p26, p27, p25, p19, None, None, None] | |
+433: p53 = getfield_gc_pure(p49, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+437: guard_value(p53, ConstPtr(ptr54), descr=<Guard0x11bcf00>) [p53, p49, p51, p45, p43, i39, None, p26, p27, p25, p19, None, None, None] | |
+456: p55 = getfield_gc_pure(p49, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+460: i57 = instance_ptr_eq(p55, ConstPtr(ptr56)) | |
guard_false(i57, descr=<Guard0x11bce90>) [p49, None, p51, p45, p43, i39, None, p26, p27, p25, p19, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_221 (+ conf 1)]) (vector-ref state AppRand1_fresh_221))') | |
p59 = new_with_vtable(9625672) | |
p61 = new_with_vtable(ConstClass(W_Fixnum)) | |
p63 = new_with_vtable(9629776) | |
p65 = new_with_vtable(9625312) | |
+596: setfield_gc(p59, ConstPtr(ptr66), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+610: setfield_gc(p59, ConstPtr(ptr56), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p68 = new_with_vtable(9629776) | |
p70 = new_with_vtable(9625432) | |
+646: setfield_gc(p65, p51, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p72 = new_with_vtable(9625432) | |
+661: setfield_gc(p70, p26, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+665: setfield_gc(p70, p61, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+669: setfield_gc(p65, p49, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+687: setfield_gc(p72, p25, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+691: setfield_gc(p63, p65, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+696: setfield_gc(p63, ConstPtr(ptr73), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
p75 = new_with_vtable(9625008) | |
+722: setfield_gc(p68, p75, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+726: setfield_gc(p72, p26, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+730: setfield_gc(p61, i39, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+734: setfield_gc(p59, p61, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+745: setfield_gc(p70, p72, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+749: setfield_gc(p59, p43, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+753: setfield_gc(p65, p45, descr=<FieldP pycket.small_list.ConsEnvSize3.inst__vals_1 32>) | |
+757: setfield_gc(p65, p61, descr=<FieldP pycket.small_list.ConsEnvSize3.inst__vals_2 40>) | |
+761: setfield_gc(p65, p43, descr=<FieldP pycket.small_list.ConsEnvSize3.inst__vals_0 24>) | |
+765: setfield_gc(p68, p70, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+769: setfield_gc(p68, ConstPtr(ptr76), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+783: setfield_gc(p72, p19, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+794: setfield_gc(p75, p27, descr=<FieldP pycket.interpreter.BeginCont.inst_prev 32>) | |
+798: setfield_gc(p75, ConstPtr(ptr22), descr=<FieldP pycket.interpreter.BeginCont.inst_ast 8>) | |
+812: setfield_gc(p75, p72, descr=<FieldP pycket.interpreter.BeginCont.inst_env 16>) | |
+816: setfield_gc(p75, 1, descr=<FieldS pycket.interpreter.BeginCont.inst_i 24>) | |
+824: setfield_gc(p63, p68, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+829: jump(p59, p63, descr=TargetToken(140248750869264)) | |
+848: --end of the loop-- | |
[f464b4a6e0e] jit-log-opt-loop} | |
[f464ce2fc22] {jit-log-opt-loop | |
# Loop 1 ((vector-ref conf-set AppRand1_fresh_214)) : loop with 203 ops | |
[p0, p1] | |
+83: label(p0, p1, descr=TargetToken(140248750874544)) | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
+83: guard_class(p0, 9625432, descr=<Guard0x136c250>) [p1, p0] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+106: guard_class(p3, 9625672, descr=<Guard0x136c1e0>) [p1, p0, p3] | |
+118: p5 = getfield_gc_pure(p3, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+122: p6 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+126: guard_nonnull_class(p5, ConstClass(W_Vector), descr=<Guard0x136c170>) [p5, p1, p3, p6] | |
+144: guard_nonnull_class(p6, ConstClass(W_Fixnum), descr=<Guard0x136c090>) [p5, p6, p1, p3, None] | |
+162: i10 = getfield_gc_pure(p6, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+166: i12 = int_ge(i10, 0) | |
guard_true(i12, descr=<Guard0x136bf30>) [i10, p6, p5, p1, p3, None] | |
+176: i13 = getfield_gc_pure(p5, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+180: i14 = int_lt(i10, i13) | |
guard_true(i14, descr=<Guard0x136bec0>) [p6, p5, p1, p3, None] | |
+189: p15 = getfield_gc(p5, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+193: guard_class(p15, 9641744, descr=<Guard0x136be50>) [i10, p15, p1, p3, p5, None] | |
+205: p17 = getfield_gc(p5, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+209: p18 = getarrayitem_gc(p17, i10, descr=<ArrayP 8>) | |
+214: guard_nonnull_class(p1, 9629776, descr=<Guard0x136bde0>) [p1, p18, None] | |
+239: p20 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+243: guard_value(p20, ConstPtr(ptr21), descr=<Guard0x136bd00>) [p20, p1, p18, None] | |
+262: i22 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+266: guard_value(i22, 0, descr=<Guard0x136bc90>) [i22, p1, p18, None] | |
+276: p24 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+280: p25 = getfield_gc_pure(p24, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+284: p26 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+288: guard_not_invalidated(descr=<Guard0x136bc20>) [p26, p25, p24, p18, None] | |
debug_merge_point(0, 0, '(not AppRand0_fresh_184)') | |
+288: guard_class(p24, 9625432, descr=<Guard0x136b9f0>) [p26, p24, None, None, p18, None] | |
+300: p28 = getfield_gc_pure(p24, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+304: i30 = instance_ptr_eq(p28, ConstPtr(ptr29)) | |
guard_false(i30, descr=<Guard0x136b980>) [p26, p28, None, None, p18, None] | |
+323: guard_nonnull_class(p28, 9625432, descr=<Guard0x136b910>) [p26, p28, None, None, p18, None] | |
+341: p32 = getfield_gc_pure(p28, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+345: i33 = instance_ptr_eq(p32, ConstPtr(ptr29)) | |
guard_false(i33, descr=<Guard0x136b830>) [p26, p28, None, None, p18, None] | |
debug_merge_point(0, 0, '(if b #f #t)') | |
+364: i35 = instance_ptr_eq(p18, ConstPtr(ptr34)) | |
guard_false(i35, descr=<Guard0x136b600>) [p26, None, None, p18, None] | |
debug_merge_point(0, 0, '#f') | |
+377: guard_nonnull_class(p26, 9629776, descr=<Guard0x136b4b0>) [p26, None, None, None, None] | |
+395: p37 = getfield_gc_pure(p26, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+399: guard_value(p37, ConstPtr(ptr38), descr=<Guard0x136b3d0>) [p37, p26, None, None, None, None] | |
+418: i39 = getfield_gc(p26, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+422: guard_value(i39, 0, descr=<Guard0x136b360>) [i39, p26, None, None, None, None] | |
+432: p41 = getfield_gc_pure(p26, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+436: p42 = getfield_gc_pure(p41, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+440: p43 = getfield_gc_pure(p26, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(if if_fresh_187 (begin (conf-set-adjoin state starter-set starter state-num) (let ([AppRand0_fresh_185 (cdr l)]) (loop1 AppRand0_fresh_185))) (let ([AppRand0_fresh_186 (cdr l)]) (loop1 AppRand0_fresh_186)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_186 (cdr l)]) (loop1 AppRand0_fresh_186))') | |
debug_merge_point(0, 0, '(cdr l)') | |
+444: guard_class(p41, 9625432, descr=<Guard0x136afe0>) [p41, p43, None, None, None, None] | |
+456: p45 = getfield_gc_pure(p41, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+460: guard_class(p45, 9625432, descr=<Guard0x136af70>) [p41, p45, p43, None, None, None, None] | |
+472: p47 = getfield_gc_pure(p45, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+476: guard_class(p47, 9625432, descr=<Guard0x136c2c0>) [p41, p47, p43, None, None, None, None] | |
+488: p49 = getfield_gc_pure(p47, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+492: guard_nonnull_class(p49, 9623288, descr=<Guard0x136af00>) [p41, p49, p43, None, None, None, None] | |
+510: p51 = getfield_gc_pure(p49, descr=<FieldP pycket.values.W_UnwrappedFixnumCons.inst__cdr 16>) | |
+514: guard_nonnull_class(p51, 9640312, descr=<Guard0x136ae20>) [p41, p51, p43, None, None, None, None] | |
debug_merge_point(0, 0, '(loop1 AppRand0_fresh_186)') | |
+533: p53 = getfield_gc_pure(p47, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+537: guard_class(p53, 9625128, descr=<Guard0x136a9c0>) [p43, p53, p41, p51, p42, None, None, None, None, None] | |
+549: p55 = getfield_gc_pure(p53, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+553: p57 = getarrayitem_gc_pure(p55, 2, descr=<ArrayP 8>) | |
+557: guard_class(p57, 9632160, descr=<Guard0x136a950>) [p57, p43, p41, None, p51, None, None, None, None, None, None] | |
+569: p59 = getfield_gc_pure(p57, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+573: guard_value(p59, ConstPtr(ptr60), descr=<Guard0x136a8e0>) [p59, p43, p41, p57, None, p51, None, None, None, None, None, None] | |
+592: p61 = getfield_gc_pure(p57, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+596: i62 = instance_ptr_eq(p45, p61) | |
guard_false(i62, descr=<Guard0x136a870>) [p61, p43, p45, None, p51, None, None, None, None, None, None] | |
+605: i63 = instance_ptr_eq(p47, p61) | |
guard_false(i63, descr=<Guard0x136a800>) [p61, p43, p45, None, p51, None, None, None, None, None, None] | |
+614: p64 = getfield_gc_pure(p61, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_188 (pair? l)]) (if if_fresh_188 (let ([starter (car l)]) (let ([starter-set (conf-set-get* state state-num starter)]) (let ([if_fresh_187 (let ([AppRand0_fresh_184 (conf-set-next starter-set state-num)]) (not AppRand0_fresh_184))]) (if if_fresh_187 (begin (conf-set-adjoin state starter-set starter state-num) (let ([AppRand0_fresh_185 (cdr l)]) (loop1 AppRand0_fresh_185))) (let ([AppRand0_fresh_186 (cdr l)]) (loop1 AppRand0_fresh_186)))))) #f))') | |
debug_merge_point(0, 0, '(pair? l)') | |
debug_merge_point(0, 0, '(if if_fresh_188 (let ([starter (car l)]) (let ([starter-set (conf-set-get* state state-num starter)]) (let ([if_fresh_187 (let ([AppRand0_fresh_184 (conf-set-next starter-set state-num)]) (not AppRand0_fresh_184))]) (if if_fresh_187 (begin (conf-set-adjoin state starter-set starter state-num) (let ([AppRand0_fresh_185 (cdr l)]) (loop1 AppRand0_fresh_185))) (let ([AppRand0_fresh_186 (cdr l)]) (loop1 AppRand0_fresh_186)))))) #f)') | |
debug_merge_point(0, 0, '#f') | |
+614: guard_nonnull_class(p43, 9625008, descr=<Guard0x136a020>) [p43, None, None, None, None, None, None, None, None] | |
+632: p66 = getfield_gc_pure(p43, descr=<FieldP pycket.interpreter.BeginCont.inst_ast 8>) | |
+636: p67 = getfield_gc_pure(p43, descr=<FieldP pycket.interpreter.BeginCont.inst_env 16>) | |
+640: p68 = getfield_gc_pure(p43, descr=<FieldP pycket.interpreter.BeginCont.inst_prev 32>) | |
+644: i69 = getfield_gc_pure(p43, descr=<FieldS pycket.interpreter.BeginCont.inst_i 24>) | |
+648: guard_value(p66, ConstPtr(ptr70), descr=<Guard0x1369ec0>) [i69, p68, p67, p66, None, None, None, None, None, None, None, None] | |
+667: guard_value(i69, 1, descr=<Guard0x1369e50>) [i69, p68, p67, None, None, None, None, None, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_194 (vector-ref enders nt)]) ((rec (lambda (l) (let ([if_fresh_193 (pair? l)]) (if if_fresh_193 (let ([ender (car l)]) (let ([if_fresh_192 (conf-set-member? state ender state-num)]) (if if_fresh_192 (let ([next (+ conf 1)]) (let ([next-set (conf-set-get* state state-num next)]) (conf-set-union state next-set next conf-set) (let ([AppRand0_fresh_190 (cdr l)]) (loop2 AppRand0_fresh_190)))) (let ([AppRand0_fresh_191 (cdr l)]) (loop2 AppRand0_fresh_191))))) #f)))) AppRand0_fresh_194))') | |
debug_merge_point(0, 0, '(vector-ref enders nt)') | |
+677: guard_class(p67, 9625128, descr=<Guard0x1369bb0>) [p67, p68, None, None, None, None, None, None, None, None] | |
+690: p73 = getfield_gc_pure(p67, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+694: p75 = getarrayitem_gc_pure(p73, 6, descr=<ArrayP 8>) | |
+698: p77 = getarrayitem_gc_pure(p73, 4, descr=<ArrayP 8>) | |
+702: guard_nonnull_class(p75, ConstClass(W_Vector), descr=<Guard0x1369b40>) [p75, p67, p77, p68, None, None, None, None, None, None, None, None] | |
+720: guard_nonnull_class(p77, ConstClass(W_Fixnum), descr=<Guard0x1369a60>) [p75, p77, p67, None, p68, None, None, None, None, None, None, None, None] | |
+738: i80 = getfield_gc_pure(p77, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+742: i82 = int_ge(i80, 0) | |
guard_true(i82, descr=<Guard0x1369980>) [i80, p77, p75, p67, None, p68, None, None, None, None, None, None, None, None] | |
+752: i83 = getfield_gc_pure(p75, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+756: i84 = int_lt(i80, i83) | |
guard_true(i84, descr=<Guard0x1369910>) [p77, p75, p67, None, p68, None, None, None, None, None, None, None, None] | |
+765: p85 = getfield_gc(p75, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+769: guard_class(p85, 9641744, descr=<Guard0x13698a0>) [i80, p85, p67, p75, None, p68, None, None, None, None, None, None, None, None] | |
+781: p87 = getfield_gc(p75, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+785: p88 = getarrayitem_gc(p87, i80, descr=<ArrayP 8>) | |
+790: p89 = getfield_gc_pure(p67, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '((rec (lambda (l) (let ([if_fresh_193 (pair? l)]) (if if_fresh_193 (let ([ender (car l)]) (let ([if_fresh_192 (conf-set-member? state ender state-num)]) (if if_fresh_192 (let ([next (+ conf 1)]) (let ([next-set (conf-set-get* state state-num next)]) (conf-set-union state next-set next conf-set) (let ([AppRand0_fresh_190 (cdr l)]) (loop2 AppRand0_fresh_190)))) (let ([AppRand0_fresh_191 (cdr l)]) (loop2 AppRand0_fresh_191))))) #f)))) AppRand0_fresh_194)') | |
+794: p90 = getfield_gc_pure(p67, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+798: guard_class(p90, 9625128, descr=<Guard0x1369520>) [p68, p90, p89, p88, p67, None, None, None, None, None, None, None, None, None, None] | |
+810: p92 = getfield_gc_pure(p90, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+814: p94 = getarrayitem_gc_pure(p92, 1, descr=<ArrayP 8>) | |
+818: p96 = getarrayitem_gc_pure(p92, 2, descr=<ArrayP 8>) | |
+822: p98 = getarrayitem_gc_pure(p73, 1, descr=<ArrayP 8>) | |
+826: p100 = getarrayitem_gc_pure(p73, 2, descr=<ArrayP 8>) | |
+830: p102 = getarrayitem_gc_pure(p92, 4, descr=<ArrayP 8>) | |
+834: p104 = getarrayitem_gc_pure(p73, 0, descr=<ArrayP 8>) | |
+838: p106 = getarrayitem_gc_pure(p73, 3, descr=<ArrayP 8>) | |
+842: p107 = getfield_gc_pure(p90, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
debug_merge_point(0, 0, '(let ([if_fresh_193 (pair? l)]) (if if_fresh_193 (let ([ender (car l)]) (let ([if_fresh_192 (conf-set-member? state ender state-num)]) (if if_fresh_192 (let ([next (+ conf 1)]) (let ([next-set (conf-set-get* state state-num next)]) (conf-set-union state next-set next conf-set) (let ([AppRand0_fresh_190 (cdr l)]) (loop2 AppRand0_fresh_190)))) (let ([AppRand0_fresh_191 (cdr l)]) (loop2 AppRand0_fresh_191))))) #f))') | |
debug_merge_point(0, 0, '(pair? l)') | |
+842: guard_nonnull_class(p88, 9623288, descr=<Guard0x1368fe0>) [p88, p94, p104, p100, p106, p98, p96, p102, p89, None, None, None, p68, None, None, None, None, None, None, None, None] | |
debug_merge_point(0, 0, '(if if_fresh_193 (let ([ender (car l)]) (let ([if_fresh_192 (conf-set-member? state ender state-num)]) (if if_fresh_192 (let ([next (+ conf 1)]) (let ([next-set (conf-set-get* state state-num next)]) (conf-set-union state next-set next conf-set) (let ([AppRand0_fresh_190 (cdr l)]) (loop2 AppRand0_fresh_190)))) (let ([AppRand0_fresh_191 (cdr l)]) (loop2 AppRand0_fresh_191))))) #f)') | |
debug_merge_point(0, 0, '(let ([ender (car l)]) (let ([if_fresh_192 (conf-set-member? state ender state-num)]) (if if_fresh_192 (let ([next (+ conf 1)]) (let ([next-set (conf-set-get* state state-num next)]) (conf-set-union state next-set next conf-set) (let ([AppRand0_fresh_190 (cdr l)]) (loop2 AppRand0_fresh_190)))) (let ([AppRand0_fresh_191 (cdr l)]) (loop2 AppRand0_fresh_191)))))') | |
debug_merge_point(0, 0, '(car l)') | |
+860: i109 = getfield_gc_pure(p88, descr=<FieldS pycket.values.W_UnwrappedFixnumCons.inst__car 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_192 (conf-set-member? state ender state-num)]) (if if_fresh_192 (let ([next (+ conf 1)]) (let ([next-set (conf-set-get* state state-num next)]) (conf-set-union state next-set next conf-set) (let ([AppRand0_fresh_190 (cdr l)]) (loop2 AppRand0_fresh_190)))) (let ([AppRand0_fresh_191 (cdr l)]) (loop2 AppRand0_fresh_191))))') | |
debug_merge_point(0, 0, '(conf-set-member? state ender state-num)') | |
+864: guard_class(p94, 9632160, descr=<Guard0x1368480>) [p94, i109, None, p104, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
+876: p111 = getfield_gc_pure(p94, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+880: guard_value(p111, ConstPtr(ptr112), descr=<Guard0x1368410>) [p111, p94, i109, None, p104, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
+899: p113 = getfield_gc_pure(p94, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+903: p114 = getfield_gc_pure(p113, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([conf-set (let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))]) (if conf-set (conf-set-next conf-set i) #f))') | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))') | |
debug_merge_point(0, 0, '(+ conf 1)') | |
+907: i116 = int_add_ovf(i109, 1) | |
guard_no_overflow(descr=<Guard0x1301d70>) [i109, i116, p113, p114, None, p94, p104, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
debug_merge_point(0, 0, '(vector-ref state AppRand1_fresh_213)') | |
+924: guard_nonnull_class(p104, ConstClass(W_Vector), descr=<Guard0x1301910>) [p104, i116, p113, p114, i109, p94, None, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
+943: i119 = int_ge(i116, 0) | |
guard_true(i119, descr=<Guard0x1301750>) [i116, p104, None, p113, p114, i109, p94, None, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
+953: i120 = getfield_gc_pure(p104, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+964: i121 = int_lt(i116, i120) | |
guard_true(i121, descr=<Guard0x13016e0>) [p104, i116, p113, p114, i109, p94, None, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
+973: p122 = getfield_gc(p104, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+977: guard_class(p122, 9641744, descr=<Guard0x1301670>) [i116, p122, p104, None, p113, p114, i109, p94, None, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
+989: p124 = getfield_gc(p104, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+993: p125 = getarrayitem_gc(p124, i116, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(if conf-set (conf-set-next conf-set i) #f)') | |
+1005: i127 = instance_ptr_eq(p125, ConstPtr(ptr126)) | |
guard_false(i127, descr=<Guard0x1301360>) [p125, None, p113, p114, i109, p94, p104, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
debug_merge_point(0, 0, '(conf-set-next conf-set i)') | |
+1018: guard_class(p113, 9625432, descr=<Guard0x13011a0>) [p113, p125, None, None, p114, i109, p94, p104, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
+1031: p129 = getfield_gc_pure(p113, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+1035: guard_value(p129, ConstPtr(ptr130), descr=<Guard0x1301130>) [p129, p125, None, p113, p114, i109, p94, p104, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+1054: guard_class(p98, ConstClass(W_Fixnum), descr=<Guard0x1300bf0>) [p98, p125, None, None, None, i109, p94, p104, p100, p106, None, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
+1067: i132 = getfield_gc_pure(p98, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+1071: i134 = int_add_ovf(i132, 5) | |
guard_no_overflow(descr=<Guard0x1300b80>) [i132, i134, p125, None, None, None, i109, p94, p104, p100, p106, p98, p96, p102, p89, p88, None, None, p68, None, None, None, None, None, None, None, None] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p136 = new_with_vtable(9625432) | |
p138 = new_with_vtable(ConstClass(W_Fixnum)) | |
p140 = new_with_vtable(9625672) | |
+1187: setfield_gc(p136, ConstPtr(ptr141), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+1201: setfield_gc(p140, ConstPtr(ptr142), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p144 = new_with_vtable(9629776) | |
p146 = new_with_vtable(9625432) | |
+1237: setfield_gc(p140, ConstPtr(ptr141), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p148 = new_with_vtable(ConstClass(W_Fixnum)) | |
+1269: setfield_gc(p138, i134, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+1273: setfield_gc(p136, p138, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
p150 = new_with_vtable(9625432) | |
+1295: setfield_gc(p146, p89, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+1306: setfield_gc(p146, p148, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
p152 = new_with_vtable(9625128) | |
+1328: setfield_gc(p150, p89, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p154 = new_array(8, descr=<ArrayP 8>) | |
p156 = new_with_vtable(9632160) | |
+1376: setfield_gc(p136, p140, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+1394: setfield_gc(p152, p89, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+1405: setfield_gc(p150, p152, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+1409: setfield_gc(p152, p89, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+1413: setfield_gc(p148, i109, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+1424: setfield_gc(p150, p88, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+1428: setfield_gc(p140, p98, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+1432: setfield_gc(p146, p150, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+1443: setfield_gc(p140, p125, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+1447: setfield_gc(p156, ConstPtr(ptr157), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+1461: setfield_gc(p156, p152, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+1465: setarrayitem_gc(p154, 0, p156, descr=<ArrayP 8>) | |
+1476: setarrayitem_gc(p154, 1, p94, descr=<ArrayP 8>) | |
+1487: setarrayitem_gc(p154, 2, p96, descr=<ArrayP 8>) | |
+1491: setarrayitem_gc(p154, 3, p98, descr=<ArrayP 8>) | |
+1495: setarrayitem_gc(p154, 4, p100, descr=<ArrayP 8>) | |
+1499: setarrayitem_gc(p154, 5, p102, descr=<ArrayP 8>) | |
+1503: setarrayitem_gc(p154, 6, p104, descr=<ArrayP 8>) | |
+1507: setarrayitem_gc(p154, 7, p106, descr=<ArrayP 8>) | |
+1518: setfield_gc(p152, p154, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+1522: setfield_gc(p144, p146, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+1533: setfield_gc(p144, ConstPtr(ptr166), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+1547: setfield_gc(p144, p68, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+1558: jump(p136, p144, descr=TargetToken(140248750874544)) | |
+1584: --end of the loop-- | |
[f464cef02b7] jit-log-opt-loop} | |
[f464ebdf015] {jit-log-opt-bridge | |
# bridge out of Guard 0x136bd00 with 82 ops | |
[p0, p1, p2] | |
+46: guard_value(p0, ConstPtr(ptr3), descr=<Guard0x1434720>) [p0, p1, p2] | |
+65: i4 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+69: guard_value(i4, 0, descr=<Guard0x1435130>) [i4, p1, p2] | |
+79: guard_class(p1, 9629776, descr=<Guard0x14350c0>) [p1, p2] | |
+91: p7 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+95: p8 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+99: p9 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+103: guard_not_invalidated(descr=<Guard0x1435050>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(not AppRand0_fresh_201)') | |
+103: guard_class(p7, 9625432, descr=<Guard0x1434fe0>) [p9, p7, None, None, p2] | |
+115: p12 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+119: i14 = instance_ptr_eq(p12, ConstPtr(ptr13)) | |
guard_false(i14, descr=<Guard0x1434f70>) [p9, p12, None, None, p2] | |
+138: guard_nonnull_class(p12, 9625432, descr=<Guard0x1434f00>) [p9, p12, None, None, p2] | |
+157: p16 = getfield_gc_pure(p12, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+161: i17 = instance_ptr_eq(p16, ConstPtr(ptr13)) | |
guard_false(i17, descr=<Guard0x1434e90>) [p9, p12, None, None, p2] | |
debug_merge_point(0, 0, '(if b #f #t)') | |
+180: i19 = instance_ptr_eq(p2, ConstPtr(ptr18)) | |
guard_false(i19, descr=<Guard0x1434e20>) [p9, None, None, p2] | |
debug_merge_point(0, 0, '#f') | |
+193: guard_nonnull_class(p9, 9629776, descr=<Guard0x1434db0>) [p9, None, None, None] | |
+212: p21 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+216: guard_value(p21, ConstPtr(ptr22), descr=<Guard0x1434d40>) [p21, p9, None, None, None] | |
+235: i23 = getfield_gc(p9, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+239: guard_value(i23, 0, descr=<Guard0x1434cd0>) [i23, p9, None, None, None] | |
+249: p25 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+249: p26 = getfield_gc_pure(p25, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+249: p27 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(if if_fresh_202 (conf-set-adjoin state* conf-set* conf i) #f)') | |
debug_merge_point(0, 0, '#f') | |
+253: guard_nonnull_class(p27, 9625008, descr=<Guard0x1434c60>) [p27, None, None, None] | |
+271: p29 = getfield_gc_pure(p27, descr=<FieldP pycket.interpreter.BeginCont.inst_ast 8>) | |
+275: p30 = getfield_gc_pure(p27, descr=<FieldP pycket.interpreter.BeginCont.inst_env 16>) | |
+279: p31 = getfield_gc_pure(p27, descr=<FieldP pycket.interpreter.BeginCont.inst_prev 32>) | |
+283: i32 = getfield_gc_pure(p27, descr=<FieldS pycket.interpreter.BeginCont.inst_i 24>) | |
+287: guard_value(p29, ConstPtr(ptr33), descr=<Guard0x1434bf0>) [i32, p31, p30, p29, None, None, None] | |
+306: guard_value(i32, 1, descr=<Guard0x1434b80>) [i32, p31, p30, None, None, None] | |
debug_merge_point(0, 0, '#t') | |
+316: guard_nonnull_class(p31, 9625008, descr=<Guard0x1434b10>) [p31, None, None, None] | |
+335: p36 = getfield_gc_pure(p31, descr=<FieldP pycket.interpreter.BeginCont.inst_ast 8>) | |
+339: p37 = getfield_gc_pure(p31, descr=<FieldP pycket.interpreter.BeginCont.inst_env 16>) | |
+343: p38 = getfield_gc_pure(p31, descr=<FieldP pycket.interpreter.BeginCont.inst_prev 32>) | |
+347: i39 = getfield_gc_pure(p31, descr=<FieldS pycket.interpreter.BeginCont.inst_i 24>) | |
+351: guard_value(p36, ConstPtr(ptr40), descr=<Guard0x1434aa0>) [i39, p38, p37, p36, None, None, None] | |
+370: guard_value(i39, 1, descr=<Guard0x1434a30>) [i39, p38, p37, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_159 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_159))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+380: guard_class(p37, 9625432, descr=<Guard0x14349c0>) [p37, p38, None, None, None] | |
+392: p43 = getfield_gc_pure(p37, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+396: guard_class(p43, 9625128, descr=<Guard0x1434950>) [p37, p43, p38, None, None, None] | |
+408: p45 = getfield_gc_pure(p43, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+412: p47 = getarrayitem_gc_pure(p45, 2, descr=<ArrayP 8>) | |
+416: p49 = getarrayitem_gc_pure(p45, 8, descr=<ArrayP 8>) | |
+420: p50 = getfield_gc_pure(p37, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+424: guard_value(p47, ConstPtr(ptr51), descr=<Guard0x14348e0>) [p47, p37, p49, p50, p38, None, None, None] | |
+443: p52 = getfield_gc_pure(p43, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+447: i54 = instance_ptr_eq(p52, ConstPtr(ptr53)) | |
guard_false(i54, descr=<Guard0x1434870>) [p43, p37, p49, p50, p38, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+466: guard_class(p50, ConstClass(W_Fixnum), descr=<Guard0x1434800>) [p50, p37, p49, None, p38, None, None, None] | |
+478: i56 = getfield_gc_pure(p50, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+482: i58 = int_add_ovf(i56, 5) | |
guard_no_overflow(descr=<Guard0x1434790>) [i56, i58, p37, p49, p50, p38, None, None, None] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p60 = new_with_vtable(9625432) | |
p62 = new_with_vtable(ConstClass(W_Fixnum)) | |
p64 = new_with_vtable(9625672) | |
+591: setfield_gc(p60, ConstPtr(ptr65), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+605: setfield_gc(p64, ConstPtr(ptr53), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p67 = new_with_vtable(9629776) | |
+631: setfield_gc(p64, ConstPtr(ptr65), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+645: setfield_gc(p62, i58, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+649: setfield_gc(p60, p62, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+653: setfield_gc(p64, p50, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+664: setfield_gc(p60, p64, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+668: setfield_gc(p64, p49, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+672: setfield_gc(p67, p37, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+677: setfield_gc(p67, ConstPtr(ptr68), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+692: setfield_gc(p67, p38, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+697: jump(p60, p67, descr=TargetToken(140248750874544)) | |
+724: --end of the loop-- | |
[f464ec26ee0] jit-log-opt-bridge} | |
[f464f10cf25] {jit-log-opt-bridge | |
# bridge out of Guard 0x11bd4b0 with 70 ops | |
[p0, p1, p2] | |
+46: guard_value(p0, ConstPtr(ptr3), descr=<Guard0x144e790>) [p0, p1, p2] | |
+65: i4 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+69: guard_value(i4, 0, descr=<Guard0x144e720>) [i4, p1, p2] | |
+79: guard_class(p1, 9629776, descr=<Guard0x144e6b0>) [p1, p2] | |
+91: p7 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+95: p8 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+99: p9 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+103: guard_not_invalidated(descr=<Guard0x144e640>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(if conf-set conf-set (let ([conf-set (let ([AppRand0_fresh_220 (+ state-num 6)]) (make-vector AppRand0_fresh_220 #f))]) (vector-set! conf-set 1 -3) (vector-set! conf-set 2 -1) (vector-set! conf-set 3 -1) (vector-set! conf-set 4 -1) (let ([AppRand1_fresh_219 (+ conf 1)]) (vector-set! state AppRand1_fresh_219 conf-set)) conf-set))') | |
+103: i11 = instance_ptr_eq(p2, ConstPtr(ptr10)) | |
guard_false(i11, descr=<Guard0x144e560>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, 'conf-set') | |
+116: guard_nonnull_class(p9, 9629776, descr=<Guard0x144e410>) [p9, None, None, p2] | |
+135: p14 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+139: guard_value(p14, ConstPtr(ptr15), descr=<Guard0x144e330>) [p14, p9, None, None, p2] | |
+158: i16 = getfield_gc(p9, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+162: guard_value(i16, 0, descr=<Guard0x144e2c0>) [i16, p9, None, None, p2] | |
+172: p18 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+176: p19 = getfield_gc_pure(p18, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+180: p20 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(let ([if_fresh_202 (let ([AppRand0_fresh_201 (conf-set-next conf-set* i)]) (not AppRand0_fresh_201))]) (if if_fresh_202 (conf-set-adjoin state* conf-set* conf i) #f))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_201 (conf-set-next conf-set* i)]) (not AppRand0_fresh_201))') | |
debug_merge_point(0, 0, '(conf-set-next conf-set* i)') | |
+184: guard_class(p18, 9625432, descr=<Guard0x1441f30>) [p18, p19, p20, None, None, p2] | |
+196: p22 = getfield_gc_pure(p18, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+200: guard_class(p22, 9625432, descr=<Guard0x1440170>) [p22, p18, p19, p20, None, None, p2] | |
+213: p24 = getfield_gc_pure(p22, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+217: guard_class(p24, 9625128, descr=<Guard0x1441ec0>) [p24, p18, p19, p20, None, None, p2] | |
+231: p26 = getfield_gc_pure(p24, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+235: guard_class(p26, 9625552, descr=<Guard0x1441e50>) [p26, p18, p19, p20, None, None, p2] | |
+248: p28 = getfield_gc_pure(p26, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+252: p29 = getfield_gc_pure(p24, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+256: p31 = getarrayitem_gc_pure(p29, 4, descr=<ArrayP 8>) | |
+260: guard_value(p28, ConstPtr(ptr32), descr=<Guard0x1441de0>) [p28, p31, p18, p19, p20, None, None, p2] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+279: guard_class(p31, ConstClass(W_Fixnum), descr=<Guard0x14418a0>) [p31, None, p18, p19, p20, None, None, p2] | |
+293: i34 = getfield_gc_pure(p31, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+297: i36 = int_add_ovf(i34, 5) | |
guard_no_overflow(descr=<Guard0x1441830>) [i34, i36, p31, p18, p19, p20, None, None, p2] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p38 = new_with_vtable(9625432) | |
p40 = new_with_vtable(ConstClass(W_Fixnum)) | |
p42 = new_with_vtable(9625672) | |
+406: setfield_gc(p38, ConstPtr(ptr43), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+420: setfield_gc(p42, ConstPtr(ptr44), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p46 = new_with_vtable(9629776) | |
p48 = new_with_vtable(9625432) | |
+456: setfield_gc(p42, ConstPtr(ptr43), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+470: setfield_gc(p38, p40, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+474: setfield_gc(p38, p42, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p50 = new_with_vtable(9629776) | |
+489: setfield_gc(p46, p48, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+493: setfield_gc(p46, ConstPtr(ptr51), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
p53 = new_with_vtable(9625008) | |
+518: setfield_gc(p50, p53, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+522: setfield_gc(p48, p19, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+526: setfield_gc(p40, i36, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+530: setfield_gc(p48, p2, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+541: setfield_gc(p42, p31, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+545: setfield_gc(p48, p18, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+549: setfield_gc(p42, p2, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+553: setfield_gc(p50, p48, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+557: setfield_gc(p50, ConstPtr(ptr54), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+571: setfield_gc(p53, p20, descr=<FieldP pycket.interpreter.BeginCont.inst_prev 32>) | |
+575: setfield_gc(p53, ConstPtr(ptr15), descr=<FieldP pycket.interpreter.BeginCont.inst_ast 8>) | |
+589: setfield_gc(p53, p48, descr=<FieldP pycket.interpreter.BeginCont.inst_env 16>) | |
+593: setfield_gc(p53, 1, descr=<FieldS pycket.interpreter.BeginCont.inst_i 24>) | |
+601: setfield_gc(p46, p50, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+605: jump(p38, p46, descr=TargetToken(140248750874544)) | |
+632: --end of the loop-- | |
[f464f14f86f] jit-log-opt-bridge} | |
[f464f5d83b9] {jit-log-opt-bridge | |
# bridge out of Guard 0x1434720 with 71 ops | |
[p0, p1, p2] | |
+46: guard_value(p0, ConstPtr(ptr3), descr=<Guard0x144e870>) [p0, p1, p2] | |
+65: i4 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+69: guard_value(i4, 0, descr=<Guard0x1465280>) [i4, p1, p2] | |
+79: guard_class(p1, 9629776, descr=<Guard0x1465210>) [p1, p2] | |
+91: p7 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+95: p8 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+99: p9 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+103: guard_not_invalidated(descr=<Guard0x14651a0>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(loop2 AppRand0_fresh_159)') | |
+103: guard_class(p7, 9625432, descr=<Guard0x1465130>) [p9, p7, p8, None, p2] | |
+115: p12 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+119: guard_class(p12, 9625128, descr=<Guard0x14650c0>) [p9, p12, p8, p7, p2] | |
+131: p14 = getfield_gc_pure(p12, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+135: p16 = getarrayitem_gc_pure(p14, 1, descr=<ArrayP 8>) | |
+139: guard_class(p16, 9632160, descr=<Guard0x1465050>) [p16, p9, p7, None, None, p2] | |
+153: p18 = getfield_gc_pure(p16, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+157: guard_value(p18, ConstPtr(ptr19), descr=<Guard0x1464fe0>) [p18, p9, p7, p16, None, None, p2] | |
+176: p20 = getfield_gc_pure(p16, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+180: i21 = instance_ptr_eq(p12, p20) | |
guard_true(i21, descr=<Guard0x1464f70>) [p20, p9, p12, None, None, p2] | |
+189: p22 = getfield_gc_pure(p20, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_161 (>= k 0)]) (if if_fresh_161 (begin (let ([if_fresh_158 (>= k i)]) (if if_fresh_158 (let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)) #f)) (let ([AppRand0_fresh_159 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_159))) (let ([AppRand0_fresh_160 (cdr l)]) (loop1 AppRand0_fresh_160))))') | |
debug_merge_point(0, 0, '(>= k 0)') | |
+193: guard_nonnull_class(p2, ConstClass(W_Fixnum), descr=<Guard0x1464f00>) [p2, p22, p9, p12, None, None, None] | |
+211: i24 = getfield_gc_pure(p2, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+215: i26 = int_ge(i24, 0) | |
guard_true(i26, descr=<Guard0x1464e90>) [p22, p9, p12, None, None, p2] | |
debug_merge_point(0, 0, '(if if_fresh_161 (begin (let ([if_fresh_158 (>= k i)]) (if if_fresh_158 (let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)) #f)) (let ([AppRand0_fresh_159 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_159))) (let ([AppRand0_fresh_160 (cdr l)]) (loop1 AppRand0_fresh_160)))') | |
debug_merge_point(0, 0, '(begin (let ([if_fresh_158 (>= k i)]) (if if_fresh_158 (let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)) #f)) (let ([AppRand0_fresh_159 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_159)))') | |
debug_merge_point(0, 0, '(let ([if_fresh_158 (>= k i)]) (if if_fresh_158 (let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)) #f))') | |
debug_merge_point(0, 0, '(>= k i)') | |
+225: p28 = getarrayitem_gc_pure(p14, 6, descr=<ArrayP 8>) | |
+229: guard_nonnull_class(p28, ConstClass(W_Fixnum), descr=<Guard0x1464e20>) [p28, p2, p22, p9, p12, None, None, None] | |
+249: i30 = getfield_gc_pure(p28, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+254: i31 = int_ge(i24, i30) | |
guard_false(i31, descr=<Guard0x1464db0>) [p22, p9, p12, None, None, p2] | |
debug_merge_point(0, 0, '(if if_fresh_158 (let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)) #f)') | |
debug_merge_point(0, 0, '#f') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_159 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_159))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+263: p33 = getarrayitem_gc_pure(p14, 2, descr=<ArrayP 8>) | |
+267: p35 = getarrayitem_gc_pure(p14, 8, descr=<ArrayP 8>) | |
+271: guard_value(p33, ConstPtr(ptr36), descr=<Guard0x1464d40>) [p33, p35, p22, p9, p12, None, None, p2] | |
+290: p37 = getfield_gc_pure(p12, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+294: i39 = instance_ptr_eq(p37, ConstPtr(ptr38)) | |
guard_false(i39, descr=<Guard0x1464cd0>) [p12, p35, p22, p9, None, None, None, p2] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+313: i41 = int_add_ovf(i24, 5) | |
guard_no_overflow(descr=<Guard0x1464c60>) [i24, i41, p35, p22, p9, p12, None, None, p2] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p43 = new_with_vtable(9625432) | |
p45 = new_with_vtable(ConstClass(W_Fixnum)) | |
p47 = new_with_vtable(9625672) | |
+422: setfield_gc(p43, ConstPtr(ptr48), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+436: setfield_gc(p47, ConstPtr(ptr38), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p50 = new_with_vtable(9629776) | |
p52 = new_with_vtable(9625432) | |
+472: setfield_gc(p47, ConstPtr(ptr48), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+486: setfield_gc(p43, p45, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+490: setfield_gc(p43, p47, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+494: setfield_gc(p52, p22, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+498: setfield_gc(p45, i41, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+509: setfield_gc(p52, p2, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+513: setfield_gc(p47, p2, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+517: setfield_gc(p52, p12, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+521: setfield_gc(p47, p35, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+525: setfield_gc(p50, p52, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+529: setfield_gc(p50, ConstPtr(ptr3), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+543: setfield_gc(p50, p9, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+547: jump(p43, p50, descr=TargetToken(140248750874544)) | |
+574: --end of the loop-- | |
[f464f61bc14] jit-log-opt-bridge} | |
[f464f9b1833] {jit-log-opt-loop | |
# Loop 2 ((let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))) : entry bridge with 18 ops | |
[p0, p1] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
+83: guard_not_invalidated(descr=<Guard0x14652f0>) [p0, p1] | |
debug_merge_point(0, 0, '(+ i 5)') | |
+83: guard_class(p0, 9625672, descr=<Guard0x1465a60>) [p0, p1] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+106: guard_class(p3, ConstClass(W_Fixnum), descr=<Guard0x14659f0>) [p0, p3, p1] | |
+118: i5 = getfield_gc_pure(p3, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+122: i7 = int_add_ovf(i5, 5) | |
guard_no_overflow(descr=<Guard0x1465980>) [p0, i5, i7, p3, p1] | |
+135: p8 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p10 = new_with_vtable(9625432) | |
p12 = new_with_vtable(ConstClass(W_Fixnum)) | |
+221: setfield_gc(p10, p8, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+232: setfield_gc(p12, i7, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+236: setfield_gc(p10, p12, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+240: setfield_gc(p10, p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+244: jump(p10, p1, descr=TargetToken(140248750874544)) | |
+264: --end of the loop-- | |
[f464f9cdad5] jit-log-opt-loop} | |
[f465050a9fb] {jit-log-opt-bridge | |
# bridge out of Guard 0x1434b10 with 118 ops | |
[p0] | |
+46: guard_nonnull_class(p0, 9629776, descr=<Guard0x149b7c0>) [p0] | |
+65: p2 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+69: guard_value(p2, ConstPtr(ptr3), descr=<Guard0x149b6e0>) [p2, p0] | |
+88: i4 = getfield_gc(p0, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+92: guard_value(i4, 0, descr=<Guard0x149b670>) [i4, p0] | |
+102: p6 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+106: p7 = getfield_gc_pure(p6, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+110: p8 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+114: guard_not_invalidated(descr=<Guard0x149b600>) [p8, p7, p6] | |
debug_merge_point(0, 0, '(if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)') | |
debug_merge_point(0, 0, '(conf-set-adjoin** states states* j ender k)') | |
+114: guard_class(p6, 9625432, descr=<Guard0x149b440>) [p8, p6, None, None] | |
+127: p11 = getfield_gc_pure(p6, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+131: guard_class(p11, 9625128, descr=<Guard0x149b3d0>) [p8, p6, p11, None, None] | |
+145: p13 = getfield_gc_pure(p11, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+149: p15 = getarrayitem_gc_pure(p13, 9, descr=<ArrayP 8>) | |
+153: p17 = getarrayitem_gc_pure(p13, 3, descr=<ArrayP 8>) | |
+157: p19 = getarrayitem_gc_pure(p13, 7, descr=<ArrayP 8>) | |
+161: p21 = getarrayitem_gc_pure(p13, 0, descr=<ArrayP 8>) | |
+165: p23 = getarrayitem_gc_pure(p13, 10, descr=<ArrayP 8>) | |
+169: p24 = getfield_gc_pure(p6, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+173: guard_class(p15, 9632160, descr=<Guard0x149b360>) [p15, p8, p6, p21, p24, p19, p17, p23, None, None] | |
+186: p26 = getfield_gc_pure(p15, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+190: guard_value(p26, ConstPtr(ptr27), descr=<Guard0x149b2f0>) [p26, p8, p6, p15, p21, p24, p19, p17, p23, None, None] | |
+209: p28 = getfield_gc_pure(p15, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+213: i29 = instance_ptr_eq(p11, p28) | |
guard_false(i29, descr=<Guard0x149b280>) [p28, p8, p11, p21, p24, p19, p17, p23, None, None] | |
+222: p30 = getfield_gc_pure(p11, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+226: i31 = instance_ptr_eq(p30, p28) | |
guard_false(i31, descr=<Guard0x149b210>) [p28, p8, p11, p21, p24, p19, p17, p23, None, None] | |
+235: p32 = getfield_gc_pure(p28, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([state (vector-ref states state-num)]) (let ([if_fresh_203 (conf-set-member? state conf i)]) (if if_fresh_203 (let ([state* (vector-ref states* state-num)]) (let ([conf-set* (conf-set-get* state* state-num conf)]) (let ([if_fresh_202 (let ([AppRand0_fresh_201 (conf-set-next conf-set* i)]) (not AppRand0_fresh_201))]) (if if_fresh_202 (conf-set-adjoin state* conf-set* conf i) #f)) #t)) #f)))') | |
debug_merge_point(0, 0, '(vector-ref states state-num)') | |
+239: guard_nonnull_class(p17, ConstClass(W_Vector), descr=<Guard0x149ae90>) [p17, p8, p32, p28, p21, p24, p19, None, p23, None, None] | |
+258: guard_nonnull_class(p21, ConstClass(W_Fixnum), descr=<Guard0x149ad40>) [p17, p21, p8, p32, p28, None, p24, p19, None, p23, None, None] | |
+276: i35 = getfield_gc_pure(p21, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+280: i37 = int_ge(i35, 0) | |
guard_true(i37, descr=<Guard0x149ac60>) [i35, p21, p17, p8, p32, p28, None, p24, p19, None, p23, None, None] | |
+290: i38 = getfield_gc_pure(p17, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+294: i39 = int_lt(i35, i38) | |
guard_true(i39, descr=<Guard0x149ab80>) [p21, p17, p8, p32, p28, None, p24, p19, None, p23, None, None] | |
+303: p40 = getfield_gc(p17, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+307: guard_class(p40, 9641744, descr=<Guard0x149ab10>) [i35, p40, p17, p8, p32, p28, p21, p24, p19, None, p23, None, None] | |
+319: p42 = getfield_gc(p17, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+323: p43 = getarrayitem_gc(p42, i35, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_203 (conf-set-member? state conf i)]) (if if_fresh_203 (let ([state* (vector-ref states* state-num)]) (let ([conf-set* (conf-set-get* state* state-num conf)]) (let ([if_fresh_202 (let ([AppRand0_fresh_201 (conf-set-next conf-set* i)]) (not AppRand0_fresh_201))]) (if if_fresh_202 (conf-set-adjoin state* conf-set* conf i) #f)) #t)) #f))') | |
debug_merge_point(0, 0, '(conf-set-member? state conf i)') | |
+328: guard_class(p28, 9625552, descr=<Guard0x149a640>) [p28, p43, p8, p32, None, p21, p24, p19, p17, p23, None, None] | |
+341: p45 = getfield_gc_pure(p28, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_1 32>) | |
+345: guard_class(p45, 9632160, descr=<Guard0x149a560>) [p45, p43, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
+359: p47 = getfield_gc_pure(p45, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+363: guard_value(p47, ConstPtr(ptr48), descr=<Guard0x149a4f0>) [p47, p45, p43, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
+382: p49 = getfield_gc_pure(p45, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+386: i50 = instance_ptr_eq(p28, p49) | |
guard_false(i50, descr=<Guard0x149a410>) [p49, p43, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
+395: p51 = getfield_gc_pure(p49, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([conf-set (let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))]) (if conf-set (conf-set-next conf-set i) #f))') | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))') | |
debug_merge_point(0, 0, '(+ conf 1)') | |
+399: guard_class(p23, ConstClass(W_Fixnum), descr=<Guard0x1491ec0>) [p23, p51, p49, p43, p8, p32, p28, p21, p24, p19, p17, None, None, None] | |
+411: i53 = getfield_gc_pure(p23, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+415: i55 = int_add_ovf(i53, 1) | |
guard_no_overflow(descr=<Guard0x1491e50>) [i53, i55, p51, p49, p43, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
debug_merge_point(0, 0, '(vector-ref state AppRand1_fresh_213)') | |
+428: guard_nonnull_class(p43, ConstClass(W_Vector), descr=<Guard0x14919f0>) [p43, i55, p51, p49, None, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
+446: i58 = int_ge(i55, 0) | |
guard_true(i58, descr=<Guard0x1491830>) [i55, p43, None, p51, p49, None, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
+456: i59 = getfield_gc_pure(p43, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+460: i60 = int_lt(i55, i59) | |
guard_true(i60, descr=<Guard0x14917c0>) [p43, i55, p51, p49, None, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
+469: p61 = getfield_gc(p43, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+473: guard_class(p61, 9641744, descr=<Guard0x1491750>) [i55, p61, p43, None, p51, p49, None, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
+485: p63 = getfield_gc(p43, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+489: p64 = getarrayitem_gc(p63, i55, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(if conf-set (conf-set-next conf-set i) #f)') | |
+501: i66 = instance_ptr_eq(p64, ConstPtr(ptr65)) | |
guard_false(i66, descr=<Guard0x1491440>) [p64, None, p51, p49, p43, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
debug_merge_point(0, 0, '(conf-set-next conf-set i)') | |
+514: guard_class(p49, 9625432, descr=<Guard0x1491280>) [p49, p64, None, p51, None, p43, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
+526: p68 = getfield_gc_pure(p49, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+530: guard_value(p68, ConstPtr(ptr69), descr=<Guard0x1491210>) [p68, p64, None, p51, p49, p43, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+549: guard_class(p24, ConstClass(W_Fixnum), descr=<Guard0x1490cd0>) [p24, p64, None, None, None, p43, p8, p32, p28, p21, None, p19, p17, p23, None, None] | |
+562: i71 = getfield_gc_pure(p24, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+566: i73 = int_add_ovf(i71, 5) | |
guard_no_overflow(descr=<Guard0x1490c60>) [i71, i73, p64, None, None, None, p43, p8, p32, p28, p21, p24, p19, p17, p23, None, None] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p75 = new_with_vtable(9625432) | |
p77 = new_with_vtable(ConstClass(W_Fixnum)) | |
p79 = new_with_vtable(9625672) | |
+676: setfield_gc(p75, ConstPtr(ptr80), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+690: setfield_gc(p79, ConstPtr(ptr81), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p83 = new_with_vtable(9629776) | |
p85 = new_with_vtable(9625432) | |
+733: setfield_gc(p79, ConstPtr(ptr80), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+747: setfield_gc(p75, p77, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
p87 = new_with_vtable(9625128) | |
+769: setfield_gc(p85, p32, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p89 = new_array(5, descr=<ArrayP 8>) | |
+799: setfield_gc(p75, p79, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+817: setfield_gc(p87, p28, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+821: setfield_gc(p87, p32, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+825: setfield_gc(p77, i73, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+829: setfield_gc(p85, p43, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+840: setfield_gc(p79, p24, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+844: setfield_gc(p85, p87, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+848: setfield_gc(p79, p64, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+852: setarrayitem_gc(p89, 0, p17, descr=<ArrayP 8>) | |
+864: setarrayitem_gc(p89, 1, p19, descr=<ArrayP 8>) | |
+869: setarrayitem_gc(p89, 2, p21, descr=<ArrayP 8>) | |
+881: setarrayitem_gc(p89, 3, p23, descr=<ArrayP 8>) | |
+886: setarrayitem_gc(p89, 4, p24, descr=<ArrayP 8>) | |
+891: setfield_gc(p87, p89, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+895: setfield_gc(p83, p85, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+907: setfield_gc(p83, ConstPtr(ptr95), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+922: setfield_gc(p83, p8, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+934: jump(p75, p83, descr=TargetToken(140248750874544)) | |
+961: --end of the loop-- | |
[f46505740ec] jit-log-opt-bridge} | |
[f46508407ec] {jit-log-opt-bridge | |
# bridge out of Guard 0x144e870 with 65 ops | |
[p0, p1, p2] | |
+46: guard_value(p0, ConstPtr(ptr3), descr=<Guard0x149b8a0>) [p0, p1, p2] | |
+65: i4 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+69: guard_value(i4, 0, descr=<Guard0x1501520>) [i4, p1, p2] | |
+79: guard_class(p1, 9629776, descr=<Guard0x15014b0>) [p1, p2] | |
+91: p7 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+95: p8 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+99: p9 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+103: guard_not_invalidated(descr=<Guard0x1501440>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(if if_fresh_203 (let ([state* (vector-ref states* state-num)]) (let ([conf-set* (conf-set-get* state* state-num conf)]) (let ([if_fresh_202 (let ([AppRand0_fresh_201 (conf-set-next conf-set* i)]) (not AppRand0_fresh_201))]) (if if_fresh_202 (conf-set-adjoin state* conf-set* conf i) #f)) #t)) #f)') | |
+103: i11 = instance_ptr_eq(p2, ConstPtr(ptr10)) | |
guard_true(i11, descr=<Guard0x15013d0>) [p9, p7, None, None, None] | |
debug_merge_point(0, 0, '#f') | |
+116: guard_nonnull_class(p9, 9629776, descr=<Guard0x1501360>) [p9, None, None, None] | |
+135: p14 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+139: guard_value(p14, ConstPtr(ptr15), descr=<Guard0x15012f0>) [p14, p9, None, None, None] | |
+158: i16 = getfield_gc(p9, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+162: guard_value(i16, 0, descr=<Guard0x1501280>) [i16, p9, None, None, None] | |
+172: p18 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+172: p19 = getfield_gc_pure(p18, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+172: p20 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)') | |
debug_merge_point(0, 0, '#f') | |
+176: guard_nonnull_class(p20, 9625008, descr=<Guard0x1501210>) [p20, None, None, None] | |
+194: p22 = getfield_gc_pure(p20, descr=<FieldP pycket.interpreter.BeginCont.inst_ast 8>) | |
+198: p23 = getfield_gc_pure(p20, descr=<FieldP pycket.interpreter.BeginCont.inst_env 16>) | |
+202: p24 = getfield_gc_pure(p20, descr=<FieldP pycket.interpreter.BeginCont.inst_prev 32>) | |
+206: i25 = getfield_gc_pure(p20, descr=<FieldS pycket.interpreter.BeginCont.inst_i 24>) | |
+210: guard_value(p22, ConstPtr(ptr26), descr=<Guard0x15011a0>) [i25, p24, p23, p22, None, None, None] | |
+229: guard_value(i25, 1, descr=<Guard0x1501130>) [i25, p24, p23, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_159 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_159))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+239: guard_class(p23, 9625432, descr=<Guard0x15010c0>) [p23, p24, None, None, None] | |
+251: p29 = getfield_gc_pure(p23, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+255: guard_class(p29, 9625128, descr=<Guard0x1501050>) [p23, p29, p24, None, None, None] | |
+267: p31 = getfield_gc_pure(p29, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+271: p33 = getarrayitem_gc_pure(p31, 2, descr=<ArrayP 8>) | |
+275: p35 = getarrayitem_gc_pure(p31, 8, descr=<ArrayP 8>) | |
+279: p36 = getfield_gc_pure(p23, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+283: guard_value(p33, ConstPtr(ptr37), descr=<Guard0x1500fe0>) [p33, p23, p36, p35, p24, None, None, None] | |
+302: p38 = getfield_gc_pure(p29, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+306: i40 = instance_ptr_eq(p38, ConstPtr(ptr39)) | |
guard_false(i40, descr=<Guard0x1500f70>) [p29, p23, p36, p35, p24, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+325: guard_class(p36, ConstClass(W_Fixnum), descr=<Guard0x1500f00>) [p36, p23, None, p35, p24, None, None, None] | |
+338: i42 = getfield_gc_pure(p36, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+342: i44 = int_add_ovf(i42, 5) | |
guard_no_overflow(descr=<Guard0x1500e90>) [i42, i44, p23, p36, p35, p24, None, None, None] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p46 = new_with_vtable(9625432) | |
p48 = new_with_vtable(ConstClass(W_Fixnum)) | |
p50 = new_with_vtable(9625672) | |
+451: setfield_gc(p46, ConstPtr(ptr51), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+465: setfield_gc(p50, ConstPtr(ptr39), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p53 = new_with_vtable(9629776) | |
+491: setfield_gc(p50, ConstPtr(ptr51), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+505: setfield_gc(p48, i44, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+509: setfield_gc(p46, p48, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+513: setfield_gc(p50, p36, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+517: setfield_gc(p46, p50, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+521: setfield_gc(p50, p35, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+525: setfield_gc(p53, p23, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+537: setfield_gc(p53, ConstPtr(ptr54), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+552: setfield_gc(p53, p24, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+557: jump(p46, p53, descr=TargetToken(140248750874544)) | |
+584: --end of the loop-- | |
[f465087c4e3] jit-log-opt-bridge} | |
[f4650d8be19] {jit-log-opt-bridge | |
# bridge out of Guard 0x1464db0 with 121 ops | |
[p0, p1, p2, p3] | |
+46: guard_not_invalidated(descr=<Guard0x1501670>) [p3, p0, p1, p2] | |
debug_merge_point(0, 0, '(if if_fresh_158 (let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)) #f)') | |
debug_merge_point(0, 0, '(let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f))') | |
debug_merge_point(0, 0, '(conf-set-adjoin** states states* k prev i)') | |
+46: guard_class(p2, 9625128, descr=<Guard0x1521210>) [p2, p3, p0, p1, None] | |
+58: p6 = getfield_gc_pure(p2, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+62: p8 = getarrayitem_gc_pure(p6, 9, descr=<ArrayP 8>) | |
+66: p10 = getarrayitem_gc_pure(p6, 3, descr=<ArrayP 8>) | |
+70: p12 = getarrayitem_gc_pure(p6, 7, descr=<ArrayP 8>) | |
+74: p14 = getarrayitem_gc_pure(p6, 4, descr=<ArrayP 8>) | |
+78: p16 = getarrayitem_gc_pure(p6, 6, descr=<ArrayP 8>) | |
+82: guard_class(p8, 9632160, descr=<Guard0x15211a0>) [p8, p12, p10, p16, p14, p3, p0, p1, p2] | |
+96: p18 = getfield_gc_pure(p8, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+101: guard_value(p18, ConstPtr(ptr19), descr=<Guard0x1521130>) [p18, p8, p12, p10, p16, p14, p3, p0, p1, p2] | |
+120: p20 = getfield_gc_pure(p8, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+125: i21 = instance_ptr_eq(p2, p20) | |
guard_false(i21, descr=<Guard0x15210c0>) [p20, p2, p12, p10, p16, p14, p3, p0, p1, None] | |
+134: p22 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+138: i23 = instance_ptr_eq(p22, p20) | |
guard_false(i23, descr=<Guard0x1521050>) [p20, p2, p12, p10, p16, p14, p3, p0, p1, None] | |
+147: p24 = getfield_gc_pure(p20, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([state (vector-ref states state-num)]) (let ([if_fresh_203 (conf-set-member? state conf i)]) (if if_fresh_203 (let ([state* (vector-ref states* state-num)]) (let ([conf-set* (conf-set-get* state* state-num conf)]) (let ([if_fresh_202 (let ([AppRand0_fresh_201 (conf-set-next conf-set* i)]) (not AppRand0_fresh_201))]) (if if_fresh_202 (conf-set-adjoin state* conf-set* conf i) #f)) #t)) #f)))') | |
debug_merge_point(0, 0, '(vector-ref states state-num)') | |
+151: guard_nonnull_class(p10, ConstClass(W_Vector), descr=<Guard0x1520fe0>) [p10, p24, p20, p12, None, p16, p14, p3, p0, p1, p2] | |
+170: guard_nonnull_class(p3, ConstClass(W_Fixnum), descr=<Guard0x1520f00>) [p10, p3, p24, p20, p12, None, p16, p14, None, p0, p1, p2] | |
+188: i27 = getfield_gc_pure(p3, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+192: i29 = int_ge(i27, 0) | |
guard_true(i29, descr=<Guard0x1520e90>) [i27, p3, p10, p24, p20, p12, None, p16, p14, None, p0, p1, p2] | |
+202: i30 = getfield_gc_pure(p10, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+206: i31 = int_lt(i27, i30) | |
guard_true(i31, descr=<Guard0x1520db0>) [p3, p10, p24, p20, p12, None, p16, p14, None, p0, p1, p2] | |
+215: p32 = getfield_gc(p10, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+219: guard_class(p32, 9641744, descr=<Guard0x1520d40>) [i27, p32, p10, p24, p20, p12, None, p16, p14, p3, p0, p1, p2] | |
+231: p34 = getfield_gc(p10, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+235: p35 = getarrayitem_gc(p34, i27, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_203 (conf-set-member? state conf i)]) (if if_fresh_203 (let ([state* (vector-ref states* state-num)]) (let ([conf-set* (conf-set-get* state* state-num conf)]) (let ([if_fresh_202 (let ([AppRand0_fresh_201 (conf-set-next conf-set* i)]) (not AppRand0_fresh_201))]) (if if_fresh_202 (conf-set-adjoin state* conf-set* conf i) #f)) #t)) #f))') | |
debug_merge_point(0, 0, '(conf-set-member? state conf i)') | |
+240: guard_class(p20, 9625552, descr=<Guard0x1520c60>) [p20, p35, p24, None, p12, p10, p16, p14, p3, p0, p1, p2] | |
+253: p37 = getfield_gc_pure(p20, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_1 32>) | |
+257: guard_class(p37, 9632160, descr=<Guard0x1520b80>) [p37, p35, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
+269: p39 = getfield_gc_pure(p37, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+273: guard_value(p39, ConstPtr(ptr40), descr=<Guard0x1520b10>) [p39, p37, p35, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
+292: p41 = getfield_gc_pure(p37, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+296: i42 = instance_ptr_eq(p20, p41) | |
guard_false(i42, descr=<Guard0x1520a30>) [p41, p35, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
+305: p43 = getfield_gc_pure(p41, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([conf-set (let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))]) (if conf-set (conf-set-next conf-set i) #f))') | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))') | |
debug_merge_point(0, 0, '(+ conf 1)') | |
+309: guard_class(p14, ConstClass(W_Fixnum), descr=<Guard0x15209c0>) [p14, p43, p41, p35, p24, p20, p12, p10, p16, None, p3, p0, p1, p2] | |
+322: i45 = getfield_gc_pure(p14, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+333: i47 = int_add_ovf(i45, 1) | |
guard_no_overflow(descr=<Guard0x1520950>) [i45, i47, p43, p41, p35, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
debug_merge_point(0, 0, '(vector-ref state AppRand1_fresh_213)') | |
+350: guard_nonnull_class(p35, ConstClass(W_Vector), descr=<Guard0x1520870>) [p35, i47, p43, p41, None, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
+368: i50 = int_ge(i47, 0) | |
guard_true(i50, descr=<Guard0x1520790>) [i47, p35, None, p43, p41, None, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
+378: i51 = getfield_gc_pure(p35, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+389: i52 = int_lt(i47, i51) | |
guard_true(i52, descr=<Guard0x15206b0>) [p35, i47, p43, p41, None, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
+398: p53 = getfield_gc(p35, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+402: guard_class(p53, 9641744, descr=<Guard0x1520640>) [i47, p53, p35, None, p43, p41, None, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
+414: p55 = getfield_gc(p35, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+418: p56 = getarrayitem_gc(p55, i47, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(if conf-set (conf-set-next conf-set i) #f)') | |
+430: i58 = instance_ptr_eq(p56, ConstPtr(ptr57)) | |
guard_false(i58, descr=<Guard0x1520560>) [p56, None, p43, p41, p35, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
debug_merge_point(0, 0, '(conf-set-next conf-set i)') | |
+443: guard_class(p41, 9625432, descr=<Guard0x1520480>) [p41, p56, None, p43, None, p35, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
+455: p60 = getfield_gc_pure(p41, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+459: guard_value(p60, ConstPtr(ptr61), descr=<Guard0x1520410>) [p60, p56, None, p43, p41, p35, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+478: guard_class(p16, ConstClass(W_Fixnum), descr=<Guard0x15203a0>) [p16, p56, None, None, None, p35, p24, p20, p12, p10, None, p14, p3, p0, p1, p2] | |
+497: i63 = getfield_gc_pure(p16, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+501: i65 = int_add_ovf(i63, 5) | |
guard_no_overflow(descr=<Guard0x1520330>) [i63, i65, p56, None, None, None, p35, p24, p20, p12, p10, p16, p14, p3, p0, p1, p2] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p67 = new_with_vtable(9625432) | |
p69 = new_with_vtable(ConstClass(W_Fixnum)) | |
p71 = new_with_vtable(9625672) | |
+610: setfield_gc(p67, ConstPtr(ptr72), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+624: setfield_gc(p71, ConstPtr(ptr73), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p75 = new_with_vtable(9629776) | |
p77 = new_with_vtable(9625432) | |
+674: setfield_gc(p71, ConstPtr(ptr72), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+688: setfield_gc(p67, p69, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
p79 = new_with_vtable(9625128) | |
+710: setfield_gc(p77, p24, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p81 = new_array(5, descr=<ArrayP 8>) | |
+740: setfield_gc(p67, p71, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+758: setfield_gc(p79, p20, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p83 = new_with_vtable(9629776) | |
p85 = new_with_vtable(9625432) | |
+805: setfield_gc(p79, p24, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+809: setfield_gc(p77, p35, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+820: setfield_gc(p77, p79, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+824: setfield_gc(p75, p77, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+836: setfield_gc(p75, ConstPtr(ptr86), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
p88 = new_with_vtable(9625008) | |
+862: setfield_gc(p83, p88, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+874: setfield_gc(p85, p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+878: setfield_gc(p69, i65, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+882: setfield_gc(p85, p3, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+886: setfield_gc(p71, p16, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+897: setfield_gc(p85, p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+901: setfield_gc(p71, p56, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+905: setarrayitem_gc(p81, 0, p10, descr=<ArrayP 8>) | |
+916: setarrayitem_gc(p81, 1, p12, descr=<ArrayP 8>) | |
+920: setarrayitem_gc(p81, 2, p3, descr=<ArrayP 8>) | |
+924: setarrayitem_gc(p81, 3, p14, descr=<ArrayP 8>) | |
+935: setarrayitem_gc(p81, 4, p16, descr=<ArrayP 8>) | |
+939: setfield_gc(p79, p81, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+943: setfield_gc(p83, p85, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+948: setfield_gc(p83, ConstPtr(ptr94), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+963: setfield_gc(p88, p1, descr=<FieldP pycket.interpreter.BeginCont.inst_prev 32>) | |
+974: setfield_gc(p88, ConstPtr(ptr95), descr=<FieldP pycket.interpreter.BeginCont.inst_ast 8>) | |
+988: setfield_gc(p88, p85, descr=<FieldP pycket.interpreter.BeginCont.inst_env 16>) | |
+992: setfield_gc(p88, 1, descr=<FieldS pycket.interpreter.BeginCont.inst_i 24>) | |
+1000: setfield_gc(p75, p83, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+1011: jump(p67, p75, descr=TargetToken(140248750874544)) | |
+1045: --end of the loop-- | |
[f4650e0783e] jit-log-opt-bridge} | |
[f4651281cda] {jit-log-opt-bridge | |
# bridge out of Guard 0x144e790 with 81 ops | |
[p0, p1, p2] | |
+46: guard_value(p0, ConstPtr(ptr3), descr=<Guard0x1521280>) [p0, p1, p2] | |
+65: i4 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+69: guard_value(i4, 0, descr=<Guard0x153a020>) [i4, p1, p2] | |
+79: guard_class(p1, 9629776, descr=<Guard0x1535f30>) [p1, p2] | |
+91: p7 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+95: p8 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+99: p9 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+103: guard_not_invalidated(descr=<Guard0x1535ec0>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(if ender-set (let ([AppRand0_fresh_162 (conf-set-head ender-set)]) ((rec (lambda (k) (let ([if_fresh_161 (>= k 0)]) (if if_fresh_161 (begin (let ([if_fresh_158 (>= k i)]) (if if_fresh_158 (let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)) #f)) (let ([AppRand0_fresh_159 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_159))) (let ([AppRand0_fresh_160 (cdr l)]) (loop1 AppRand0_fresh_160)))))) AppRand0_fresh_162)) (let ([AppRand0_fresh_163 (cdr l)]) (loop1 AppRand0_fresh_163)))') | |
+103: i11 = instance_ptr_eq(p2, ConstPtr(ptr10)) | |
guard_true(i11, descr=<Guard0x1535e50>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_163 (cdr l)]) (loop1 AppRand0_fresh_163))') | |
debug_merge_point(0, 0, '(cdr l)') | |
+116: guard_class(p7, 9625432, descr=<Guard0x1535de0>) [p7, p9, p8, None, p2] | |
+128: p14 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+132: guard_class(p14, 9625432, descr=<Guard0x1535d70>) [p14, p9, p8, p7, p2] | |
+144: p16 = getfield_gc_pure(p14, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+148: guard_nonnull_class(p16, 9623288, descr=<Guard0x1535d00>) [p16, p9, p8, p7, p2] | |
+168: p18 = getfield_gc_pure(p16, descr=<FieldP pycket.values.W_UnwrappedFixnumCons.inst__cdr 16>) | |
+172: guard_nonnull_class(p18, 9640312, descr=<Guard0x1535c90>) [p18, p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(loop1 AppRand0_fresh_163)') | |
+192: p20 = getfield_gc_pure(p14, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+196: guard_class(p20, 9625128, descr=<Guard0x1535c20>) [p9, p20, p18, None, p8, p7, p2] | |
+210: p22 = getfield_gc_pure(p20, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+214: p24 = getarrayitem_gc_pure(p22, 6, descr=<ArrayP 8>) | |
+218: guard_class(p24, 9632160, descr=<Guard0x1535bb0>) [p24, p9, p18, None, p8, p7, p2] | |
+232: p26 = getfield_gc_pure(p24, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+236: guard_value(p26, ConstPtr(ptr27), descr=<Guard0x1535b40>) [p26, p9, p24, p18, None, p8, p7, p2] | |
+255: p28 = getfield_gc_pure(p24, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+259: i29 = instance_ptr_eq(p7, p28) | |
guard_false(i29, descr=<Guard0x1535ad0>) [p28, p9, p7, p18, None, None, None, None] | |
+268: i30 = instance_ptr_eq(p14, p28) | |
guard_false(i30, descr=<Guard0x1535a60>) [p28, p9, p7, p18, None, None, None, None] | |
+277: p31 = getfield_gc_pure(p28, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_165 (pair? l)]) (if if_fresh_165 (let ([ender (car l)]) (let ([ender-set (let ([AppRand0_fresh_164 (vector-ref states j)]) (conf-set-get AppRand0_fresh_164 ender))]) (if ender-set (let ([AppRand0_fresh_162 (conf-set-head ender-set)]) ((rec (lambda (k) (let ([if_fresh_161 (>= k 0)]) (if if_fresh_161 (begin (let ([if_fresh_158 (>= k i)]) (if if_fresh_158 (let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)) #f)) (let ([AppRand0_fresh_159 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_159))) (let ([AppRand0_fresh_160 (cdr l)]) (loop1 AppRand0_fresh_160)))))) AppRand0_fresh_162)) (let ([AppRand0_fresh_163 (cdr l)]) (loop1 AppRand0_fresh_163))))) #f))') | |
debug_merge_point(0, 0, '(pair? l)') | |
debug_merge_point(0, 0, '(if if_fresh_165 (let ([ender (car l)]) (let ([ender-set (let ([AppRand0_fresh_164 (vector-ref states j)]) (conf-set-get AppRand0_fresh_164 ender))]) (if ender-set (let ([AppRand0_fresh_162 (conf-set-head ender-set)]) ((rec (lambda (k) (let ([if_fresh_161 (>= k 0)]) (if if_fresh_161 (begin (let ([if_fresh_158 (>= k i)]) (if if_fresh_158 (let ([if_fresh_157 (conf-set-adjoin** states states* k prev i)]) (if if_fresh_157 (conf-set-adjoin** states states* j ender k) #f)) #f)) (let ([AppRand0_fresh_159 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_159))) (let ([AppRand0_fresh_160 (cdr l)]) (loop1 AppRand0_fresh_160)))))) AppRand0_fresh_162)) (let ([AppRand0_fresh_163 (cdr l)]) (loop1 AppRand0_fresh_163))))) #f)') | |
debug_merge_point(0, 0, '#f') | |
+277: guard_nonnull_class(p9, 9625008, descr=<Guard0x15359f0>) [p9, None, None, None, None, None] | |
+296: p33 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.BeginCont.inst_ast 8>) | |
+300: p34 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.BeginCont.inst_env 16>) | |
+304: p35 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.BeginCont.inst_prev 32>) | |
+308: i36 = getfield_gc_pure(p9, descr=<FieldS pycket.interpreter.BeginCont.inst_i 24>) | |
+312: guard_value(p33, ConstPtr(ptr37), descr=<Guard0x1535980>) [i36, p35, p34, p33, None, None, None, None, None] | |
+331: guard_value(i36, 1, descr=<Guard0x1535910>) [i36, p35, p34, None, None, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_151 (conf-set-next conf-set i)]) (loop2 AppRand0_fresh_151))') | |
debug_merge_point(0, 0, '(conf-set-next conf-set i)') | |
+341: guard_class(p34, 9625432, descr=<Guard0x15358a0>) [p34, p35, None, None, None, None, None] | |
+355: p40 = getfield_gc_pure(p34, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+360: guard_class(p40, 9625128, descr=<Guard0x1535830>) [p34, p40, p35, None, None, None, None, None] | |
+372: p42 = getfield_gc_pure(p40, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+376: p44 = getarrayitem_gc_pure(p42, 3, descr=<ArrayP 8>) | |
+380: p46 = getarrayitem_gc_pure(p42, 6, descr=<ArrayP 8>) | |
+384: p47 = getfield_gc_pure(p34, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+389: guard_value(p44, ConstPtr(ptr48), descr=<Guard0x15357c0>) [p44, p34, p46, p47, p35, None, None, None, None, None] | |
+408: p49 = getfield_gc_pure(p40, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+412: i51 = instance_ptr_eq(p49, ConstPtr(ptr50)) | |
guard_false(i51, descr=<Guard0x1535750>) [p40, p34, p46, p47, p35, None, None, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+431: guard_class(p47, ConstClass(W_Fixnum), descr=<Guard0x15356e0>) [p47, p34, p46, None, p35, None, None, None, None, None] | |
+443: i53 = getfield_gc_pure(p47, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+447: i55 = int_add_ovf(i53, 5) | |
guard_no_overflow(descr=<Guard0x1535670>) [i53, i55, p34, p46, p47, p35, None, None, None, None, None] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p57 = new_with_vtable(9625432) | |
p59 = new_with_vtable(ConstClass(W_Fixnum)) | |
p61 = new_with_vtable(9625672) | |
+549: setfield_gc(p57, ConstPtr(ptr62), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+563: setfield_gc(p61, ConstPtr(ptr50), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p64 = new_with_vtable(9629776) | |
+588: setfield_gc(p61, ConstPtr(ptr62), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+602: setfield_gc(p59, i55, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+606: setfield_gc(p57, p59, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+610: setfield_gc(p61, p47, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+614: setfield_gc(p57, p61, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+618: setfield_gc(p61, p46, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+622: setfield_gc(p64, p34, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+626: setfield_gc(p64, ConstPtr(ptr65), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+640: setfield_gc(p64, p35, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+644: jump(p57, p64, descr=TargetToken(140248750874544)) | |
+671: --end of the loop-- | |
[f46512d9236] jit-log-opt-bridge} | |
[f4651a6dc35] {jit-log-opt-loop | |
# Loop 3 ((let ([conf-set (let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))]) (if conf-set (conf-set-next conf-set i) #f))) : entry bridge with 51 ops | |
[p0, p1] | |
debug_merge_point(0, 0, '(let ([conf-set (let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))]) (if conf-set (conf-set-next conf-set i) #f))') | |
+83: guard_not_invalidated(descr=<Guard0x153a2c0>) [p0, p1] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))') | |
debug_merge_point(0, 0, '(+ conf 1)') | |
+83: guard_class(p0, 9625312, descr=<Guard0x1552250>) [p0, p1] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize3.inst__vals_1 32>) | |
+106: guard_class(p3, ConstClass(W_Fixnum), descr=<Guard0x15521e0>) [p0, p3, p1] | |
+118: i5 = getfield_gc_pure(p3, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+122: i7 = int_add_ovf(i5, 1) | |
guard_no_overflow(descr=<Guard0x1552170>) [p0, i5, i7, p3, p1] | |
+135: p8 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(vector-ref state AppRand1_fresh_213)') | |
+139: p9 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize3.inst__vals_0 24>) | |
+143: guard_nonnull_class(p9, ConstClass(W_Vector), descr=<Guard0x1552100>) [p9, p0, i7, None, p1] | |
+161: i13 = int_ge(i7, 0) | |
guard_true(i13, descr=<Guard0x1552090>) [i7, p9, p0, None, None, p1] | |
+171: i14 = getfield_gc_pure(p9, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+175: i15 = int_lt(i7, i14) | |
guard_true(i15, descr=<Guard0x1552020>) [p9, p0, i7, None, p1] | |
+184: p16 = getfield_gc(p9, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+188: guard_class(p16, 9641744, descr=<Guard0x153bf30>) [i7, p16, p0, p9, None, None, p1] | |
+200: p18 = getfield_gc(p9, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+204: p19 = getarrayitem_gc(p18, i7, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(if conf-set (conf-set-next conf-set i) #f)') | |
+209: i21 = instance_ptr_eq(p19, ConstPtr(ptr20)) | |
guard_false(i21, descr=<Guard0x153bec0>) [p1, p8, p0, p19, None, None, None] | |
debug_merge_point(0, 0, '(conf-set-next conf-set i)') | |
+222: p22 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+226: guard_class(p22, 9625432, descr=<Guard0x153be50>) [p1, p22, p8, p0, p19, None, None, None] | |
+238: p24 = getfield_gc_pure(p22, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+242: p25 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize3.inst__vals_2 40>) | |
+246: guard_value(p24, ConstPtr(ptr26), descr=<Guard0x153bde0>) [p24, p1, p25, p8, p0, p19, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+265: guard_class(p25, ConstClass(W_Fixnum), descr=<Guard0x153bd70>) [p25, None, None, None, p19, None, None, p1] | |
+277: i28 = getfield_gc_pure(p25, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+281: i30 = int_add_ovf(i28, 5) | |
guard_no_overflow(descr=<Guard0x153bd00>) [i28, i30, p25, None, None, p19, None, None, p1] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p32 = new_with_vtable(9625432) | |
p34 = new_with_vtable(ConstClass(W_Fixnum)) | |
p36 = new_with_vtable(9625672) | |
+380: setfield_gc(p32, ConstPtr(ptr37), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+394: setfield_gc(p36, ConstPtr(ptr38), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+408: setfield_gc(p36, ConstPtr(ptr37), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+422: setfield_gc(p34, i30, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+426: setfield_gc(p32, p34, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+430: setfield_gc(p36, p25, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+434: setfield_gc(p32, p36, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+438: setfield_gc(p36, p19, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+442: jump(p32, p1, descr=TargetToken(140248750874544)) | |
+462: --end of the loop-- | |
[f4651aa61b0] jit-log-opt-loop} | |
[f4652b66b1b] {jit-log-opt-bridge | |
# bridge out of Guard 0x15013d0 with 70 ops | |
[p0, p1] | |
+46: guard_not_invalidated(descr=<Guard0x1614020>) [p0, p1] | |
debug_merge_point(0, 0, '(let ([state* (vector-ref states* state-num)]) (let ([conf-set* (conf-set-get* state* state-num conf)]) (let ([if_fresh_202 (let ([AppRand0_fresh_201 (conf-set-next conf-set* i)]) (not AppRand0_fresh_201))]) (if if_fresh_202 (conf-set-adjoin state* conf-set* conf i) #f)) #t))') | |
debug_merge_point(0, 0, '(vector-ref states* state-num)') | |
+46: guard_class(p1, 9625432, descr=<Guard0x1615a60>) [p1, p0] | |
+58: p3 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+62: guard_class(p3, 9625128, descr=<Guard0x16159f0>) [p1, p3, p0] | |
+75: p5 = getfield_gc_pure(p3, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+79: p7 = getarrayitem_gc_pure(p5, 1, descr=<ArrayP 8>) | |
+83: p9 = getarrayitem_gc_pure(p5, 2, descr=<ArrayP 8>) | |
+87: guard_nonnull_class(p7, ConstClass(W_Vector), descr=<Guard0x1615980>) [p7, p1, p9, p0] | |
+107: guard_nonnull_class(p9, ConstClass(W_Fixnum), descr=<Guard0x1615910>) [p7, p9, p1, None, p0] | |
+126: i13 = getfield_gc_pure(p9, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+130: i15 = int_ge(i13, 0) | |
guard_true(i15, descr=<Guard0x16158a0>) [i13, p9, p7, p1, None, p0] | |
+140: i16 = getfield_gc_pure(p7, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+145: i17 = int_lt(i13, i16) | |
guard_true(i17, descr=<Guard0x1615830>) [p9, p7, p1, None, p0] | |
+154: p18 = getfield_gc(p7, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+159: guard_class(p18, 9641744, descr=<Guard0x16157c0>) [i13, p18, p1, p7, None, p0] | |
+172: p20 = getfield_gc(p7, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+177: p21 = getarrayitem_gc(p20, i13, descr=<ArrayP 8>) | |
+182: p22 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([conf-set* (conf-set-get* state* state-num conf)]) (let ([if_fresh_202 (let ([AppRand0_fresh_201 (conf-set-next conf-set* i)]) (not AppRand0_fresh_201))]) (if if_fresh_202 (conf-set-adjoin state* conf-set* conf i) #f)) #t)') | |
debug_merge_point(0, 0, '(conf-set-get* state* state-num conf)') | |
+186: p23 = getfield_gc_pure(p3, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+190: guard_class(p23, 9625552, descr=<Guard0x1615750>) [p23, p22, p21, p1, None, p0] | |
+203: p25 = getfield_gc_pure(p23, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_3 48>) | |
+207: p27 = getarrayitem_gc_pure(p5, 3, descr=<ArrayP 8>) | |
+211: guard_class(p25, 9632160, descr=<Guard0x16156e0>) [p25, p27, p22, p21, p1, p9, p0] | |
+223: p29 = getfield_gc_pure(p25, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+227: guard_value(p29, ConstPtr(ptr30), descr=<Guard0x1615670>) [p29, p25, p27, p22, p21, p1, p9, p0] | |
+246: p31 = getfield_gc_pure(p25, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+250: i32 = instance_ptr_eq(p1, p31) | |
guard_false(i32, descr=<Guard0x1615600>) [p31, p1, p27, p22, p21, None, p9, p0] | |
+259: i33 = instance_ptr_eq(p3, p31) | |
guard_false(i33, descr=<Guard0x1615590>) [p31, p1, p27, p22, p21, None, p9, p0] | |
+268: p34 = getfield_gc_pure(p31, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([conf-set (conf-set-get state conf)]) (if conf-set conf-set (let ([conf-set (let ([AppRand0_fresh_220 (+ state-num 6)]) (make-vector AppRand0_fresh_220 #f))]) (vector-set! conf-set 1 -3) (vector-set! conf-set 2 -1) (vector-set! conf-set 3 -1) (vector-set! conf-set 4 -1) (let ([AppRand1_fresh_219 (+ conf 1)]) (vector-set! state AppRand1_fresh_219 conf-set)) conf-set)))') | |
debug_merge_point(0, 0, '(conf-set-get state conf)') | |
+272: guard_class(p31, 9625432, descr=<Guard0x1615520>) [p31, p34, p27, p22, p21, p1, p9, p0] | |
+286: p36 = getfield_gc_pure(p31, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+290: guard_value(p36, ConstPtr(ptr37), descr=<Guard0x16154b0>) [p36, p31, p34, p27, p22, p21, p1, p9, p0] | |
+309: p38 = getfield_gc_pure(p31, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+313: i40 = instance_ptr_eq(p38, ConstPtr(ptr39)) | |
guard_false(i40, descr=<Guard0x1615440>) [p31, None, p34, p27, p22, p21, p1, p9, p0] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_221 (+ conf 1)]) (vector-ref state AppRand1_fresh_221))') | |
p42 = new_with_vtable(9625672) | |
p44 = new_with_vtable(9629776) | |
p46 = new_with_vtable(9625312) | |
+428: setfield_gc(p42, ConstPtr(ptr47), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+442: setfield_gc(p42, ConstPtr(ptr39), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p49 = new_with_vtable(9629776) | |
p51 = new_with_vtable(9625432) | |
+478: setfield_gc(p46, p34, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+482: setfield_gc(p46, p31, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+486: setfield_gc(p44, p46, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+490: setfield_gc(p44, ConstPtr(ptr52), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+504: setfield_gc(p49, p0, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+508: setfield_gc(p51, p22, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+512: setfield_gc(p42, p27, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+516: setfield_gc(p51, p1, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+527: setfield_gc(p42, p21, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+531: setfield_gc(p46, p9, descr=<FieldP pycket.small_list.ConsEnvSize3.inst__vals_1 32>) | |
+535: setfield_gc(p46, p27, descr=<FieldP pycket.small_list.ConsEnvSize3.inst__vals_2 40>) | |
+539: setfield_gc(p46, p21, descr=<FieldP pycket.small_list.ConsEnvSize3.inst__vals_0 24>) | |
+543: setfield_gc(p49, p51, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+547: setfield_gc(p49, ConstPtr(ptr53), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+561: setfield_gc(p51, p21, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+565: setfield_gc(p44, p49, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+569: jump(p42, p44, descr=TargetToken(140248750869264)) | |
+596: --end of the loop-- | |
[f4652bc2ace] jit-log-opt-bridge} | |
[f465408f905] {jit-log-opt-bridge | |
# bridge out of Guard 0x1521280 with 156 ops | |
[p0, p1, p2] | |
+46: guard_value(p0, ConstPtr(ptr3), descr=<Guard0x136a410>) [p0, p1, p2] | |
+65: i4 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+69: guard_value(i4, 0, descr=<Guard0x136a3a0>) [i4, p1, p2] | |
+79: guard_class(p1, 9629776, descr=<Guard0x136a330>) [p1, p2] | |
+91: p7 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+95: p8 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+99: p9 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+103: guard_not_invalidated(descr=<Guard0x136a2c0>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2)))') | |
+103: i11 = instance_ptr_eq(p2, ConstPtr(ptr10)) | |
guard_false(i11, descr=<Guard0x136a1e0>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2))') | |
debug_merge_point(0, 0, '(conf-set-head ender-set)') | |
+116: guard_class(p7, 9625432, descr=<Guard0x1369de0>) [p7, p9, p8, None, p2] | |
+128: p14 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+132: guard_class(p14, 9625672, descr=<Guard0x1369d70>) [p14, p9, p8, p7, p2] | |
+144: p16 = getfield_gc_pure(p14, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+148: guard_class(p16, 9625128, descr=<Guard0x1369d00>) [p16, p9, p8, p7, p2] | |
+162: p18 = getfield_gc_pure(p16, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+166: p20 = getarrayitem_gc_pure(p18, 11, descr=<ArrayP 8>) | |
+171: guard_value(p20, ConstPtr(ptr21), descr=<Guard0x1369c90>) [p20, p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(vector-ref conf-set 2)') | |
+190: guard_nonnull_class(p2, ConstClass(W_Vector), descr=<Guard0x1369670>) [p2, p9, p8, p7, None] | |
+208: i23 = getfield_gc_pure(p2, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+212: i25 = int_lt(2, i23) | |
guard_true(i25, descr=<Guard0x1369590>) [p2, p9, p8, p7, None] | |
+222: p26 = getfield_gc(p2, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+226: guard_class(p26, 9641744, descr=<Guard0x13694b0>) [p26, p2, p9, p8, p7, None] | |
+240: p28 = getfield_gc(p2, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+244: p30 = getarrayitem_gc(p28, 2, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)') | |
+248: p32 = getarrayitem_gc_pure(p18, 0, descr=<ArrayP 8>) | |
+253: p34 = getarrayitem_gc_pure(p18, 2, descr=<ArrayP 8>) | |
+258: p36 = getarrayitem_gc_pure(p18, 3, descr=<ArrayP 8>) | |
+263: p38 = getarrayitem_gc_pure(p18, 4, descr=<ArrayP 8>) | |
+268: p39 = getfield_gc_pure(p14, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+272: p41 = getarrayitem_gc_pure(p18, 5, descr=<ArrayP 8>) | |
+277: p43 = getarrayitem_gc_pure(p18, 6, descr=<ArrayP 8>) | |
+289: p45 = getarrayitem_gc_pure(p18, 1, descr=<ArrayP 8>) | |
+301: p47 = getarrayitem_gc_pure(p18, 7, descr=<ArrayP 8>) | |
+313: p49 = getarrayitem_gc_pure(p18, 8, descr=<ArrayP 8>) | |
+325: p51 = getarrayitem_gc_pure(p18, 9, descr=<ArrayP 8>) | |
+337: p53 = getarrayitem_gc_pure(p18, 10, descr=<ArrayP 8>) | |
+349: p55 = getarrayitem_gc_pure(p18, 12, descr=<ArrayP 8>) | |
+361: p57 = getarrayitem_gc_pure(p18, 13, descr=<ArrayP 8>) | |
+373: p58 = getfield_gc_pure(p7, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+377: p59 = getfield_gc_pure(p14, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
debug_merge_point(0, 0, '(let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2))))') | |
debug_merge_point(0, 0, '(>= k 0)') | |
+381: guard_nonnull_class(p30, ConstClass(W_Fixnum), descr=<Guard0x1368aa0>) [p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+400: i61 = getfield_gc_pure(p30, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+404: i63 = int_ge(i61, 0) | |
guard_true(i63, descr=<Guard0x13689c0>) [p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
debug_merge_point(0, 0, '(if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))') | |
debug_merge_point(0, 0, '(let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2))))') | |
debug_merge_point(0, 0, '(let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))') | |
debug_merge_point(0, 0, '(>= k i)') | |
+414: guard_nonnull_class(p49, ConstClass(W_Fixnum), descr=<Guard0x1368100>) [p49, p30, None, p39, p41, p45, p47, None, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+448: i65 = getfield_gc_pure(p49, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+460: i66 = int_ge(i61, i65) | |
guard_true(i66, descr=<Guard0x1368020>) [p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
debug_merge_point(0, 0, '(if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f)') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i))') | |
debug_merge_point(0, 0, '(vector-ref states k)') | |
+469: guard_nonnull_class(p38, ConstClass(W_Vector), descr=<Guard0x13018a0>) [p38, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, None, p58, p32, p9, p8, None, p2] | |
+487: i68 = getfield_gc_pure(p38, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+491: i69 = int_lt(i61, i68) | |
guard_true(i69, descr=<Guard0x1301520>) [p30, p38, None, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, None, p58, p32, p9, p8, None, p2] | |
+500: p70 = getfield_gc(p38, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+504: guard_class(p70, 9641744, descr=<Guard0x13014b0>) [i61, p70, p38, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, None, p58, p32, p9, p8, None, p2] | |
+518: p72 = getfield_gc(p38, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+522: p73 = getarrayitem_gc(p72, i61, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(conf-set-member? AppRand0_fresh_120 prev i)') | |
+534: guard_class(p41, 9632160, descr=<Guard0x1300f70>) [p41, p73, p30, p39, None, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+546: p75 = getfield_gc_pure(p41, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+550: guard_value(p75, ConstPtr(ptr76), descr=<Guard0x1300f00>) [p75, p41, p73, p30, p39, None, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+569: p77 = getfield_gc_pure(p41, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+573: i78 = instance_ptr_eq(p8, p77) | |
guard_false(i78, descr=<Guard0x1300e20>) [p77, p73, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+582: p79 = getfield_gc_pure(p77, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([conf-set (let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))]) (if conf-set (conf-set-next conf-set i) #f))') | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))') | |
debug_merge_point(0, 0, '(+ conf 1)') | |
+586: guard_class(p43, ConstClass(W_Fixnum), descr=<Guard0x1300870>) [p43, p79, p77, p73, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, None, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+612: i81 = getfield_gc_pure(p43, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+616: i83 = int_add_ovf(i81, 1) | |
guard_no_overflow(descr=<Guard0x1300800>) [i81, i83, p79, p77, p73, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
debug_merge_point(0, 0, '(vector-ref state AppRand1_fresh_213)') | |
+633: guard_nonnull_class(p73, ConstClass(W_Vector), descr=<Guard0x13003a0>) [p73, i83, p79, p77, None, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+652: i86 = int_ge(i83, 0) | |
guard_true(i86, descr=<Guard0x13001e0>) [i83, p73, None, p79, p77, None, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+662: i87 = getfield_gc_pure(p73, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+673: i88 = int_lt(i83, i87) | |
guard_true(i88, descr=<Guard0x1300170>) [p73, i83, p79, p77, None, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+682: p89 = getfield_gc(p73, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+686: guard_class(p89, 9641744, descr=<Guard0x1300100>) [i83, p89, p73, None, p79, p77, None, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+698: p91 = getfield_gc(p73, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+702: p92 = getarrayitem_gc(p91, i83, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(if conf-set (conf-set-next conf-set i) #f)') | |
+714: i94 = instance_ptr_eq(p92, ConstPtr(ptr93)) | |
guard_false(i94, descr=<Guard0x15fbbb0>) [p92, None, p79, p77, p73, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
debug_merge_point(0, 0, '(conf-set-next conf-set i)') | |
+727: guard_class(p77, 9625432, descr=<Guard0x11bdc20>) [p77, p92, None, p79, None, p73, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
+739: p96 = getfield_gc_pure(p77, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+743: guard_value(p96, ConstPtr(ptr97), descr=<Guard0x11bdbb0>) [p96, p92, None, p79, p77, p73, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+762: i99 = int_add_ovf(i65, 5) | |
guard_no_overflow(descr=<Guard0x11bcc60>) [i65, i99, p92, None, None, None, None, p30, p39, p41, p45, p47, p49, p51, p53, p55, p57, p43, p59, p34, p36, p38, p58, p32, p9, p8, None, p2] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p101 = new_with_vtable(9625432) | |
p103 = new_with_vtable(ConstClass(W_Fixnum)) | |
p105 = new_with_vtable(9625672) | |
+878: setfield_gc(p101, ConstPtr(ptr106), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+892: setfield_gc(p105, ConstPtr(ptr107), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p109 = new_with_vtable(9629776) | |
p111 = new_with_vtable(9625672) | |
+929: setfield_gc(p105, ConstPtr(ptr106), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+943: setfield_gc(p105, p49, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
p113 = new_with_vtable(9625128) | |
+966: setfield_gc(p111, p8, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p115 = new_array(17, descr=<ArrayP 8>) | |
p117 = new_with_vtable(9632160) | |
+1018: setfield_gc(p101, p105, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+1037: setfield_gc(p113, p8, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+1041: setfield_gc(p105, p92, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+1052: setfield_gc(p113, p8, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+1056: setfield_gc(p103, i99, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+1067: setfield_gc(p101, p103, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+1078: setfield_gc(p111, p59, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+1089: setfield_gc(p111, p113, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+1093: setfield_gc(p111, p30, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+1097: setarrayitem_gc(p115, 0, p32, descr=<ArrayP 8>) | |
+1101: setfield_gc(p117, ConstPtr(ptr119), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+1115: setfield_gc(p117, p113, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+1119: setarrayitem_gc(p115, 1, p117, descr=<ArrayP 8>) | |
+1123: setarrayitem_gc(p115, 2, p34, descr=<ArrayP 8>) | |
+1127: setarrayitem_gc(p115, 3, p36, descr=<ArrayP 8>) | |
+1131: setarrayitem_gc(p115, 4, p38, descr=<ArrayP 8>) | |
+1142: setarrayitem_gc(p115, 5, p39, descr=<ArrayP 8>) | |
+1153: setarrayitem_gc(p115, 6, p41, descr=<ArrayP 8>) | |
+1164: setarrayitem_gc(p115, 7, p43, descr=<ArrayP 8>) | |
+1175: setarrayitem_gc(p115, 8, p45, descr=<ArrayP 8>) | |
+1186: setarrayitem_gc(p115, 9, p47, descr=<ArrayP 8>) | |
+1197: setarrayitem_gc(p115, 10, p49, descr=<ArrayP 8>) | |
+1201: setarrayitem_gc(p115, 11, p51, descr=<ArrayP 8>) | |
+1212: setarrayitem_gc(p115, 12, p53, descr=<ArrayP 8>) | |
+1223: setarrayitem_gc(p115, 13, p55, descr=<ArrayP 8>) | |
+1234: setarrayitem_gc(p115, 14, p2, descr=<ArrayP 8>) | |
+1248: setarrayitem_gc(p115, 15, p57, descr=<ArrayP 8>) | |
+1262: setarrayitem_gc(p115, 16, p58, descr=<ArrayP 8>) | |
+1276: setfield_gc(p113, p115, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+1280: setfield_gc(p109, p111, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+1291: setfield_gc(p109, ConstPtr(ptr136), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+1305: setfield_gc(p109, p9, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+1316: jump(p101, p109, descr=TargetToken(140248750874544)) | |
+1343: --end of the loop-- | |
[f46541741bf] jit-log-opt-bridge} | |
[f46549a0954] {jit-log-opt-bridge | |
# bridge out of Guard 0x149b8a0 with 47 ops | |
[p0, p1, p2] | |
+46: guard_value(p0, ConstPtr(ptr3), descr=<Guard0x136a560>) [p0, p1, p2] | |
+65: i4 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+69: guard_value(i4, 0, descr=<Guard0x136c560>) [i4, p1, p2] | |
+79: guard_class(p1, 9629776, descr=<Guard0x136c4f0>) [p1, p2] | |
+91: p7 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+95: p8 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+99: p9 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+103: guard_not_invalidated(descr=<Guard0x136c480>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))') | |
+103: i11 = instance_ptr_eq(p2, ConstPtr(ptr10)) | |
guard_true(i11, descr=<Guard0x136c410>) [p9, p7, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+116: guard_class(p7, 9625672, descr=<Guard0x136c3a0>) [p7, p9, None, None, None] | |
+128: p14 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+132: guard_class(p14, 9625128, descr=<Guard0x136c330>) [p7, p14, p9, None, None, None] | |
+144: p16 = getfield_gc_pure(p14, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+148: p18 = getarrayitem_gc_pure(p16, 3, descr=<ArrayP 8>) | |
+152: p20 = getarrayitem_gc_pure(p16, 14, descr=<ArrayP 8>) | |
+159: p21 = getfield_gc_pure(p7, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+163: guard_value(p18, ConstPtr(ptr22), descr=<Guard0x136c100>) [p18, p7, p21, p20, p9, None, None, None] | |
+182: p23 = getfield_gc_pure(p14, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+186: i25 = instance_ptr_eq(p23, ConstPtr(ptr24)) | |
guard_false(i25, descr=<Guard0x136c020>) [p14, p21, p20, p9, None, p7, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+205: guard_class(p21, ConstClass(W_Fixnum), descr=<Guard0x136bd70>) [p21, None, p20, p9, None, p7, None] | |
+218: i27 = getfield_gc_pure(p21, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+222: i29 = int_add_ovf(i27, 5) | |
guard_no_overflow(descr=<Guard0x136bbb0>) [i27, i29, p21, p20, p9, None, p7, None] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p31 = new_with_vtable(9625432) | |
p33 = new_with_vtable(ConstClass(W_Fixnum)) | |
p35 = new_with_vtable(9625672) | |
+331: setfield_gc(p31, ConstPtr(ptr36), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+345: setfield_gc(p35, ConstPtr(ptr24), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p38 = new_with_vtable(9629776) | |
+371: setfield_gc(p35, ConstPtr(ptr36), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+385: setfield_gc(p33, i29, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+389: setfield_gc(p31, p33, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+393: setfield_gc(p35, p21, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+397: setfield_gc(p31, p35, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+401: setfield_gc(p35, p20, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+405: setfield_gc(p38, p7, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+417: setfield_gc(p38, ConstPtr(ptr39), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+432: setfield_gc(p38, p9, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+437: jump(p31, p38, descr=TargetToken(140248750874544)) | |
+464: --end of the loop-- | |
[f46549e242f] jit-log-opt-bridge} | |
[f46555a103b] {jit-log-opt-bridge | |
# bridge out of Guard 0x136a560 with 113 ops | |
[p0, p1, p2] | |
+46: guard_value(p0, ConstPtr(ptr3), descr=<Guard0x136c640>) [p0, p1, p2] | |
+65: i4 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+69: guard_value(i4, 0, descr=<Guard0x14359f0>) [i4, p1, p2] | |
+79: guard_class(p1, 9629776, descr=<Guard0x1435980>) [p1, p2] | |
+91: p7 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+95: p8 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+99: p9 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+103: guard_not_invalidated(descr=<Guard0x1435910>) [p9, p8, p7, p2] | |
debug_merge_point(0, 0, '(loop2 AppRand0_fresh_131 l2)') | |
+103: guard_class(p7, 9625672, descr=<Guard0x14358a0>) [p9, p7, p8, None, p2] | |
+115: p12 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+119: guard_class(p12, 9625128, descr=<Guard0x1435830>) [p9, p12, p8, p7, p2] | |
+131: p14 = getfield_gc_pure(p12, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+135: p16 = getarrayitem_gc_pure(p14, 1, descr=<ArrayP 8>) | |
+139: p17 = getfield_gc_pure(p7, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+143: guard_class(p16, 9632160, descr=<Guard0x14357c0>) [p16, p9, p7, p17, None, None, p2] | |
+157: p19 = getfield_gc_pure(p16, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+161: guard_value(p19, ConstPtr(ptr20), descr=<Guard0x1435750>) [p19, p9, p7, p16, p17, None, None, p2] | |
+180: p21 = getfield_gc_pure(p16, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+184: i22 = instance_ptr_eq(p12, p21) | |
guard_true(i22, descr=<Guard0x14356e0>) [p21, p9, p12, p17, None, None, p2] | |
+193: p23 = getfield_gc_pure(p21, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2))))') | |
debug_merge_point(0, 0, '(>= k 0)') | |
+197: guard_nonnull_class(p2, ConstClass(W_Fixnum), descr=<Guard0x1435670>) [p2, p23, p9, p12, p17, None, None, None] | |
+215: i25 = getfield_gc_pure(p2, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+219: i27 = int_ge(i25, 0) | |
guard_true(i27, descr=<Guard0x1435600>) [p23, p9, p12, p17, None, None, p2] | |
debug_merge_point(0, 0, '(if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))') | |
debug_merge_point(0, 0, '(let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2))))') | |
debug_merge_point(0, 0, '(let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))') | |
debug_merge_point(0, 0, '(>= k i)') | |
+229: p29 = getarrayitem_gc_pure(p14, 10, descr=<ArrayP 8>) | |
+233: guard_nonnull_class(p29, ConstClass(W_Fixnum), descr=<Guard0x1435590>) [p29, p2, p23, p9, p12, p17, None, None, None] | |
+252: i31 = getfield_gc_pure(p29, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+256: i32 = int_ge(i25, i31) | |
guard_true(i32, descr=<Guard0x1435520>) [p23, p9, p12, p17, None, None, p2] | |
debug_merge_point(0, 0, '(if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f)') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i))') | |
debug_merge_point(0, 0, '(vector-ref states k)') | |
+265: p34 = getarrayitem_gc_pure(p14, 4, descr=<ArrayP 8>) | |
+269: guard_nonnull_class(p34, ConstClass(W_Vector), descr=<Guard0x14354b0>) [p34, p23, p9, p12, p17, None, None, p2] | |
+288: i36 = getfield_gc_pure(p34, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+292: i37 = int_lt(i25, i36) | |
guard_true(i37, descr=<Guard0x1435440>) [p2, p34, p23, p9, p12, p17, None, None, None] | |
+301: p38 = getfield_gc(p34, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+305: guard_class(p38, 9641744, descr=<Guard0x14353d0>) [i25, p38, p34, p23, p9, p12, p17, None, None, p2] | |
+317: p40 = getfield_gc(p34, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+321: p41 = getarrayitem_gc(p40, i25, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(conf-set-member? AppRand0_fresh_120 prev i)') | |
+326: p43 = getarrayitem_gc_pure(p14, 6, descr=<ArrayP 8>) | |
+330: p45 = getarrayitem_gc_pure(p14, 7, descr=<ArrayP 8>) | |
+334: guard_class(p43, 9632160, descr=<Guard0x1435360>) [p43, p45, p41, p29, p23, p9, p12, p17, None, None, p2] | |
+346: p47 = getfield_gc_pure(p43, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+350: guard_value(p47, ConstPtr(ptr48), descr=<Guard0x1435280>) [p47, p43, p45, p41, p29, p23, p9, p12, p17, None, None, p2] | |
+369: p49 = getfield_gc_pure(p43, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+373: i50 = instance_ptr_eq(p12, p49) | |
guard_false(i50, descr=<Guard0x14351a0>) [p49, p12, p45, p41, p29, p23, p9, None, p17, None, None, p2] | |
+382: p51 = getfield_gc_pure(p12, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+386: i52 = instance_ptr_eq(p51, p49) | |
guard_false(i52, descr=<Guard0x1434640>) [p49, p12, p45, p41, p29, p23, p9, None, p17, None, None, p2] | |
+395: p53 = getfield_gc_pure(p49, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([conf-set (let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))]) (if conf-set (conf-set-next conf-set i) #f))') | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))') | |
debug_merge_point(0, 0, '(+ conf 1)') | |
+399: guard_class(p45, ConstClass(W_Fixnum), descr=<Guard0x14345d0>) [p45, p49, p53, None, p41, p29, p23, p9, p12, p17, None, None, p2] | |
+411: i55 = getfield_gc_pure(p45, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+415: i57 = int_add_ovf(i55, 1) | |
guard_no_overflow(descr=<Guard0x1434560>) [i55, i57, p49, p53, p45, p41, p29, p23, p9, p12, p17, None, None, p2] | |
debug_merge_point(0, 0, '(vector-ref state AppRand1_fresh_213)') | |
+428: guard_nonnull_class(p41, ConstClass(W_Vector), descr=<Guard0x14344f0>) [p41, i57, p49, p53, p45, None, p29, p23, p9, p12, p17, None, None, p2] | |
+447: i60 = int_ge(i57, 0) | |
guard_true(i60, descr=<Guard0x1434480>) [i57, p41, None, p49, p53, p45, None, p29, p23, p9, p12, p17, None, None, p2] | |
+457: i61 = getfield_gc_pure(p41, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+461: i62 = int_lt(i57, i61) | |
guard_true(i62, descr=<Guard0x1434410>) [p41, i57, p49, p53, p45, None, p29, p23, p9, p12, p17, None, None, p2] | |
+470: p63 = getfield_gc(p41, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+474: guard_class(p63, 9641744, descr=<Guard0x14343a0>) [i57, p63, p41, None, p49, p53, p45, None, p29, p23, p9, p12, p17, None, None, p2] | |
+486: p65 = getfield_gc(p41, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+490: p66 = getarrayitem_gc(p65, i57, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(if conf-set (conf-set-next conf-set i) #f)') | |
+502: i68 = instance_ptr_eq(p66, ConstPtr(ptr67)) | |
guard_false(i68, descr=<Guard0x1434330>) [p66, None, p49, p53, p45, p41, p29, p23, p9, p12, p17, None, None, p2] | |
debug_merge_point(0, 0, '(conf-set-next conf-set i)') | |
+515: guard_class(p49, 9625432, descr=<Guard0x14342c0>) [p49, p66, None, None, p53, p45, p41, p29, p23, p9, p12, p17, None, None, p2] | |
+528: p70 = getfield_gc_pure(p49, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+532: guard_value(p70, ConstPtr(ptr71), descr=<Guard0x1434250>) [p70, p66, None, p49, p53, p45, p41, p29, p23, p9, p12, p17, None, None, p2] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+551: i73 = int_add_ovf(i31, 5) | |
guard_no_overflow(descr=<Guard0x14341e0>) [i31, i73, p66, None, None, None, None, None, p29, p23, p9, p12, p17, None, None, p2] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p75 = new_with_vtable(9625432) | |
p77 = new_with_vtable(ConstClass(W_Fixnum)) | |
p79 = new_with_vtable(9625672) | |
+653: setfield_gc(p75, ConstPtr(ptr80), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+667: setfield_gc(p79, ConstPtr(ptr81), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p83 = new_with_vtable(9629776) | |
p85 = new_with_vtable(9625672) | |
+703: setfield_gc(p79, ConstPtr(ptr80), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+717: setfield_gc(p79, p29, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+721: setfield_gc(p75, p79, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+725: setfield_gc(p79, p66, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+729: setfield_gc(p85, p23, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+733: setfield_gc(p77, i73, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+737: setfield_gc(p75, p77, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+741: setfield_gc(p85, p17, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+745: setfield_gc(p85, p12, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+749: setfield_gc(p85, p2, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+753: setfield_gc(p83, p85, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+757: setfield_gc(p83, ConstPtr(ptr86), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+771: setfield_gc(p83, p9, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+782: jump(p75, p83, descr=TargetToken(140248750874544)) | |
+809: --end of the loop-- | |
[f46556228b4] jit-log-opt-bridge} | |
[f4655db2728] {jit-log-opt-loop | |
# Loop 4 ((let ([name (vector-ref names conf)]) (if name (let ([if_fresh_119 (< conf nb-nts)]) (if if_fresh_119 (let ([AppRand0_fresh_117 (let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))]) (list AppRand0_fresh_117)) (let ([AppRand0_fresh_118 (list name)]) (list AppRand0_fresh_118)))) (let ([prev (- conf 1)]) (let ([AppRand0_fresh_140 (let ([AppRand1_fresh_139 (vector-ref steps prev)]) (vector-ref enders AppRand1_fresh_139))]) ((rec (lambda (l1 l2) (let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)))) AppRand0_fresh_140 '())))))) : loop with 96 ops | |
[p0, p1] | |
+83: label(p0, p1, descr=TargetToken(21994160)) | |
+83: guard_not_invalidated(descr=<Guard0x1440cd0>) [p0, p1] | |
debug_merge_point(0, 0, '(vector-ref names conf)') | |
+83: guard_class(p0, 9625128, descr=<Guard0x1441520>) [p0, p1] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+106: p5 = getarrayitem_gc_pure(p3, 5, descr=<ArrayP 8>) | |
+110: p7 = getarrayitem_gc_pure(p3, 0, descr=<ArrayP 8>) | |
+114: guard_nonnull_class(p5, ConstClass(W_Vector), descr=<Guard0x14414b0>) [p5, p0, p7, p1] | |
+132: guard_nonnull_class(p7, ConstClass(W_Fixnum), descr=<Guard0x1441440>) [p5, p7, p0, None, p1] | |
+150: i11 = getfield_gc_pure(p7, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+154: i13 = int_ge(i11, 0) | |
guard_true(i13, descr=<Guard0x14413d0>) [i11, p7, p5, p0, None, p1] | |
+164: i14 = getfield_gc_pure(p5, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+168: i15 = int_lt(i11, i14) | |
guard_true(i15, descr=<Guard0x1441360>) [p7, p5, p0, None, p1] | |
+177: p16 = getfield_gc(p5, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+181: guard_class(p16, 9641744, descr=<Guard0x14412f0>) [i11, p16, p0, p5, None, p1] | |
+193: p18 = getfield_gc(p5, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+197: p19 = getarrayitem_gc(p18, i11, descr=<ArrayP 8>) | |
+202: p20 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(if name (let ([if_fresh_119 (< conf nb-nts)]) (if if_fresh_119 (let ([AppRand0_fresh_117 (let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))]) (list AppRand0_fresh_117)) (let ([AppRand0_fresh_118 (list name)]) (list AppRand0_fresh_118)))) (let ([prev (- conf 1)]) (let ([AppRand0_fresh_140 (let ([AppRand1_fresh_139 (vector-ref steps prev)]) (vector-ref enders AppRand1_fresh_139))]) ((rec (lambda (l1 l2) (let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)))) AppRand0_fresh_140 '()))))') | |
+206: i22 = instance_ptr_eq(p19, ConstPtr(ptr21)) | |
guard_false(i22, descr=<Guard0x1441280>) [p1, p0, p20, p19, None, None] | |
debug_merge_point(0, 0, '(let ([if_fresh_119 (< conf nb-nts)]) (if if_fresh_119 (let ([AppRand0_fresh_117 (let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))]) (list AppRand0_fresh_117)) (let ([AppRand0_fresh_118 (list name)]) (list AppRand0_fresh_118))))') | |
debug_merge_point(0, 0, '(< conf nb-nts)') | |
+219: p24 = getarrayitem_gc_pure(p3, 8, descr=<ArrayP 8>) | |
+223: guard_nonnull_class(p24, ConstClass(W_Fixnum), descr=<Guard0x1441210>) [p24, p7, p0, p20, p19, None, p1] | |
+242: i26 = getfield_gc_pure(p24, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+246: i27 = int_lt(i11, i26) | |
guard_false(i27, descr=<Guard0x14411a0>) [p0, p20, p19, None, p1] | |
debug_merge_point(0, 0, '(if if_fresh_119 (let ([AppRand0_fresh_117 (let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))]) (list AppRand0_fresh_117)) (let ([AppRand0_fresh_118 (list name)]) (list AppRand0_fresh_118)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_118 (list name)]) (list AppRand0_fresh_118))') | |
debug_merge_point(0, 0, '(list name)') | |
+255: guard_nonnull_class(p19, 9623144, descr=<Guard0x1441130>) [p19, p0, p20, None, None, p1] | |
debug_merge_point(0, 0, '(list AppRand0_fresh_118)') | |
+273: guard_nonnull_class(p1, 9629776, descr=<Guard0x14410c0>) [p1, None, None, p19, None, None] | |
+298: p30 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+302: guard_value(p30, ConstPtr(ptr31), descr=<Guard0x1441050>) [p30, p1, None, None, p19, None, None] | |
+321: i32 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+325: guard_value(i32, 0, descr=<Guard0x1440fe0>) [i32, p1, None, None, p19, None, None] | |
+335: p34 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+339: p35 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)') | |
+343: guard_class(p34, 9625672, descr=<Guard0x1440f70>) [p34, p35, None, None, p19, None, None] | |
+355: p37 = getfield_gc_pure(p34, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+359: guard_class(p37, 9625128, descr=<Guard0x1440f00>) [p34, p37, p35, None, None, p19, None, None] | |
+371: p39 = getfield_gc_pure(p37, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+375: p41 = getarrayitem_gc_pure(p39, 11, descr=<ArrayP 8>) | |
+379: p42 = getfield_gc(p41, descr=<FieldP pycket.values.W_Cell.inst_value 8>) | |
+383: p44 = getarrayitem_gc_pure(p39, 16, descr=<ArrayP 8>) | |
+390: p45 = getfield_gc_pure(p34, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+394: p47 = getarrayitem_gc_pure(p39, 0, descr=<ArrayP 8>) | |
+398: p49 = getarrayitem_gc_pure(p39, 12, descr=<ArrayP 8>) | |
+402: p51 = getarrayitem_gc_pure(p39, 2, descr=<ArrayP 8>) | |
+406: p53 = getarrayitem_gc_pure(p39, 8, descr=<ArrayP 8>) | |
+410: p55 = getarrayitem_gc_pure(p39, 13, descr=<ArrayP 8>) | |
+414: p57 = getarrayitem_gc_pure(p39, 4, descr=<ArrayP 8>) | |
+425: p59 = getarrayitem_gc_pure(p39, 15, descr=<ArrayP 8>) | |
+439: guard_class(p42, 9632160, descr=<Guard0x1440e90>) [p42, p34, p55, p49, p44, p47, p59, p53, p45, p57, p51, p35, None, None, p19, None, None] | |
+451: p61 = getfield_gc_pure(p42, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+455: guard_value(p61, ConstPtr(ptr62), descr=<Guard0x1440e20>) [p61, p34, p42, p55, p49, p44, p47, p59, p53, p45, p57, p51, p35, None, None, p19, None, None] | |
+474: p63 = getfield_gc_pure(p42, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+478: i64 = instance_ptr_eq(p37, p63) | |
guard_false(i64, descr=<Guard0x1440db0>) [p63, p37, p34, p55, p49, p44, p47, p59, p53, p45, p57, p51, p35, None, None, p19, None, None] | |
+487: p65 = getfield_gc_pure(p37, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+491: i66 = instance_ptr_eq(p65, p63) | |
guard_false(i66, descr=<Guard0x1440d40>) [p63, p37, p34, p55, p49, p44, p47, p59, p53, p45, p57, p51, p35, None, None, p19, None, None] | |
+500: p67 = getfield_gc_pure(p63, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([name (vector-ref names conf)]) (if name (let ([if_fresh_119 (< conf nb-nts)]) (if if_fresh_119 (let ([AppRand0_fresh_117 (let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))]) (list AppRand0_fresh_117)) (let ([AppRand0_fresh_118 (list name)]) (list AppRand0_fresh_118)))) (let ([prev (- conf 1)]) (let ([AppRand0_fresh_140 (let ([AppRand1_fresh_139 (vector-ref steps prev)]) (vector-ref enders AppRand1_fresh_139))]) ((rec (lambda (l1 l2) (let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)))) AppRand0_fresh_140 '())))))') | |
p69 = new_with_vtable(9625128) | |
p71 = new_array(9, descr=<ArrayP 8>) | |
p73 = new_with_vtable(9629880) | |
p75 = new_with_vtable(9623144) | |
p77 = new_with_vtable(9623144) | |
+651: setfield_gc(p75, ConstPtr(ptr78), descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+673: setfield_gc(p77, p19, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+684: setfield_gc(p69, p67, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+702: setarrayitem_gc(p71, 0, p44, descr=<ArrayP 8>) | |
+706: setarrayitem_gc(p71, 1, p45, descr=<ArrayP 8>) | |
+710: setarrayitem_gc(p71, 2, p47, descr=<ArrayP 8>) | |
+714: setarrayitem_gc(p71, 3, p49, descr=<ArrayP 8>) | |
+718: setarrayitem_gc(p71, 4, p51, descr=<ArrayP 8>) | |
+722: setarrayitem_gc(p71, 5, p53, descr=<ArrayP 8>) | |
+726: setarrayitem_gc(p71, 6, p55, descr=<ArrayP 8>) | |
+730: setarrayitem_gc(p71, 7, p57, descr=<ArrayP 8>) | |
+734: setarrayitem_gc(p71, 8, p59, descr=<ArrayP 8>) | |
+738: setfield_gc(p69, p71, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+742: setfield_gc(p69, p63, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+746: setfield_gc(p77, ConstPtr(ptr78), descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+761: setfield_gc(p75, p77, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+772: setfield_gc(p73, p75, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+783: setfield_gc(p73, p34, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+794: setfield_gc(p73, ConstPtr(ptr31), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+808: setfield_gc(p73, p35, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+819: setfield_gc(p73, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+827: jump(p69, p73, descr=TargetToken(21994160)) | |
+846: --end of the loop-- | |
[f4655e2debd] jit-log-opt-loop} | |
[f46561b049f] {jit-log-opt-loop | |
# Loop 5 ((let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2))) : entry bridge with 51 ops | |
[p0, p1] | |
debug_merge_point(0, 0, '(let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2))') | |
+83: guard_not_invalidated(descr=<Guard0x144f0c0>) [p0, p1] | |
debug_merge_point(0, 0, '(pair? l1)') | |
+83: guard_class(p0, 9625672, descr=<Guard0x1465520>) [p0, p1] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+106: guard_nonnull_class(p3, 9623288, descr=<Guard0x14654b0>) [p0, p3, p1] | |
+124: p5 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)') | |
debug_merge_point(0, 0, '(let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2)))))') | |
debug_merge_point(0, 0, '(car l1)') | |
+128: i6 = getfield_gc_pure(p3, descr=<FieldS pycket.values.W_UnwrappedFixnumCons.inst__car 8>) | |
debug_merge_point(0, 0, '(let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))') | |
debug_merge_point(0, 0, '(vector-ref states j)') | |
+132: p7 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+136: guard_class(p7, 9625128, descr=<Guard0x1465440>) [p7, p0, p5, i6, p1] | |
+148: p9 = getfield_gc_pure(p7, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+152: p11 = getarrayitem_gc_pure(p9, 4, descr=<ArrayP 8>) | |
+156: p13 = getarrayitem_gc_pure(p9, 0, descr=<ArrayP 8>) | |
+160: guard_nonnull_class(p11, ConstClass(W_Vector), descr=<Guard0x14653d0>) [p11, p13, p0, p5, i6, p1] | |
+178: guard_nonnull_class(p13, ConstClass(W_Fixnum), descr=<Guard0x1465360>) [p11, p13, None, p0, p5, i6, p1] | |
+196: i17 = getfield_gc_pure(p13, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+200: i19 = int_ge(i17, 0) | |
guard_true(i19, descr=<Guard0x1464bf0>) [i17, p13, p11, None, p0, p5, i6, p1] | |
+210: i20 = getfield_gc_pure(p11, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+214: i21 = int_lt(i17, i20) | |
guard_true(i21, descr=<Guard0x1464b80>) [p13, p11, None, p0, p5, i6, p1] | |
+223: p22 = getfield_gc(p11, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+227: guard_class(p22, 9641744, descr=<Guard0x1464b10>) [i17, p22, p11, None, p0, p5, i6, p1] | |
+240: p24 = getfield_gc(p11, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+244: p25 = getarrayitem_gc(p24, i17, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(conf-set-get AppRand0_fresh_137 ender)') | |
+249: p27 = getarrayitem_gc_pure(p9, 14, descr=<ArrayP 8>) | |
+256: guard_value(p27, ConstPtr(ptr28), descr=<Guard0x1464aa0>) [p27, p25, None, p0, p5, i6, p1] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_221 (+ conf 1)]) (vector-ref state AppRand1_fresh_221))') | |
p30 = new_with_vtable(9625672) | |
p32 = new_with_vtable(ConstClass(W_Fixnum)) | |
p34 = new_with_vtable(9629776) | |
p36 = new_with_vtable(9625432) | |
+382: setfield_gc(p30, ConstPtr(ptr37), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+396: setfield_gc(p30, ConstPtr(ptr38), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+410: setfield_gc(p36, p5, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+414: setfield_gc(p32, i6, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+418: setfield_gc(p30, p32, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+422: setfield_gc(p36, p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+426: setfield_gc(p30, p25, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+437: setfield_gc(p36, p32, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+441: setfield_gc(p34, p36, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+445: setfield_gc(p34, ConstPtr(ptr39), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+459: setfield_gc(p34, p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+470: jump(p30, p34, descr=TargetToken(140248750869264)) | |
+497: --end of the loop-- | |
[f4656211ba9] jit-log-opt-loop} | |
[f46565871b9] {jit-log-opt-loop | |
# Loop 6 ((let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))) : loop with 57 ops | |
[p0, p1] | |
+83: label(p0, p1, descr=TargetToken(140248751981136)) | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+83: guard_not_invalidated(descr=<Guard0x1465590>) [p0, p1] | |
debug_merge_point(0, 0, '(null? a)') | |
+83: guard_class(p0, 9625672, descr=<Guard0x1491130>) [p0, p1] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+106: guard_nonnull_class(p3, 9623144, descr=<Guard0x14910c0>) [p0, p3, p1] | |
+124: p5 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))') | |
debug_merge_point(0, 0, '(car a)') | |
+124: p6 = getfield_gc_pure(p3, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+128: guard_nonnull(p6, descr=<Guard0x1491050>) [p0, p6, p1] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))') | |
debug_merge_point(0, 0, '(cdr a)') | |
+137: p7 = getfield_gc_pure(p3, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+141: guard_nonnull(p7, descr=<Guard0x1490fe0>) [p0, p7, p6, p1] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_34 b)') | |
+150: p8 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+154: p9 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+158: i11 = instance_ptr_eq(p9, ConstPtr(ptr10)) | |
guard_true(i11, descr=<Guard0x1490f70>) [p9, p8, p0, p7, p6, p1] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+177: p12 = same_as(p6) | |
+177: p13 = same_as(p7) | |
+177: p14 = same_as(p9) | |
+177: p15 = same_as(p8) | |
+177: label(p9, p7, p8, p0, p1, p6, descr=TargetToken(140248751981216)) | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+177: guard_not_invalidated(descr=<Guard0x1490f00>) [p8, p0, p9, p1, p7, p6] | |
debug_merge_point(0, 0, '(null? a)') | |
+177: guard_class(p7, 9623144, descr=<Guard0x1490e90>) [p7, p8, p0, p9, p1, None, p6] | |
debug_merge_point(0, 0, '(if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))') | |
debug_merge_point(0, 0, '(car a)') | |
+189: p17 = getfield_gc_pure(p7, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+193: guard_nonnull(p17, descr=<Guard0x1490e20>) [p17, p8, p0, p9, p1, p7, p6] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))') | |
debug_merge_point(0, 0, '(cdr a)') | |
+202: p18 = getfield_gc_pure(p7, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+206: guard_nonnull(p18, descr=<Guard0x1490db0>) [p18, p17, p8, p0, p9, p1, p7, p6] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_34 b)') | |
+215: i19 = instance_ptr_eq(p9, ConstPtr(ptr10)) | |
guard_true(i19, descr=<Guard0x1490d40>) [p9, p18, p17, p8, p0, None, p1, p7, p6] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
p21 = new_with_vtable(9625672) | |
p23 = new_with_vtable(9629880) | |
+323: setfield_gc(p21, ConstPtr(ptr24), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+337: setfield_gc(p21, p8, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+348: setfield_gc(p21, p9, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+352: setfield_gc(p21, p7, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+356: setfield_gc(p23, p6, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+360: setfield_gc(p23, p0, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+364: setfield_gc(p23, ConstPtr(ptr25), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+378: setfield_gc(p23, p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+389: setfield_gc(p23, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+397: jump(p9, p18, p8, p21, p23, p17, descr=TargetToken(140248751981216)) | |
+425: --end of the loop-- | |
[f46565bfb41] jit-log-opt-loop} | |
[f4656ae9dc3] {jit-log-opt-loop | |
# Loop 7 ((let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))) : entry bridge with 45 ops | |
[p0, p1] | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
+83: guard_not_invalidated(descr=<Guard0x1500d40>) [p0, p1] | |
debug_merge_point(0, 0, '(pair? l4)') | |
+83: guard_class(p0, 9625672, descr=<Guard0x1500bf0>) [p0, p1] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+106: guard_nonnull_class(p3, 9623144, descr=<Guard0x1500b10>) [p0, p3, p1] | |
+124: p5 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125))') | |
debug_merge_point(0, 0, '(cdr l4)') | |
+128: p6 = getfield_gc_pure(p3, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+132: guard_nonnull(p6, descr=<Guard0x1500a30>) [p0, p6, p1] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))') | |
debug_merge_point(0, 0, '(car l4)') | |
+141: p7 = getfield_gc_pure(p3, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+145: guard_nonnull(p7, descr=<Guard0x1500b80>) [p0, p7, p6, p1] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_122 ender-tree)') | |
+154: p8 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+158: guard_class(p8, 9625552, descr=<Guard0x1500aa0>) [p8, p7, p5, p0, p6, p1] | |
+170: p10 = getfield_gc_pure(p8, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_2 40>) | |
+174: p11 = getfield_gc_pure(p8, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+178: i13 = instance_ptr_eq(p11, ConstPtr(ptr12)) | |
guard_false(i13, descr=<Guard0x1500cd0>) [p8, p10, p7, None, p0, p6, p1] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+197: p15 = same_as(p10) | |
+197: p16 = same_as(p6) | |
+197: p17 = same_as(p7) | |
+197: label(p7, p10, p0, p1, p6, descr=TargetToken(140248751982736)) | |
p19 = new_with_vtable(9625672) | |
p21 = new_with_vtable(9629776) | |
p23 = new_with_vtable(9629880) | |
+286: setfield_gc(p21, p0, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+290: setfield_gc(p21, ConstPtr(ptr24), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+304: setfield_gc(p23, p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+315: setfield_gc(p19, ConstPtr(ptr25), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+329: setfield_gc(p19, p10, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+333: setfield_gc(p19, ConstPtr(ptr12), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+347: setfield_gc(p19, p7, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+351: setfield_gc(p23, p0, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+355: setfield_gc(p23, ConstPtr(ptr26), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+369: setfield_gc(p23, p6, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+373: setfield_gc(p21, p23, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+377: setfield_gc(p23, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+385: jump(p19, p21, descr=TargetToken(140248751981136)) | |
+412: --end of the loop-- | |
[f4656b1dc2f] jit-log-opt-loop} | |
[f46572392d1] {jit-log-opt-bridge | |
# bridge out of Guard 0x1490e90 with 111 ops | |
[p0, p1, p2, p3, p4, p5] | |
+46: guard_class(p0, 9640312, descr=<Guard0x15350c0>) [p0, p2, p1, p3, p5, p4] | |
+58: i8 = instance_ptr_eq(p0, ConstPtr(ptr7)) | |
guard_true(i8, descr=<Guard0x153a790>) [p0, p2, p1, p3, p5, p4] | |
+71: guard_not_invalidated(descr=<Guard0x153a720>) [p0, p2, p1, p3, p5, p4] | |
debug_merge_point(0, 0, '(if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36)))') | |
debug_merge_point(0, 0, 'b') | |
+71: p9 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(cons AppRand0_fresh_35 AppRand1_fresh_36)') | |
+71: guard_nonnull_class(p5, 9623144, descr=<Guard0x153a6b0>) [p4, p2, p1, p5, None, None, None, None, None, None] | |
+89: guard_nonnull_class(p4, 9629776, descr=<Guard0x153a640>) [p4, None, None, p1, None, p5, None] | |
+114: p13 = getfield_gc_pure(p4, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+118: guard_value(p13, ConstPtr(ptr14), descr=<Guard0x153a5d0>) [p13, p4, None, None, p1, None, p5, None] | |
+137: i15 = getfield_gc(p4, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+141: guard_value(i15, 0, descr=<Guard0x153a560>) [i15, p4, None, None, p1, None, p5, None] | |
+151: p17 = getfield_gc_pure(p4, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+155: p18 = getfield_gc_pure(p17, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+159: p19 = getfield_gc_pure(p4, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(cons AppRand0_fresh_123 l2)') | |
+163: guard_class(p17, 9625672, descr=<Guard0x153a4f0>) [p19, p17, p18, None, None, p1, None, p5, None] | |
+175: p21 = getfield_gc_pure(p17, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+179: guard_nonnull_class(p19, 9629880, descr=<Guard0x153a480>) [p19, p21, None, None, None, p1, None, p5, None] | |
+198: p23 = getfield_gc_pure(p19, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+202: guard_value(p23, ConstPtr(ptr24), descr=<Guard0x153a410>) [p23, p19, p21, None, None, None, p1, None, p5, None] | |
+221: i25 = getfield_gc(p19, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+225: guard_value(i25, 1, descr=<Guard0x153a3a0>) [i25, p19, p21, None, None, None, p1, None, p5, None] | |
+235: p27 = getfield_gc_pure(p19, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+239: p28 = getfield_gc_pure(p19, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+243: p29 = getfield_gc_pure(p28, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+247: p30 = getfield_gc_pure(p19, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(loop4 AppRand0_fresh_124 AppRand1_fresh_125)') | |
+251: guard_class(p28, 9625672, descr=<Guard0x153a250>) [p30, p28, p29, p27, p21, None, None, None, p1, None, p5, None] | |
+263: p32 = getfield_gc_pure(p28, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+267: guard_class(p32, 9625552, descr=<Guard0x153a1e0>) [p30, p32, p28, p29, p27, p21, None, None, None, p1, None, p5, None] | |
+280: p34 = getfield_gc_pure(p32, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_1 32>) | |
+284: guard_class(p34, 9632160, descr=<Guard0x153a170>) [p34, p30, p28, None, None, p27, p21, None, None, None, p1, None, p5, None] | |
+297: p36 = getfield_gc_pure(p34, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+301: guard_value(p36, ConstPtr(ptr37), descr=<Guard0x153a100>) [p36, p30, p28, p34, None, None, p27, p21, None, None, None, p1, None, p5, None] | |
+320: p38 = getfield_gc_pure(p34, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+324: i39 = instance_ptr_eq(p32, p38) | |
guard_true(i39, descr=<Guard0x153a090>) [p38, p30, p32, None, None, p27, p21, None, None, None, p1, None, p5, None] | |
+333: p40 = getfield_gc_pure(p38, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
debug_merge_point(0, 0, '(pair? l4)') | |
+337: guard_nonnull_class(p27, 9640312, descr=<Guard0x1535600>) [p27, p32, p40, p30, None, None, None, p21, None, None, None, p1, None, p5, None] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))') | |
debug_merge_point(0, 0, '(cdr l3)') | |
+355: p42 = getfield_gc_pure(p32, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_3 48>) | |
+359: guard_nonnull_class(p42, 9623144, descr=<Guard0x1535590>) [p42, p32, p40, p30, None, None, p27, p21, None, None, None, p1, None, p5, None] | |
+377: p44 = getfield_gc_pure(p42, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+381: guard_nonnull_class(p44, 9640312, descr=<Guard0x1535520>) [p44, p32, p40, p30, None, None, p27, p21, None, None, None, p1, None, p5, None] | |
debug_merge_point(0, 0, '(loop3 AppRand0_fresh_126 l2)') | |
+401: p46 = getfield_gc_pure(p32, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+405: guard_class(p46, 9632160, descr=<Guard0x15354b0>) [p46, p30, p44, p32, p40, None, None, None, p27, p21, None, None, None, p1, None, p5, None] | |
+417: p48 = getfield_gc_pure(p46, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+421: guard_value(p48, ConstPtr(ptr49), descr=<Guard0x1535440>) [p48, p30, p46, p44, p32, p40, None, None, None, p27, p21, None, None, None, p1, None, p5, None] | |
+440: p50 = getfield_gc_pure(p46, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+444: i51 = instance_ptr_eq(p32, p50) | |
guard_false(i51, descr=<Guard0x15353d0>) [p50, p30, p32, p44, None, None, None, None, None, None, p21, None, None, None, p1, None, p5, None] | |
+453: p52 = getfield_gc_pure(p32, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+457: i53 = instance_ptr_eq(p52, p50) | |
guard_false(i53, descr=<Guard0x1535360>) [p50, p30, p32, p44, None, None, None, None, None, None, p21, None, None, None, p1, None, p5, None] | |
+466: p54 = getfield_gc_pure(p50, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))') | |
debug_merge_point(0, 0, '(pair? l3)') | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+470: guard_class(p50, 9625128, descr=<Guard0x15352f0>) [p50, p54, p44, None, None, p30, None, None, None, p21, None, None, None, p1, None, p5, None] | |
+482: p56 = getfield_gc_pure(p50, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+486: p58 = getarrayitem_gc_pure(p56, 2, descr=<ArrayP 8>) | |
+490: p60 = getarrayitem_gc_pure(p56, 5, descr=<ArrayP 8>) | |
+494: p62 = getarrayitem_gc_pure(p56, 3, descr=<ArrayP 8>) | |
+498: guard_value(p58, ConstPtr(ptr63), descr=<Guard0x1535280>) [p58, p50, p60, p62, p54, p44, None, None, p30, None, None, None, p21, None, None, None, p1, None, p5, None] | |
+517: p64 = getfield_gc_pure(p50, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+521: i66 = instance_ptr_eq(p64, ConstPtr(ptr65)) | |
guard_false(i66, descr=<Guard0x1535210>) [p50, None, p60, p62, p54, p44, None, None, p30, None, None, None, p21, None, None, None, p1, None, p5, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+540: guard_class(p62, ConstClass(W_Fixnum), descr=<Guard0x15351a0>) [p62, p50, p60, None, p54, p44, None, None, p30, None, None, None, p21, None, None, None, p1, None, p5, None] | |
+553: i68 = getfield_gc_pure(p62, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+557: i70 = int_add_ovf(i68, 5) | |
guard_no_overflow(descr=<Guard0x1535130>) [i68, i70, p50, p60, p62, p54, p44, None, None, p30, None, None, None, p21, None, None, None, p1, None, p5, None] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p72 = new_with_vtable(9625432) | |
p74 = new_with_vtable(ConstClass(W_Fixnum)) | |
p76 = new_with_vtable(9625672) | |
+666: setfield_gc(p72, ConstPtr(ptr77), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+680: setfield_gc(p76, ConstPtr(ptr65), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p79 = new_with_vtable(9629776) | |
p81 = new_with_vtable(9625672) | |
+723: setfield_gc(p76, ConstPtr(ptr77), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p83 = new_with_vtable(9623144) | |
p85 = new_with_vtable(9623144) | |
+774: setfield_gc(p83, p21, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+778: setfield_gc(p85, p5, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+782: setfield_gc(p76, p62, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+786: setfield_gc(p72, p76, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+797: setfield_gc(p76, p60, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+801: setfield_gc(p81, p54, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+805: setfield_gc(p74, i70, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+809: setfield_gc(p72, p74, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+813: setfield_gc(p81, p83, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+817: setfield_gc(p81, p50, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+821: setfield_gc(p81, p44, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+825: setfield_gc(p85, p1, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+836: setfield_gc(p83, p85, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+840: setfield_gc(p79, p81, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+851: setfield_gc(p79, ConstPtr(ptr86), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+865: setfield_gc(p79, p30, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+876: jump(p72, p79, descr=TargetToken(140248750874544)) | |
+903: --end of the loop-- | |
[f46572ad676] jit-log-opt-bridge} | |
[f4657abf1be] {jit-log-opt-bridge | |
# bridge out of Guard 0x136a1e0 with 128 ops | |
[p0, p1, p2, p3] | |
+46: guard_not_invalidated(descr=<Guard0x7f8e370b0560>) [p0, p3, p2, p1] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))') | |
debug_merge_point(0, 0, '(cdr l1)') | |
+46: guard_class(p2, 9625432, descr=<Guard0x7f8e370b02c0>) [p2, p0, p3, None, p1] | |
+58: p6 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+62: guard_class(p6, 9625672, descr=<Guard0x7f8e370b0250>) [p6, p0, p3, p2, p1] | |
+76: p8 = getfield_gc_pure(p6, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+80: guard_nonnull_class(p8, 9623288, descr=<Guard0x7f8e370b01e0>) [p8, p0, p3, p2, p1] | |
+100: p10 = getfield_gc_pure(p8, descr=<FieldP pycket.values.W_UnwrappedFixnumCons.inst__cdr 16>) | |
+105: guard_nonnull_class(p10, 9640312, descr=<Guard0x7f8e370b0100>) [p10, p0, p3, p2, p1] | |
debug_merge_point(0, 0, '(loop1 AppRand0_fresh_136 l2)') | |
+124: p12 = getfield_gc_pure(p6, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+128: guard_class(p12, 9625128, descr=<Guard0x7f8e370b4aa0>) [p0, p12, p10, None, p3, p2, p1] | |
+142: p14 = getfield_gc_pure(p12, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+147: p16 = getarrayitem_gc_pure(p14, 7, descr=<ArrayP 8>) | |
+151: p17 = getfield_gc_pure(p6, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+155: guard_class(p16, 9632160, descr=<Guard0x7f8e370b5280>) [p16, p0, p17, p10, None, p3, p2, p1] | |
+169: p19 = getfield_gc_pure(p16, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+174: guard_value(p19, ConstPtr(ptr20), descr=<Guard0x7f8e370b5210>) [p19, p0, p16, p17, p10, None, p3, p2, p1] | |
+193: p21 = getfield_gc_pure(p16, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+198: i22 = instance_ptr_eq(p2, p21) | |
guard_false(i22, descr=<Guard0x7f8e370b51a0>) [p21, p0, p2, p17, p10, None, None, None, None] | |
+207: i23 = instance_ptr_eq(p6, p21) | |
guard_false(i23, descr=<Guard0x7f8e370b5130>) [p21, p0, p2, p17, p10, None, None, None, None] | |
+216: p24 = getfield_gc_pure(p21, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2))') | |
debug_merge_point(0, 0, '(pair? l1)') | |
debug_merge_point(0, 0, '(if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)') | |
debug_merge_point(0, 0, 'l2') | |
+216: guard_nonnull_class(p0, 9629880, descr=<Guard0x7f8e370b50c0>) [p0, p17, None, None, None, None, None] | |
+235: p26 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+239: guard_value(p26, ConstPtr(ptr27), descr=<Guard0x7f8e370b5050>) [p26, p0, p17, None, None, None, None, None] | |
+258: i28 = getfield_gc(p0, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+262: guard_value(i28, 1, descr=<Guard0x7f8e370b4fe0>) [i28, p0, p17, None, None, None, None, None] | |
+272: p30 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+276: p31 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+280: p32 = getfield_gc_pure(p31, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+284: p33 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)') | |
+288: guard_class(p31, 9625672, descr=<Guard0x7f8e370b4f70>) [p33, p31, p30, p32, p17, None, None, None, None, None] | |
+301: p35 = getfield_gc_pure(p31, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+305: guard_class(p35, 9625128, descr=<Guard0x7f8e370b4f00>) [p33, p35, p31, p30, p32, p17, None, None, None, None, None] | |
+318: p37 = getfield_gc_pure(p35, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+322: p39 = getarrayitem_gc_pure(p37, 1, descr=<ArrayP 8>) | |
+327: p41 = getarrayitem_gc_pure(p37, 3, descr=<ArrayP 8>) | |
+332: p42 = getfield_gc_pure(p31, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+336: p44 = getarrayitem_gc_pure(p37, 14, descr=<ArrayP 8>) | |
+344: p45 = getfield_gc_pure(p31, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
debug_merge_point(0, 0, '(let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))') | |
debug_merge_point(0, 0, '(pair? l3)') | |
+348: guard_nonnull_class(p17, 9623144, descr=<Guard0x7f8e370b4e90>) [p17, p42, p33, p44, p39, p41, p45, None, p30, p32, None, None, None, None, None, None] | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))') | |
debug_merge_point(0, 0, '(car l3)') | |
+367: p47 = getfield_gc_pure(p17, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+371: guard_nonnull_class(p47, 9623144, descr=<Guard0x7f8e370b4e20>) [p47, p42, p33, p44, p39, p41, p45, None, p30, p32, p17, None, None, None, None, None] | |
debug_merge_point(0, 0, '(list AppRand0_fresh_128)') | |
debug_merge_point(0, 0, '((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)') | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
debug_merge_point(0, 0, '(pair? l4)') | |
+390: guard_nonnull_class(p30, 9623144, descr=<Guard0x7f8e370b4db0>) [p30, p47, p42, p33, p44, p39, p41, p45, None, None, p32, p17, None, None, None, None, None] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125))') | |
debug_merge_point(0, 0, '(cdr l4)') | |
+410: p50 = getfield_gc_pure(p30, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+414: guard_nonnull(p50, descr=<Guard0x7f8e370b4d40>) [p50, p47, p42, p33, p44, p39, p41, p45, None, p30, p32, p17, None, None, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))') | |
debug_merge_point(0, 0, '(car l4)') | |
+423: p51 = getfield_gc_pure(p30, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+427: guard_nonnull(p51, descr=<Guard0x7f8e370b4cd0>) [p51, p50, p47, p42, p33, p44, p39, p41, p45, None, p30, p32, p17, None, None, None, None, None] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_122 ender-tree)') | |
+436: i53 = instance_ptr_eq(p32, ConstPtr(ptr52)) | |
guard_false(i53, descr=<Guard0x7f8e370b4c60>) [p51, p50, p47, p42, p33, p44, p39, p41, p45, None, p30, p32, p17, None, None, None, None, None] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+455: p54 = same_as(p51) | |
+455: p55 = same_as(p47) | |
+455: p56 = same_as(p50) | |
+455: label(p51, p47, p32, p39, p30, p41, p42, p44, p17, p45, p33, p50, descr=TargetToken(140248751986496)) | |
p58 = new_with_vtable(9625672) | |
p60 = new_with_vtable(9623144) | |
p62 = new_with_vtable(9629776) | |
p64 = new_with_vtable(9625672) | |
+576: setfield_gc(p58, ConstPtr(ptr65), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+604: setfield_gc(p58, p60, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
p67 = new_with_vtable(9625552) | |
+619: setfield_gc(p64, p32, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+623: setfield_gc(p58, ConstPtr(ptr52), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p69 = new_with_vtable(9632160) | |
p71 = new_with_vtable(9632160) | |
+680: setfield_gc(p69, ConstPtr(ptr72), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
p74 = new_with_vtable(9625128) | |
+712: setfield_gc(p67, p32, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p76 = new_array(6, descr=<ArrayP 8>) | |
+749: setfield_gc(p67, p32, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+767: setfield_gc(p69, p67, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+771: setfield_gc(p74, p32, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+775: setfield_gc(p58, p51, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
p78 = new_with_vtable(9629880) | |
+804: setfield_gc(p62, p64, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+829: setfield_gc(p62, ConstPtr(ptr79), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+843: setfield_gc(p78, p33, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+854: setfield_gc(p74, p32, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+858: setfield_gc(p60, ConstPtr(ptr80), descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+866: setfield_gc(p60, p47, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+870: setfield_gc(p64, p45, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+874: setfield_gc(p64, p67, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+885: setfield_gc(p64, p30, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+889: setfield_gc(p67, p17, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_3 48>) | |
+894: setfield_gc(p67, p60, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_2 40>) | |
+899: setfield_gc(p71, ConstPtr(ptr81), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+920: setfield_gc(p71, p74, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+924: setfield_gc(p67, p69, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_1 32>) | |
+929: setarrayitem_gc(p76, 0, p39, descr=<ArrayP 8>) | |
+940: setarrayitem_gc(p76, 1, p30, descr=<ArrayP 8>) | |
+944: setarrayitem_gc(p76, 2, p41, descr=<ArrayP 8>) | |
+955: setarrayitem_gc(p76, 3, p42, descr=<ArrayP 8>) | |
+959: setarrayitem_gc(p76, 4, p71, descr=<ArrayP 8>) | |
+963: setarrayitem_gc(p76, 5, p44, descr=<ArrayP 8>) | |
+974: setfield_gc(p74, p76, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+978: setfield_gc(p67, p71, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+983: setfield_gc(p78, p64, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+987: setfield_gc(p78, ConstPtr(ptr88), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+1001: setfield_gc(p78, p50, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+1012: setfield_gc(p62, p78, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+1023: setfield_gc(p78, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+1031: jump(p58, p62, descr=TargetToken(140248751981136)) | |
+1065: --end of the loop-- | |
[f4657b78b82] jit-log-opt-bridge} | |
[f4657f898c7] {jit-log-opt-bridge | |
# bridge out of Guard 0x136c640 with 102 ops | |
[p0, p1, p2] | |
+46: guard_value(p0, ConstPtr(ptr3), descr=<Guard0x7f8e370bde50>) [p0, p1, p2] | |
+65: i4 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+69: guard_value(i4, 0, descr=<Guard0x7f8e370c39f0>) [i4, p1, p2] | |
+79: guard_class(p1, 9629776, descr=<Guard0x7f8e370c3980>) [p1, p2] | |
+91: p7 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+95: p8 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+99: p9 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+103: guard_not_invalidated(descr=<Guard0x7f8e370c3910>) [p9, p7, p8, p2] | |
debug_merge_point(0, 0, '(loop2 AppRand0_fresh_129 l2)') | |
+103: guard_class(p7, 9625672, descr=<Guard0x7f8e370c38a0>) [p9, p7, None, p8, p2] | |
+115: p12 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+119: guard_class(p12, 9625128, descr=<Guard0x7f8e370c3830>) [p9, p12, p7, p8, p2] | |
+131: p14 = getfield_gc_pure(p12, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+135: p16 = getarrayitem_gc_pure(p14, 0, descr=<ArrayP 8>) | |
+139: p17 = getfield_gc_pure(p7, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+143: guard_class(p16, 9632160, descr=<Guard0x7f8e370c37c0>) [p16, p9, p7, p17, None, None, p2] | |
+157: p19 = getfield_gc_pure(p16, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+161: guard_value(p19, ConstPtr(ptr20), descr=<Guard0x7f8e370c3750>) [p19, p9, p7, p16, p17, None, None, p2] | |
+180: p21 = getfield_gc_pure(p16, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+184: i22 = instance_ptr_eq(p12, p21) | |
guard_false(i22, descr=<Guard0x7f8e370c36e0>) [p21, p9, p12, p17, None, None, p2] | |
+193: p23 = getfield_gc_pure(p12, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+197: i24 = instance_ptr_eq(p23, p21) | |
guard_false(i24, descr=<Guard0x7f8e370c3670>) [p21, p9, p12, p17, None, None, p2] | |
+206: p25 = getfield_gc_pure(p21, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2))))') | |
debug_merge_point(0, 0, '(>= k 0)') | |
+210: guard_nonnull_class(p2, ConstClass(W_Fixnum), descr=<Guard0x7f8e370c3600>) [p2, p9, p25, p21, p17, None, None, None] | |
+228: i27 = getfield_gc_pure(p2, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+232: i29 = int_ge(i27, 0) | |
guard_false(i29, descr=<Guard0x7f8e370c3590>) [p9, p25, p21, p17, None, None, p2] | |
debug_merge_point(0, 0, '(if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2))') | |
debug_merge_point(0, 0, '(cdr l1)') | |
+242: guard_class(p21, 9625128, descr=<Guard0x7f8e370c3520>) [p21, p9, p25, None, p17, None, None, p2] | |
+254: p31 = getfield_gc_pure(p21, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+258: p33 = getarrayitem_gc_pure(p31, 5, descr=<ArrayP 8>) | |
+262: guard_nonnull_class(p33, 9623288, descr=<Guard0x7f8e370c34b0>) [p33, p9, p25, p21, p17, None, None, p2] | |
+282: p35 = getfield_gc_pure(p33, descr=<FieldP pycket.values.W_UnwrappedFixnumCons.inst__cdr 16>) | |
+287: guard_nonnull_class(p35, 9623288, descr=<Guard0x7f8e370c3440>) [p35, p9, p25, p21, p17, None, None, p2] | |
debug_merge_point(0, 0, '(loop1 AppRand0_fresh_133 l2)') | |
+306: p38 = getarrayitem_gc_pure(p31, 9, descr=<ArrayP 8>) | |
+310: guard_class(p38, 9632160, descr=<Guard0x7f8e370c33d0>) [p38, p9, p35, None, p25, p21, p17, None, None, p2] | |
+324: p40 = getfield_gc_pure(p38, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+329: guard_value(p40, ConstPtr(ptr41), descr=<Guard0x7f8e370c3360>) [p40, p9, p38, p35, None, p25, p21, p17, None, None, p2] | |
+348: p42 = getfield_gc_pure(p38, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+353: i43 = instance_ptr_eq(p21, p42) | |
guard_false(i43, descr=<Guard0x7f8e370c32f0>) [p42, p9, p21, p35, None, None, None, p17, None, None, None] | |
+362: p44 = getfield_gc_pure(p21, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+366: i45 = instance_ptr_eq(p44, p42) | |
guard_false(i45, descr=<Guard0x7f8e370c3280>) [p42, p9, p21, p35, None, None, None, p17, None, None, None] | |
+375: p46 = getfield_gc_pure(p42, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2))') | |
debug_merge_point(0, 0, '(pair? l1)') | |
debug_merge_point(0, 0, '(if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)') | |
debug_merge_point(0, 0, '(let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2)))))') | |
debug_merge_point(0, 0, '(car l1)') | |
+379: i47 = getfield_gc_pure(p35, descr=<FieldS pycket.values.W_UnwrappedFixnumCons.inst__car 8>) | |
debug_merge_point(0, 0, '(let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))') | |
debug_merge_point(0, 0, '(vector-ref states j)') | |
+383: guard_class(p42, 9625128, descr=<Guard0x7f8e370c3210>) [p42, p46, i47, p35, p9, None, None, p17, None, None, None] | |
+395: p49 = getfield_gc_pure(p42, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+399: p51 = getarrayitem_gc_pure(p49, 4, descr=<ArrayP 8>) | |
+403: p53 = getarrayitem_gc_pure(p49, 0, descr=<ArrayP 8>) | |
+407: guard_nonnull_class(p51, ConstClass(W_Vector), descr=<Guard0x7f8e370c31a0>) [p51, p53, p42, p46, i47, p35, p9, None, None, p17, None, None, None] | |
+425: guard_nonnull_class(p53, ConstClass(W_Fixnum), descr=<Guard0x7f8e370c3130>) [p51, p53, None, p42, p46, i47, p35, p9, None, None, p17, None, None, None] | |
+444: i56 = getfield_gc_pure(p53, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+448: i58 = int_ge(i56, 0) | |
guard_true(i58, descr=<Guard0x7f8e370c30c0>) [i56, p53, p51, None, p42, p46, i47, p35, p9, None, None, p17, None, None, None] | |
+458: i59 = getfield_gc_pure(p51, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+462: i60 = int_lt(i56, i59) | |
guard_true(i60, descr=<Guard0x7f8e370c3050>) [p53, p51, None, p42, p46, i47, p35, p9, None, None, p17, None, None, None] | |
+471: p61 = getfield_gc(p51, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+475: guard_class(p61, 9641744, descr=<Guard0x7f8e370c2fe0>) [i56, p61, p51, None, p42, p46, i47, p35, p9, None, None, p17, None, None, None] | |
+487: p63 = getfield_gc(p51, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+491: p64 = getarrayitem_gc(p63, i56, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(conf-set-get AppRand0_fresh_137 ender)') | |
+496: p66 = getarrayitem_gc_pure(p49, 14, descr=<ArrayP 8>) | |
+503: guard_value(p66, ConstPtr(ptr67), descr=<Guard0x7f8e370c2f70>) [p66, p64, None, p42, p46, i47, p35, p9, None, None, p17, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_221 (+ conf 1)]) (vector-ref state AppRand1_fresh_221))') | |
p69 = new_with_vtable(9625672) | |
p71 = new_with_vtable(ConstClass(W_Fixnum)) | |
p73 = new_with_vtable(9629776) | |
p75 = new_with_vtable(9625432) | |
+630: setfield_gc(p69, ConstPtr(ptr76), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p78 = new_with_vtable(9625672) | |
+655: setfield_gc(p75, p46, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+659: setfield_gc(p69, p71, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+663: setfield_gc(p69, ConstPtr(ptr79), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+677: setfield_gc(p69, p64, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+681: setfield_gc(p78, p42, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+685: setfield_gc(p78, p46, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+689: setfield_gc(p71, i47, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+700: setfield_gc(p78, p17, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+704: setfield_gc(p75, p78, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+708: setfield_gc(p78, p35, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+712: setfield_gc(p75, p71, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+716: setfield_gc(p73, p75, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+720: setfield_gc(p73, ConstPtr(ptr80), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+734: setfield_gc(p73, p9, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+738: jump(p69, p73, descr=TargetToken(140248750869264)) | |
+765: --end of the loop-- | |
[f465801da36] jit-log-opt-bridge} | |
[f46582853a4] {jit-log-opt-loop | |
# Loop 8 ((let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))) : entry bridge with 43 ops | |
[p0, p1] | |
debug_merge_point(0, 0, '(let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))') | |
+83: guard_not_invalidated(descr=<Guard0x7f8e370c3ad0>) [p0, p1] | |
debug_merge_point(0, 0, '(pair? l3)') | |
+83: guard_class(p0, 9625672, descr=<Guard0x7f8e370c6f70>) [p0, p1] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+106: guard_nonnull_class(p3, 9640312, descr=<Guard0x7f8e370c6f00>) [p0, p3, p1] | |
+124: p5 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+124: p6 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+128: guard_class(p6, 9625128, descr=<Guard0x7f8e370c6e90>) [p0, p6, p1] | |
+140: p8 = getfield_gc_pure(p6, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+144: p10 = getarrayitem_gc_pure(p8, 2, descr=<ArrayP 8>) | |
+148: p12 = getarrayitem_gc_pure(p8, 5, descr=<ArrayP 8>) | |
+152: p14 = getarrayitem_gc_pure(p8, 3, descr=<ArrayP 8>) | |
+156: guard_value(p10, ConstPtr(ptr15), descr=<Guard0x7f8e370c6e20>) [p10, p0, p14, p12, p1] | |
+175: p16 = getfield_gc_pure(p6, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+179: i18 = instance_ptr_eq(p16, ConstPtr(ptr17)) | |
guard_false(i18, descr=<Guard0x7f8e370c6db0>) [p6, p0, p14, p12, p1] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+198: guard_class(p14, ConstClass(W_Fixnum), descr=<Guard0x7f8e370c6d40>) [p14, p0, None, p12, p1] | |
+210: i21 = getfield_gc_pure(p14, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+214: i23 = int_add_ovf(i21, 5) | |
guard_no_overflow(descr=<Guard0x7f8e370c6cd0>) [i21, i23, p0, p14, p12, p1] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p25 = new_with_vtable(9625432) | |
p27 = new_with_vtable(ConstClass(W_Fixnum)) | |
p29 = new_with_vtable(9625672) | |
+323: setfield_gc(p25, ConstPtr(ptr30), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+337: setfield_gc(p29, ConstPtr(ptr17), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p32 = new_with_vtable(9629776) | |
+362: setfield_gc(p29, ConstPtr(ptr30), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+376: setfield_gc(p27, i23, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+380: setfield_gc(p25, p27, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+384: setfield_gc(p29, p14, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+395: setfield_gc(p25, p29, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+399: setfield_gc(p29, p12, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+403: setfield_gc(p32, p0, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+407: setfield_gc(p32, ConstPtr(ptr33), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+421: setfield_gc(p32, p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+432: jump(p25, p32, descr=TargetToken(140248750874544)) | |
+459: --end of the loop-- | |
[f46582b169b] jit-log-opt-loop} | |
[f4658dec047] {jit-log-opt-bridge | |
# bridge out of Guard 0x1441280 with 124 ops | |
[p0, p1, p2, p3] | |
+46: guard_not_invalidated(descr=<Guard0x7f8e370d4cd0>) [p0, p3, p1, p2] | |
debug_merge_point(0, 0, '(let ([prev (- conf 1)]) (let ([AppRand0_fresh_140 (let ([AppRand1_fresh_139 (vector-ref steps prev)]) (vector-ref enders AppRand1_fresh_139))]) ((rec (lambda (l1 l2) (let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)))) AppRand0_fresh_140 '())))') | |
debug_merge_point(0, 0, '(- conf 1)') | |
+46: guard_class(p1, 9625128, descr=<Guard0x7f8e370d5590>) [p1, p0, p3, None, p2] | |
+58: p6 = getfield_gc_pure(p1, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+62: p8 = getarrayitem_gc_pure(p6, 0, descr=<ArrayP 8>) | |
+66: guard_class(p8, ConstClass(W_Fixnum), descr=<Guard0x7f8e370d5520>) [p8, p0, p3, p1, p2] | |
+79: i10 = getfield_gc_pure(p8, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+83: i12 = int_sub_ovf(i10, 1) | |
guard_no_overflow(descr=<Guard0x7f8e370d54b0>) [i10, i12, p8, p0, p3, p1, p2] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_140 (let ([AppRand1_fresh_139 (vector-ref steps prev)]) (vector-ref enders AppRand1_fresh_139))]) ((rec (lambda (l1 l2) (let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)))) AppRand0_fresh_140 '()))') | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_139 (vector-ref steps prev)]) (vector-ref enders AppRand1_fresh_139))') | |
debug_merge_point(0, 0, '(vector-ref steps prev)') | |
+96: p14 = getarrayitem_gc_pure(p6, 4, descr=<ArrayP 8>) | |
+100: guard_nonnull_class(p14, ConstClass(W_Vector), descr=<Guard0x7f8e370d5440>) [p14, i12, None, p0, p3, p1, p2] | |
+119: i17 = int_ge(i12, 0) | |
guard_true(i17, descr=<Guard0x7f8e370d53d0>) [i12, p14, None, None, p0, p3, p1, p2] | |
+129: i18 = getfield_gc_pure(p14, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+133: i19 = int_lt(i12, i18) | |
guard_true(i19, descr=<Guard0x7f8e370d5360>) [p14, i12, None, p0, p3, p1, p2] | |
+142: p20 = getfield_gc(p14, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+146: guard_class(p20, 9641744, descr=<Guard0x7f8e370d52f0>) [i12, p20, p14, None, None, p0, p3, p1, p2] | |
+160: p22 = getfield_gc(p14, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+164: p23 = getarrayitem_gc(p22, i12, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(vector-ref enders AppRand1_fresh_139)') | |
+169: p25 = getarrayitem_gc_pure(p6, 3, descr=<ArrayP 8>) | |
+173: guard_nonnull_class(p25, ConstClass(W_Vector), descr=<Guard0x7f8e370d5280>) [p25, p23, i12, None, p0, p3, p1, p2] | |
+193: guard_nonnull_class(p23, ConstClass(W_Fixnum), descr=<Guard0x7f8e370d5210>) [p25, p23, None, i12, None, p0, p3, p1, p2] | |
+212: i28 = getfield_gc_pure(p23, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+216: i30 = int_ge(i28, 0) | |
guard_true(i30, descr=<Guard0x7f8e370d51a0>) [i28, p23, p25, None, i12, None, p0, p3, p1, p2] | |
+226: i31 = getfield_gc_pure(p25, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+231: i32 = int_lt(i28, i31) | |
guard_true(i32, descr=<Guard0x7f8e370d5130>) [p23, p25, None, i12, None, p0, p3, p1, p2] | |
+240: p33 = getfield_gc(p25, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+245: guard_class(p33, 9641744, descr=<Guard0x7f8e370d50c0>) [i28, p33, p25, None, i12, None, p0, p3, p1, p2] | |
+258: p35 = getfield_gc(p25, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+263: p36 = getarrayitem_gc(p35, i28, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '((rec (lambda (l1 l2) (let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)))) AppRand0_fresh_140 '())') | |
+268: p38 = getarrayitem_gc_pure(p6, 2, descr=<ArrayP 8>) | |
+272: p40 = getarrayitem_gc_pure(p6, 5, descr=<ArrayP 8>) | |
+276: p41 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+280: guard_class(p41, 9625128, descr=<Guard0x7f8e370d5050>) [p0, p41, p36, p38, p40, p14, None, i12, None, None, p3, p1, p2] | |
+292: p43 = getfield_gc_pure(p41, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+296: p45 = getarrayitem_gc_pure(p43, 0, descr=<ArrayP 8>) | |
+300: p47 = getarrayitem_gc_pure(p6, 7, descr=<ArrayP 8>) | |
+304: p49 = getarrayitem_gc_pure(p43, 1, descr=<ArrayP 8>) | |
+308: p51 = getarrayitem_gc_pure(p6, 1, descr=<ArrayP 8>) | |
+312: p53 = getarrayitem_gc_pure(p43, 2, descr=<ArrayP 8>) | |
+323: p55 = getarrayitem_gc_pure(p43, 3, descr=<ArrayP 8>) | |
+334: p57 = getarrayitem_gc_pure(p6, 6, descr=<ArrayP 8>) | |
+345: p59 = getarrayitem_gc_pure(p6, 8, descr=<ArrayP 8>) | |
+356: p61 = getarrayitem_gc_pure(p43, 4, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2))') | |
debug_merge_point(0, 0, '(pair? l1)') | |
+360: guard_nonnull_class(p36, 9623288, descr=<Guard0x7f8e370d4fe0>) [p36, p51, p53, p59, p25, p49, p55, p61, p45, p57, p47, None, p38, p40, p14, None, i12, None, p0, None, None, p2] | |
debug_merge_point(0, 0, '(if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)') | |
debug_merge_point(0, 0, '(let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2)))))') | |
debug_merge_point(0, 0, '(car l1)') | |
+379: i63 = getfield_gc_pure(p36, descr=<FieldS pycket.values.W_UnwrappedFixnumCons.inst__car 8>) | |
debug_merge_point(0, 0, '(let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))') | |
debug_merge_point(0, 0, '(vector-ref states j)') | |
+383: guard_nonnull_class(p47, ConstClass(W_Vector), descr=<Guard0x7f8e370d4f70>) [p47, i63, p51, p53, p59, p25, p49, p55, p61, p45, p57, None, p36, p38, p40, p14, None, i12, None, p0, None, None, p2] | |
+401: guard_nonnull_class(p38, ConstClass(W_Fixnum), descr=<Guard0x7f8e370d4f00>) [p47, p38, i63, p51, p53, p59, p25, p49, p55, p61, p45, p57, None, p36, None, p40, p14, None, i12, None, p0, None, None, p2] | |
+420: i66 = getfield_gc_pure(p38, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+431: i68 = int_ge(i66, 0) | |
guard_true(i68, descr=<Guard0x7f8e370d4e90>) [i66, p38, p47, i63, p51, p53, p59, p25, p49, p55, p61, p45, p57, None, p36, None, p40, p14, None, i12, None, p0, None, None, p2] | |
+441: i69 = getfield_gc_pure(p47, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+452: i70 = int_lt(i66, i69) | |
guard_true(i70, descr=<Guard0x7f8e370d4e20>) [p38, p47, i63, p51, p53, p59, p25, p49, p55, p61, p45, p57, None, p36, None, p40, p14, None, i12, None, p0, None, None, p2] | |
+461: p71 = getfield_gc(p47, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+465: guard_class(p71, 9641744, descr=<Guard0x7f8e370d4db0>) [i66, p71, p47, i63, p51, p53, p59, p25, p49, p55, p61, p45, p57, None, p36, p38, p40, p14, None, i12, None, p0, None, None, p2] | |
+477: p73 = getfield_gc(p47, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+481: p74 = getarrayitem_gc(p73, i66, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(conf-set-get AppRand0_fresh_137 ender)') | |
+493: guard_value(p61, ConstPtr(ptr75), descr=<Guard0x7f8e370d4d40>) [p61, p74, i63, p51, p53, p59, p25, p49, p55, None, p45, p57, p47, p36, p38, p40, p14, None, i12, None, p0, None, None, p2] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_221 (+ conf 1)]) (vector-ref state AppRand1_fresh_221))') | |
p77 = new_with_vtable(9625672) | |
p79 = new_with_vtable(ConstClass(W_Fixnum)) | |
p81 = new_with_vtable(9629776) | |
p83 = new_with_vtable(9625432) | |
+620: setfield_gc(p77, ConstPtr(ptr84), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p86 = new_with_vtable(9625672) | |
+653: setfield_gc(p83, p2, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+672: setfield_gc(p77, p79, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
p88 = new_with_vtable(9625128) | |
+703: setfield_gc(p86, p2, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p90 = new_array(15, descr=<ArrayP 8>) | |
p92 = new_with_vtable(ConstClass(W_Fixnum)) | |
+757: setfield_gc(p79, i63, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
p94 = new_with_vtable(9632160) | |
+773: setfield_gc(p77, ConstPtr(ptr95), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+801: setfield_gc(p88, p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+812: setfield_gc(p77, p74, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+823: setfield_gc(p86, p88, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+834: setfield_gc(p88, p2, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+838: setfield_gc(p92, i12, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+843: setfield_gc(p86, ConstPtr(ptr96), descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+851: setfield_gc(p83, p86, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+862: setfield_gc(p86, p36, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+866: setfield_gc(p83, p79, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+870: setarrayitem_gc(p90, 0, p38, descr=<ArrayP 8>) | |
+881: setarrayitem_gc(p90, 1, p40, descr=<ArrayP 8>) | |
+885: setarrayitem_gc(p90, 2, p14, descr=<ArrayP 8>) | |
+889: setarrayitem_gc(p90, 3, p45, descr=<ArrayP 8>) | |
+893: setarrayitem_gc(p90, 4, p47, descr=<ArrayP 8>) | |
+897: setarrayitem_gc(p90, 5, p49, descr=<ArrayP 8>) | |
+908: setarrayitem_gc(p90, 6, p92, descr=<ArrayP 8>) | |
+912: setfield_gc(p94, ConstPtr(ptr104), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+934: setfield_gc(p94, p88, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+939: setarrayitem_gc(p90, 7, p94, descr=<ArrayP 8>) | |
+943: setarrayitem_gc(p90, 8, p51, descr=<ArrayP 8>) | |
+954: setarrayitem_gc(p90, 9, p53, descr=<ArrayP 8>) | |
+965: setarrayitem_gc(p90, 10, p25, descr=<ArrayP 8>) | |
+976: setarrayitem_gc(p90, 11, p55, descr=<ArrayP 8>) | |
+987: setarrayitem_gc(p90, 12, p57, descr=<ArrayP 8>) | |
+998: setarrayitem_gc(p90, 13, p59, descr=<ArrayP 8>) | |
+1009: setarrayitem_gc(p90, 14, ConstPtr(ptr75), descr=<ArrayP 8>) | |
+1026: setfield_gc(p88, p90, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+1030: setfield_gc(p81, p83, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+1041: setfield_gc(p81, ConstPtr(ptr113), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+1055: setfield_gc(p81, p0, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+1066: jump(p77, p81, descr=TargetToken(140248750869264)) | |
+1093: --end of the loop-- | |
[f4658eae007] jit-log-opt-bridge} | |
[f46595a1cd5] {jit-log-opt-bridge | |
# bridge out of Guard 0x1368020 with 62 ops | |
[p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19] | |
+46: guard_not_invalidated(descr=<Guard0x7f8e370e12f0>) [p4, p5, p12, p18, p6, p13, p7, p14, p8, p1, p17, p19, p2, p16, p9, p10, p11, p15, p3, p0] | |
debug_merge_point(0, 0, '(if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f)') | |
debug_merge_point(0, 0, '#f') | |
debug_merge_point(0, 0, '(if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+46: guard_value(p13, ConstPtr(ptr20), descr=<Guard0x7f8e370ea2c0>) [p13, p4, p5, p12, p18, p6, None, p7, p14, p8, p1, p17, p19, p2, p16, p9, p10, p11, p15, p3, p0] | |
+65: i23 = instance_ptr_eq(p18, ConstPtr(ptr22)) | |
guard_false(i23, descr=<Guard0x7f8e370ea250>) [p4, p5, p12, p18, p6, None, p7, p14, p8, p1, p17, p19, p2, p16, p9, p10, p11, p15, p3, p0] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+84: guard_class(p0, ConstClass(W_Fixnum), descr=<Guard0x7f8e370ea1e0>) [p0, p4, p5, p12, p18, p6, None, p7, p14, p8, p1, p17, p19, p2, p16, p9, p10, p11, p15, p3, None] | |
+97: i25 = getfield_gc_pure(p0, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+101: i27 = int_add_ovf(i25, 5) | |
guard_no_overflow(descr=<Guard0x7f8e370ea170>) [i25, i27, p4, p5, p12, p18, p6, None, p7, p14, p8, p1, p17, p19, p2, p16, p9, p10, p11, p15, p3, p0] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p29 = new_with_vtable(9625432) | |
p31 = new_with_vtable(ConstClass(W_Fixnum)) | |
p33 = new_with_vtable(9625672) | |
+210: setfield_gc(p29, ConstPtr(ptr34), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+224: setfield_gc(p33, ConstPtr(ptr22), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p36 = new_with_vtable(9629776) | |
p38 = new_with_vtable(9625672) | |
+274: setfield_gc(p33, ConstPtr(ptr34), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+288: setfield_gc(p33, p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
p40 = new_with_vtable(9625128) | |
+310: setfield_gc(p38, p18, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p42 = new_array(17, descr=<ArrayP 8>) | |
p44 = new_with_vtable(9632160) | |
+375: setfield_gc(p29, p33, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+394: setfield_gc(p40, p18, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+406: setfield_gc(p33, p19, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+417: setfield_gc(p40, p18, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+428: setfield_gc(p31, i27, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+432: setfield_gc(p29, p31, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+443: setfield_gc(p38, p11, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+454: setfield_gc(p38, p40, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+458: setfield_gc(p38, p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+462: setarrayitem_gc(p42, 0, p16, descr=<ArrayP 8>) | |
+473: setfield_gc(p44, ConstPtr(ptr46), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+487: setfield_gc(p44, p40, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+491: setarrayitem_gc(p42, 1, p44, descr=<ArrayP 8>) | |
+495: setarrayitem_gc(p42, 2, p12, descr=<ArrayP 8>) | |
+499: setarrayitem_gc(p42, 3, ConstPtr(ptr20), descr=<ArrayP 8>) | |
+513: setarrayitem_gc(p42, 4, p14, descr=<ArrayP 8>) | |
+524: setarrayitem_gc(p42, 5, p1, descr=<ArrayP 8>) | |
+528: setarrayitem_gc(p42, 6, p2, descr=<ArrayP 8>) | |
+532: setarrayitem_gc(p42, 7, p10, descr=<ArrayP 8>) | |
+536: setarrayitem_gc(p42, 8, p3, descr=<ArrayP 8>) | |
+547: setarrayitem_gc(p42, 9, p4, descr=<ArrayP 8>) | |
+558: setarrayitem_gc(p42, 10, p5, descr=<ArrayP 8>) | |
+569: setarrayitem_gc(p42, 11, p6, descr=<ArrayP 8>) | |
+580: setarrayitem_gc(p42, 12, p7, descr=<ArrayP 8>) | |
+591: setarrayitem_gc(p42, 13, p8, descr=<ArrayP 8>) | |
+602: setarrayitem_gc(p42, 14, p19, descr=<ArrayP 8>) | |
+609: setarrayitem_gc(p42, 15, p9, descr=<ArrayP 8>) | |
+623: setarrayitem_gc(p42, 16, p15, descr=<ArrayP 8>) | |
+637: setfield_gc(p40, p42, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+641: setfield_gc(p36, p38, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+652: setfield_gc(p36, ConstPtr(ptr63), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+666: setfield_gc(p36, p17, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+677: jump(p29, p36, descr=TargetToken(140248750874544)) | |
+704: --end of the loop-- | |
[f46595e6ab2] jit-log-opt-bridge} | |
[f4659834608] {jit-log-opt-bridge | |
# bridge out of Guard 0x1435520 with 42 ops | |
[p0, p1, p2, p3, p4] | |
+46: guard_not_invalidated(descr=<Guard0x7f8e370ea330>) [p1, p3, p2, p4, p0] | |
debug_merge_point(0, 0, '(if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f)') | |
debug_merge_point(0, 0, '#f') | |
debug_merge_point(0, 0, '(if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+46: guard_class(p2, 9625128, descr=<Guard0x7f8e370eb360>) [p2, p1, p3, None, p4, p0] | |
+58: p7 = getfield_gc_pure(p2, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+62: p9 = getarrayitem_gc_pure(p7, 3, descr=<ArrayP 8>) | |
+66: p11 = getarrayitem_gc_pure(p7, 14, descr=<ArrayP 8>) | |
+73: guard_value(p9, ConstPtr(ptr12), descr=<Guard0x7f8e370eb2f0>) [p9, p11, p1, p3, p2, p4, p0] | |
+92: p13 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+96: i15 = instance_ptr_eq(p13, ConstPtr(ptr14)) | |
guard_false(i15, descr=<Guard0x7f8e370eb280>) [p2, p11, p1, p3, None, p4, p0] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+115: guard_class(p4, ConstClass(W_Fixnum), descr=<Guard0x7f8e370eb210>) [p4, p11, p1, p3, p2, None, p0] | |
+127: i17 = getfield_gc_pure(p4, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+131: i19 = int_add_ovf(i17, 5) | |
guard_no_overflow(descr=<Guard0x7f8e370eb1a0>) [i17, i19, p11, p1, p3, p2, p4, p0] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p21 = new_with_vtable(9625432) | |
p23 = new_with_vtable(ConstClass(W_Fixnum)) | |
p25 = new_with_vtable(9625672) | |
+233: setfield_gc(p21, ConstPtr(ptr26), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+247: setfield_gc(p25, ConstPtr(ptr14), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p28 = new_with_vtable(9629776) | |
p30 = new_with_vtable(9625672) | |
+283: setfield_gc(p25, ConstPtr(ptr26), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+297: setfield_gc(p25, p4, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+301: setfield_gc(p21, p25, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+305: setfield_gc(p25, p11, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+309: setfield_gc(p30, p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+313: setfield_gc(p23, i19, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+317: setfield_gc(p21, p23, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+321: setfield_gc(p30, p3, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+325: setfield_gc(p30, p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+329: setfield_gc(p30, p4, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+333: setfield_gc(p28, p30, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+337: setfield_gc(p28, ConstPtr(ptr31), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+351: setfield_gc(p28, p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+355: jump(p21, p28, descr=TargetToken(140248750874544)) | |
+382: --end of the loop-- | |
[f4659877146] jit-log-opt-bridge} | |
[f4659da69a3] {jit-log-opt-bridge | |
# bridge out of Guard 0x14654b0 with 55 ops | |
[p0, p1, p2] | |
+46: guard_nonnull_class(p1, 9640312, descr=<Guard0x7f8e370f8e20>) [p0, p1, p2] | |
+64: p4 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+68: guard_not_invalidated(descr=<Guard0x7f8e370f8db0>) [p2, p4, p0, None] | |
debug_merge_point(0, 0, '(if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)') | |
debug_merge_point(0, 0, 'l2') | |
+68: guard_class(p0, 9625672, descr=<Guard0x7f8e370f8d40>) [p2, p0, None, None, None] | |
+80: p7 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+84: guard_nonnull_class(p2, 9629880, descr=<Guard0x7f8e370f8cd0>) [p2, p7, None, None, None] | |
+109: p9 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+113: guard_value(p9, ConstPtr(ptr10), descr=<Guard0x7f8e370f8c60>) [p9, p2, p7, None, None, None] | |
+132: i11 = getfield_gc(p2, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+136: guard_value(i11, 1, descr=<Guard0x7f8e370f8bf0>) [i11, p2, p7, None, None, None] | |
+146: p13 = getfield_gc_pure(p2, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+150: p14 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+154: p15 = getfield_gc_pure(p14, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+158: p16 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)') | |
+162: guard_class(p14, 9625672, descr=<Guard0x7f8e370f8b80>) [p16, p14, p15, p13, p7, None, None, None] | |
+175: p18 = getfield_gc_pure(p14, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+179: guard_class(p18, 9625128, descr=<Guard0x7f8e370f8b10>) [p16, p18, p14, p15, p13, p7, None, None, None] | |
+191: p20 = getfield_gc_pure(p18, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+195: p22 = getarrayitem_gc_pure(p20, 1, descr=<ArrayP 8>) | |
+199: p24 = getarrayitem_gc_pure(p20, 3, descr=<ArrayP 8>) | |
+203: p25 = getfield_gc_pure(p14, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+207: p27 = getarrayitem_gc_pure(p20, 14, descr=<ArrayP 8>) | |
+214: p28 = getfield_gc_pure(p14, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
debug_merge_point(0, 0, '(let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))') | |
debug_merge_point(0, 0, '(pair? l3)') | |
+218: guard_nonnull_class(p7, 9623144, descr=<Guard0x7f8e370f8aa0>) [p7, p28, p22, p16, p25, p27, p24, None, p15, p13, None, None, None, None] | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))') | |
debug_merge_point(0, 0, '(car l3)') | |
+236: p30 = getfield_gc_pure(p7, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+240: guard_nonnull_class(p30, 9623144, descr=<Guard0x7f8e370f8a30>) [p30, p28, p22, p16, p25, p27, p24, None, p15, p13, p7, None, None, None] | |
debug_merge_point(0, 0, '(list AppRand0_fresh_128)') | |
debug_merge_point(0, 0, '((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)') | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
debug_merge_point(0, 0, '(pair? l4)') | |
+259: guard_nonnull_class(p13, 9623144, descr=<Guard0x7f8e370f89c0>) [p13, p30, p28, p22, p16, p25, p27, p24, None, p15, None, p7, None, None, None] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125))') | |
debug_merge_point(0, 0, '(cdr l4)') | |
+278: p33 = getfield_gc_pure(p13, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+282: guard_nonnull(p33, descr=<Guard0x7f8e370f8950>) [p33, p30, p28, p22, p16, p25, p27, p24, None, p15, p13, p7, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))') | |
debug_merge_point(0, 0, '(car l4)') | |
+291: p34 = getfield_gc_pure(p13, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+295: guard_nonnull(p34, descr=<Guard0x7f8e370f88e0>) [p34, p33, p30, p28, p22, p16, p25, p27, p24, None, p15, p13, p7, None, None, None] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_122 ender-tree)') | |
+304: i36 = instance_ptr_eq(p15, ConstPtr(ptr35)) | |
guard_false(i36, descr=<Guard0x7f8e370f8870>) [p34, p33, p30, p28, p22, p16, p25, p27, p24, None, p15, p13, p7, None, None, None] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+323: jump(p34, p30, p15, p22, p13, p24, p25, p27, p7, p28, p16, p33, descr=TargetToken(140248751986496)) | |
+361: --end of the loop-- | |
[f4659dff0a9] jit-log-opt-bridge} | |
[f465a14e98c] {jit-log-opt-bridge | |
# bridge out of Guard 0x1435600 with 72 ops | |
[p0, p1, p2, p3, p4] | |
+46: guard_not_invalidated(descr=<Guard0x7f8e370f8f00>) [p1, p4, p0, p3, p2] | |
debug_merge_point(0, 0, '(if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2))') | |
debug_merge_point(0, 0, '(cdr l1)') | |
+46: guard_class(p2, 9625128, descr=<Guard0x7f8e37103bb0>) [p2, p1, p4, p0, p3, None] | |
+58: p7 = getfield_gc_pure(p2, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+62: p9 = getarrayitem_gc_pure(p7, 5, descr=<ArrayP 8>) | |
+66: guard_nonnull_class(p9, 9623288, descr=<Guard0x7f8e37103b40>) [p9, p1, p4, p0, p3, p2] | |
+85: p11 = getfield_gc_pure(p9, descr=<FieldP pycket.values.W_UnwrappedFixnumCons.inst__cdr 16>) | |
+89: guard_nonnull_class(p11, 9623288, descr=<Guard0x7f8e37103ad0>) [p11, p1, p4, p0, p3, p2] | |
debug_merge_point(0, 0, '(loop1 AppRand0_fresh_133 l2)') | |
+108: p14 = getarrayitem_gc_pure(p7, 9, descr=<ArrayP 8>) | |
+112: guard_class(p14, 9632160, descr=<Guard0x7f8e37103a60>) [p14, p1, p11, None, p4, p0, p3, p2] | |
+125: p16 = getfield_gc_pure(p14, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+129: guard_value(p16, ConstPtr(ptr17), descr=<Guard0x7f8e371039f0>) [p16, p1, p14, p11, None, p4, p0, p3, p2] | |
+148: p18 = getfield_gc_pure(p14, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+152: i19 = instance_ptr_eq(p2, p18) | |
guard_false(i19, descr=<Guard0x7f8e37103980>) [p18, p1, p2, p11, None, None, None, p3, None] | |
+161: p20 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+165: i21 = instance_ptr_eq(p20, p18) | |
guard_false(i21, descr=<Guard0x7f8e37103910>) [p18, p1, p2, p11, None, None, None, p3, None] | |
+174: p22 = getfield_gc_pure(p18, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2))') | |
debug_merge_point(0, 0, '(pair? l1)') | |
debug_merge_point(0, 0, '(if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)') | |
debug_merge_point(0, 0, '(let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2)))))') | |
debug_merge_point(0, 0, '(car l1)') | |
+178: i23 = getfield_gc_pure(p11, descr=<FieldS pycket.values.W_UnwrappedFixnumCons.inst__car 8>) | |
debug_merge_point(0, 0, '(let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))') | |
debug_merge_point(0, 0, '(vector-ref states j)') | |
+182: guard_class(p18, 9625128, descr=<Guard0x7f8e371038a0>) [p18, i23, p22, p11, p1, None, None, p3, None] | |
+196: p25 = getfield_gc_pure(p18, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+200: p27 = getarrayitem_gc_pure(p25, 4, descr=<ArrayP 8>) | |
+204: p29 = getarrayitem_gc_pure(p25, 0, descr=<ArrayP 8>) | |
+208: guard_nonnull_class(p27, ConstClass(W_Vector), descr=<Guard0x7f8e37103830>) [p27, p18, p29, i23, p22, p11, p1, None, None, p3, None] | |
+227: guard_nonnull_class(p29, ConstClass(W_Fixnum), descr=<Guard0x7f8e37103750>) [p27, p29, p18, None, i23, p22, p11, p1, None, None, p3, None] | |
+246: i32 = getfield_gc_pure(p29, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+250: i34 = int_ge(i32, 0) | |
guard_true(i34, descr=<Guard0x7f8e371036e0>) [i32, p29, p27, p18, None, i23, p22, p11, p1, None, None, p3, None] | |
+260: i35 = getfield_gc_pure(p27, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+264: i36 = int_lt(i32, i35) | |
guard_true(i36, descr=<Guard0x7f8e37103600>) [p29, p27, p18, None, i23, p22, p11, p1, None, None, p3, None] | |
+273: p37 = getfield_gc(p27, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+277: guard_class(p37, 9641744, descr=<Guard0x7f8e37103590>) [i32, p37, p27, p18, None, i23, p22, p11, p1, None, None, p3, None] | |
+289: p39 = getfield_gc(p27, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+293: p40 = getarrayitem_gc(p39, i32, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(conf-set-get AppRand0_fresh_137 ender)') | |
+298: p42 = getarrayitem_gc_pure(p25, 14, descr=<ArrayP 8>) | |
+305: guard_value(p42, ConstPtr(ptr43), descr=<Guard0x7f8e371034b0>) [p42, p40, p18, None, i23, p22, p11, p1, None, None, p3, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_221 (+ conf 1)]) (vector-ref state AppRand1_fresh_221))') | |
p45 = new_with_vtable(9625672) | |
p47 = new_with_vtable(ConstClass(W_Fixnum)) | |
p49 = new_with_vtable(9629776) | |
p51 = new_with_vtable(9625432) | |
+424: setfield_gc(p45, ConstPtr(ptr52), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p54 = new_with_vtable(9625672) | |
+449: setfield_gc(p51, p22, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+453: setfield_gc(p45, p47, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+457: setfield_gc(p45, ConstPtr(ptr55), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+471: setfield_gc(p45, p40, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+475: setfield_gc(p54, p18, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+479: setfield_gc(p54, p22, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+483: setfield_gc(p47, i23, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+487: setfield_gc(p54, p3, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+491: setfield_gc(p51, p54, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+495: setfield_gc(p54, p11, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+499: setfield_gc(p51, p47, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+503: setfield_gc(p49, p51, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+507: setfield_gc(p49, ConstPtr(ptr56), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+521: setfield_gc(p49, p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+525: jump(p45, p49, descr=TargetToken(140248750869264)) | |
+552: --end of the loop-- | |
[f465a1c193d] jit-log-opt-bridge} | |
[f465a73038d] {jit-log-opt-bridge | |
# bridge out of Guard 0x7f8e370c6f00 with 75 ops | |
[p0, p1, p2] | |
+46: guard_nonnull_class(p1, 9623144, descr=<Guard0x7f8e3710d9f0>) [p0, p1, p2] | |
+64: p4 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+68: guard_not_invalidated(descr=<Guard0x7f8e3710dec0>) [p2, p4, p0, None] | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))') | |
debug_merge_point(0, 0, '(car l3)') | |
+68: guard_class(p0, 9625672, descr=<Guard0x7f8e3710dc20>) [p0, None, None, p2] | |
+80: p7 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+84: guard_nonnull_class(p7, 9623144, descr=<Guard0x7f8e3710da60>) [p0, p7, None, None, p2] | |
+103: p9 = getfield_gc_pure(p7, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+107: guard_nonnull_class(p9, 9623144, descr=<Guard0x7f8e3710db40>) [p0, p9, None, None, p2] | |
debug_merge_point(0, 0, '(list AppRand0_fresh_128)') | |
debug_merge_point(0, 0, '((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)') | |
+126: p11 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+130: guard_class(p11, 9625128, descr=<Guard0x7f8e3710dbb0>) [p2, p11, p9, p4, p0, None] | |
+144: p13 = getfield_gc_pure(p11, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+148: p15 = getarrayitem_gc_pure(p13, 4, descr=<ArrayP 8>) | |
+153: p17 = getarrayitem_gc_pure(p13, 1, descr=<ArrayP 8>) | |
+158: p18 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
debug_merge_point(0, 0, '(pair? l4)') | |
+162: guard_nonnull_class(p17, 9623144, descr=<Guard0x7f8e3710dc90>) [p17, p18, p15, p7, p9, p4, None, p2] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125))') | |
debug_merge_point(0, 0, '(cdr l4)') | |
+181: p20 = getfield_gc_pure(p17, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+185: guard_nonnull(p20, descr=<Guard0x7f8e3710dad0>) [p20, p17, p18, p15, p7, p9, p4, None, p2] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))') | |
debug_merge_point(0, 0, '(car l4)') | |
+194: p21 = getfield_gc_pure(p17, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+198: guard_nonnull(p21, descr=<Guard0x7f8e3710dd00>) [p21, p20, p17, p18, p15, p7, p9, p4, None, p2] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_122 ender-tree)') | |
+207: i23 = instance_ptr_eq(p4, ConstPtr(ptr22)) | |
guard_false(i23, descr=<Guard0x7f8e3710dde0>) [p21, p20, p17, p18, p15, p7, p9, p4, None, p2] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+226: p24 = same_as(p21) | |
+226: p25 = same_as(p20) | |
+226: p26 = same_as(p9) | |
+226: label(p21, p9, p4, p15, p7, p17, p18, p2, p20, descr=TargetToken(140248750868624)) | |
p28 = new_with_vtable(9625672) | |
p30 = new_with_vtable(9623144) | |
p32 = new_with_vtable(9629776) | |
p34 = new_with_vtable(9625672) | |
+333: setfield_gc(p28, ConstPtr(ptr35), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+347: setfield_gc(p28, p30, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
p37 = new_with_vtable(9625552) | |
+362: setfield_gc(p34, p4, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+373: setfield_gc(p28, ConstPtr(ptr22), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p39 = new_with_vtable(9632160) | |
+405: setfield_gc(p37, p4, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+409: setfield_gc(p28, p21, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
p41 = new_with_vtable(9629880) | |
+424: setfield_gc(p32, p34, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+442: setfield_gc(p32, ConstPtr(ptr42), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+456: setfield_gc(p41, p2, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+467: setfield_gc(p37, p4, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+471: setfield_gc(p30, ConstPtr(ptr43), descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+479: setfield_gc(p30, p9, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+483: setfield_gc(p34, p18, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+487: setfield_gc(p34, p37, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+491: setfield_gc(p34, p17, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+495: setfield_gc(p37, p7, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_3 48>) | |
+499: setfield_gc(p37, p30, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_2 40>) | |
+503: setfield_gc(p39, ConstPtr(ptr44), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+517: setfield_gc(p39, p37, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+521: setfield_gc(p37, p39, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_1 32>) | |
+525: setfield_gc(p37, p15, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+529: setfield_gc(p41, p34, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+533: setfield_gc(p41, ConstPtr(ptr45), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+547: setfield_gc(p41, p20, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+551: setfield_gc(p32, p41, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+562: setfield_gc(p41, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+570: jump(p28, p32, descr=TargetToken(140248751981136)) | |
+604: --end of the loop-- | |
[f465a78cdc7] jit-log-opt-bridge} | |
[f465ac5a56b] {jit-log-opt-bridge | |
# bridge out of Guard 0x136c410 with 60 ops | |
[p0, p1] | |
+46: guard_not_invalidated(descr=<Guard0x7f8e371158a0>) [p0, p1] | |
debug_merge_point(0, 0, '(let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2))') | |
debug_merge_point(0, 0, '(CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)') | |
+46: guard_class(p1, 9625672, descr=<Guard0x7f8e37115520>) [p1, p0] | |
+58: p3 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+62: guard_class(p3, 9625128, descr=<Guard0x7f8e37115670>) [p1, p3, p0] | |
+75: p5 = getfield_gc_pure(p3, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+79: p7 = getarrayitem_gc_pure(p5, 11, descr=<ArrayP 8>) | |
+83: p8 = getfield_gc(p7, descr=<FieldP pycket.values.W_Cell.inst_value 8>) | |
+88: p10 = getarrayitem_gc_pure(p5, 7, descr=<ArrayP 8>) | |
+92: p12 = getarrayitem_gc_pure(p5, 10, descr=<ArrayP 8>) | |
+96: p13 = getfield_gc_pure(p1, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+100: p15 = getarrayitem_gc_pure(p5, 12, descr=<ArrayP 8>) | |
+104: p17 = getarrayitem_gc_pure(p5, 2, descr=<ArrayP 8>) | |
+108: p19 = getarrayitem_gc_pure(p5, 8, descr=<ArrayP 8>) | |
+112: p21 = getarrayitem_gc_pure(p5, 13, descr=<ArrayP 8>) | |
+116: p23 = getarrayitem_gc_pure(p5, 4, descr=<ArrayP 8>) | |
+120: p25 = getarrayitem_gc_pure(p5, 15, descr=<ArrayP 8>) | |
+134: guard_class(p8, 9632160, descr=<Guard0x7f8e37115590>) [p8, p1, p21, p17, p19, p12, p15, p10, p25, p13, p23, p0] | |
+147: p27 = getfield_gc_pure(p8, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+151: guard_value(p27, ConstPtr(ptr28), descr=<Guard0x7f8e37115830>) [p27, p1, p8, p21, p17, p19, p12, p15, p10, p25, p13, p23, p0] | |
+170: p29 = getfield_gc_pure(p8, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+174: i30 = instance_ptr_eq(p3, p29) | |
guard_false(i30, descr=<Guard0x7f8e371157c0>) [p29, p3, p1, p21, p17, p19, p12, p15, p10, p25, p13, p23, p0] | |
+183: p31 = getfield_gc_pure(p3, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+187: i32 = instance_ptr_eq(p31, p29) | |
guard_false(i32, descr=<Guard0x7f8e37115750>) [p29, p3, p1, p21, p17, p19, p12, p15, p10, p25, p13, p23, p0] | |
+196: p33 = getfield_gc_pure(p29, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([name (vector-ref names conf)]) (if name (let ([if_fresh_119 (< conf nb-nts)]) (if if_fresh_119 (let ([AppRand0_fresh_117 (let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))]) (list AppRand0_fresh_117)) (let ([AppRand0_fresh_118 (list name)]) (list AppRand0_fresh_118)))) (let ([prev (- conf 1)]) (let ([AppRand0_fresh_140 (let ([AppRand1_fresh_139 (vector-ref steps prev)]) (vector-ref enders AppRand1_fresh_139))]) ((rec (lambda (l1 l2) (let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)))) AppRand0_fresh_140 '())))))') | |
+200: p34 = same_as(p23) | |
+200: p35 = same_as(p29) | |
+200: p36 = same_as(p33) | |
+200: p37 = same_as(p13) | |
+200: p38 = same_as(p25) | |
+200: p39 = same_as(p10) | |
+200: p40 = same_as(p15) | |
+200: p41 = same_as(p12) | |
+200: p42 = same_as(p19) | |
+200: p43 = same_as(p17) | |
+200: p44 = same_as(p21) | |
+200: label(p33, p29, p10, p12, p13, p15, p17, p19, p21, p23, p25, p1, p0, descr=TargetToken(140248750870224)) | |
p46 = new_with_vtable(9625128) | |
p48 = new_array(9, descr=<ArrayP 8>) | |
p50 = new_with_vtable(9629776) | |
+311: setfield_gc(p46, p33, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+315: setarrayitem_gc(p48, 0, p10, descr=<ArrayP 8>) | |
+319: setarrayitem_gc(p48, 1, p12, descr=<ArrayP 8>) | |
+323: setarrayitem_gc(p48, 2, p13, descr=<ArrayP 8>) | |
+327: setarrayitem_gc(p48, 3, p15, descr=<ArrayP 8>) | |
+338: setarrayitem_gc(p48, 4, p17, descr=<ArrayP 8>) | |
+342: setarrayitem_gc(p48, 5, p19, descr=<ArrayP 8>) | |
+346: setarrayitem_gc(p48, 6, p21, descr=<ArrayP 8>) | |
+350: setarrayitem_gc(p48, 7, p23, descr=<ArrayP 8>) | |
+354: setarrayitem_gc(p48, 8, p25, descr=<ArrayP 8>) | |
+358: setfield_gc(p46, p48, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+362: setfield_gc(p46, p29, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+366: setfield_gc(p50, p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+377: setfield_gc(p50, ConstPtr(ptr60), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+391: setfield_gc(p50, p0, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+402: jump(p46, p50, descr=TargetToken(21994160)) | |
+429: --end of the loop-- | |
[f465aca7733] jit-log-opt-bridge} | |
[f465b16f95e] {jit-log-opt-bridge | |
# bridge out of Guard 0x153a640 with 117 ops | |
[p0, p1, p2] | |
+46: guard_nonnull_class(p0, 9629880, descr=<Guard0x7f8e37107d70>) [p0, p1, p2] | |
+64: p4 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+68: guard_value(p4, ConstPtr(ptr5), descr=<Guard0x14f1bb0>) [p4, p0, p1, p2] | |
+87: i6 = getfield_gc(p0, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+91: guard_value(i6, 1, descr=<Guard0x14f1b40>) [i6, p0, p1, p2] | |
+101: p8 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+105: p9 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+109: p10 = getfield_gc_pure(p9, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+113: p11 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+117: guard_not_invalidated(descr=<Guard0x14f1ad0>) [p11, p9, p10, p8, p1, p2] | |
debug_merge_point(0, 0, '(cons AppRand0_fresh_35 AppRand1_fresh_36)') | |
+117: guard_nonnull_class(p8, 9623144, descr=<Guard0x14f1a60>) [p11, p9, p8, None, None, None, p1, p2] | |
+136: guard_nonnull_class(p11, 9629776, descr=<Guard0x14f19f0>) [p11, None, None, p8, p1, p2] | |
+156: p15 = getfield_gc_pure(p11, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+161: guard_value(p15, ConstPtr(ptr16), descr=<Guard0x14f1980>) [p15, p11, None, None, p8, p1, p2] | |
+180: i17 = getfield_gc(p11, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+185: guard_value(i17, 0, descr=<Guard0x14f1910>) [i17, p11, None, None, p8, p1, p2] | |
+195: p19 = getfield_gc_pure(p11, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+200: p20 = getfield_gc_pure(p19, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+204: p21 = getfield_gc_pure(p11, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(cons AppRand0_fresh_123 l2)') | |
+209: guard_class(p19, 9625672, descr=<Guard0x14f18a0>) [p21, p19, p20, None, None, p8, p1, p2] | |
+222: p23 = getfield_gc_pure(p19, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+226: guard_nonnull_class(p21, 9629880, descr=<Guard0x14f1830>) [p21, p23, None, None, None, p8, p1, p2] | |
+244: p25 = getfield_gc_pure(p21, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+248: guard_value(p25, ConstPtr(ptr26), descr=<Guard0x14f17c0>) [p25, p21, p23, None, None, None, p8, p1, p2] | |
+267: i27 = getfield_gc(p21, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+271: guard_value(i27, 1, descr=<Guard0x14f1750>) [i27, p21, p23, None, None, None, p8, p1, p2] | |
+281: p29 = getfield_gc_pure(p21, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+285: p30 = getfield_gc_pure(p21, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+289: p31 = getfield_gc_pure(p30, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+294: p32 = getfield_gc_pure(p21, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '(loop4 AppRand0_fresh_124 AppRand1_fresh_125)') | |
+298: guard_class(p30, 9625672, descr=<Guard0x14f16e0>) [p32, p30, p31, p29, p23, None, None, None, p8, p1, p2] | |
+312: p34 = getfield_gc_pure(p30, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+317: guard_class(p34, 9625552, descr=<Guard0x14f1600>) [p32, p34, p30, p31, p29, p23, None, None, None, p8, p1, p2] | |
+329: p36 = getfield_gc_pure(p34, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_1 32>) | |
+333: guard_class(p36, 9632160, descr=<Guard0x14f1590>) [p36, p32, p30, None, None, p29, p23, None, None, None, p8, p1, p2] | |
+346: p38 = getfield_gc_pure(p36, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+350: guard_value(p38, ConstPtr(ptr39), descr=<Guard0x14f1520>) [p38, p32, p30, p36, None, None, p29, p23, None, None, None, p8, p1, p2] | |
+369: p40 = getfield_gc_pure(p36, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+373: i41 = instance_ptr_eq(p34, p40) | |
guard_true(i41, descr=<Guard0x14f14b0>) [p40, p32, p34, None, None, p29, p23, None, None, None, p8, p1, p2] | |
+382: p42 = getfield_gc_pure(p40, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
debug_merge_point(0, 0, '(pair? l4)') | |
+387: guard_nonnull_class(p29, 9640312, descr=<Guard0x14f1440>) [p29, p34, p42, p32, None, None, None, p23, None, None, None, p8, p1, p2] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))') | |
debug_merge_point(0, 0, '(cdr l3)') | |
+406: p44 = getfield_gc_pure(p34, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_3 48>) | |
+410: guard_nonnull_class(p44, 9623144, descr=<Guard0x14f13d0>) [p44, p34, p42, p32, None, None, p29, p23, None, None, None, p8, p1, p2] | |
+430: p46 = getfield_gc_pure(p44, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+435: guard_nonnull_class(p46, 9640312, descr=<Guard0x14f1360>) [p46, p34, p42, p32, None, None, p29, p23, None, None, None, p8, p1, p2] | |
debug_merge_point(0, 0, '(loop3 AppRand0_fresh_126 l2)') | |
+454: p48 = getfield_gc_pure(p34, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+458: guard_class(p48, 9632160, descr=<Guard0x14f12f0>) [p48, p32, p46, p34, p42, None, None, None, p29, p23, None, None, None, p8, p1, p2] | |
+472: p50 = getfield_gc_pure(p48, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+477: guard_value(p50, ConstPtr(ptr51), descr=<Guard0x14f1280>) [p50, p32, p48, p46, p34, p42, None, None, None, p29, p23, None, None, None, p8, p1, p2] | |
+496: p52 = getfield_gc_pure(p48, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+501: i53 = instance_ptr_eq(p34, p52) | |
guard_false(i53, descr=<Guard0x14f1210>) [p52, p32, p34, p46, None, None, None, None, None, None, p23, None, None, None, p8, p1, p2] | |
+510: p54 = getfield_gc_pure(p34, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+514: i55 = instance_ptr_eq(p54, p52) | |
guard_false(i55, descr=<Guard0x14f11a0>) [p52, p32, p34, p46, None, None, None, None, None, None, p23, None, None, None, p8, p1, p2] | |
+523: p56 = getfield_gc_pure(p52, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))') | |
debug_merge_point(0, 0, '(pair? l3)') | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+527: guard_class(p52, 9625128, descr=<Guard0x14f1130>) [p52, p56, p46, None, None, p32, None, None, None, p23, None, None, None, p8, p1, p2] | |
+540: p58 = getfield_gc_pure(p52, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+544: p60 = getarrayitem_gc_pure(p58, 2, descr=<ArrayP 8>) | |
+548: p62 = getarrayitem_gc_pure(p58, 5, descr=<ArrayP 8>) | |
+552: p64 = getarrayitem_gc_pure(p58, 3, descr=<ArrayP 8>) | |
+556: guard_value(p60, ConstPtr(ptr65), descr=<Guard0x14f10c0>) [p60, p64, p62, p52, p56, p46, None, None, p32, None, None, None, p23, None, None, None, p8, p1, p2] | |
+575: p66 = getfield_gc_pure(p52, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+579: i68 = instance_ptr_eq(p66, ConstPtr(ptr67)) | |
guard_false(i68, descr=<Guard0x14f1050>) [p52, p64, p62, None, p56, p46, None, None, p32, None, None, None, p23, None, None, None, p8, p1, p2] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+598: guard_class(p64, ConstClass(W_Fixnum), descr=<Guard0x14f0fe0>) [p64, None, p62, p52, p56, p46, None, None, p32, None, None, None, p23, None, None, None, p8, p1, p2] | |
+610: i70 = getfield_gc_pure(p64, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+614: i72 = int_add_ovf(i70, 5) | |
guard_no_overflow(descr=<Guard0x14f0f70>) [i70, i72, p64, p62, p52, p56, p46, None, None, p32, None, None, None, p23, None, None, None, p8, p1, p2] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p74 = new_with_vtable(9625432) | |
p76 = new_with_vtable(ConstClass(W_Fixnum)) | |
p78 = new_with_vtable(9625672) | |
+730: setfield_gc(p74, ConstPtr(ptr79), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+744: setfield_gc(p78, ConstPtr(ptr67), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p81 = new_with_vtable(9629776) | |
p83 = new_with_vtable(9625672) | |
+787: setfield_gc(p78, ConstPtr(ptr79), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p85 = new_with_vtable(9623144) | |
p87 = new_with_vtable(9623144) | |
p89 = new_with_vtable(9623144) | |
+855: setfield_gc(p85, p23, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+859: setfield_gc(p89, p1, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+870: setfield_gc(p89, p2, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+874: setfield_gc(p87, p8, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+878: setfield_gc(p78, p64, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+882: setfield_gc(p74, p78, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+893: setfield_gc(p78, p62, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+904: setfield_gc(p83, p56, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+915: setfield_gc(p76, i72, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+919: setfield_gc(p74, p76, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+923: setfield_gc(p83, p85, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+927: setfield_gc(p83, p52, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+931: setfield_gc(p83, p46, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+935: setfield_gc(p87, p89, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+939: setfield_gc(p85, p87, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+943: setfield_gc(p81, p83, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+954: setfield_gc(p81, ConstPtr(ptr90), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+968: setfield_gc(p81, p32, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+979: jump(p74, p81, descr=TargetToken(140248750874544)) | |
+1006: --end of the loop-- | |
[f465b1e2337] jit-log-opt-bridge} | |
[f465b97c2e7] {jit-log-opt-bridge | |
# bridge out of Guard 0x14411a0 with 133 ops | |
[p0, p1, p2, p3] | |
+46: guard_not_invalidated(descr=<Guard0x1446e20>) [p3, p2, p0, p1] | |
debug_merge_point(0, 0, '(if if_fresh_119 (let ([AppRand0_fresh_117 (let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))]) (list AppRand0_fresh_117)) (let ([AppRand0_fresh_118 (list name)]) (list AppRand0_fresh_118)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_117 (let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))]) (list AppRand0_fresh_117))') | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))') | |
debug_merge_point(0, 0, '(vector-ref toks i)') | |
+46: guard_class(p0, 9625128, descr=<Guard0x14468e0>) [p0, p3, p2, None, p1] | |
+58: p6 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+62: p8 = getarrayitem_gc_pure(p6, 6, descr=<ArrayP 8>) | |
+66: p10 = getarrayitem_gc_pure(p6, 1, descr=<ArrayP 8>) | |
+70: guard_nonnull_class(p8, ConstClass(W_Vector), descr=<Guard0x1446870>) [p8, p10, p3, p2, p0, p1] | |
+89: guard_nonnull_class(p10, ConstClass(W_Fixnum), descr=<Guard0x1446790>) [p8, p10, None, p3, p2, p0, p1] | |
+109: i13 = getfield_gc_pure(p10, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+113: i15 = int_ge(i13, 0) | |
guard_true(i15, descr=<Guard0x14466b0>) [i13, p10, p8, None, p3, p2, p0, p1] | |
+123: i16 = getfield_gc_pure(p8, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+127: i17 = int_lt(i13, i16) | |
guard_true(i17, descr=<Guard0x1446640>) [p10, p8, None, p3, p2, p0, p1] | |
+136: p18 = getfield_gc(p8, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+140: guard_class(p18, 9641744, descr=<Guard0x14465d0>) [i13, p18, p8, None, p3, p2, p0, p1] | |
+154: p20 = getfield_gc(p8, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+158: p21 = getarrayitem_gc(p20, i13, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(car AppRand0_fresh_115)') | |
+163: guard_nonnull_class(p21, 9623144, descr=<Guard0x14461e0>) [p21, None, p3, p2, p0, p1] | |
+182: p23 = getfield_gc_pure(p21, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+186: guard_nonnull_class(p23, 9624376, descr=<Guard0x1446100>) [p23, None, p3, p2, p0, p1] | |
debug_merge_point(0, 0, '(list name AppRand1_fresh_116)') | |
+205: guard_nonnull_class(p2, 9623144, descr=<Guard0x146fb40>) [p2, p23, None, p3, None, p0, p1] | |
debug_merge_point(0, 0, '(list AppRand0_fresh_117)') | |
+223: guard_nonnull_class(p3, 9629880, descr=<Guard0x146f600>) [p3, p23, None, None, p2, None, None] | |
+248: p27 = getfield_gc_pure(p3, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+252: guard_value(p27, ConstPtr(ptr28), descr=<Guard0x146f520>) [p27, p3, p23, None, None, p2, None, None] | |
+271: i29 = getfield_gc(p3, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+275: guard_value(i29, 1, descr=<Guard0x146f4b0>) [i29, p3, p23, None, None, p2, None, None] | |
+285: p31 = getfield_gc_pure(p3, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+289: p32 = getfield_gc_pure(p3, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+293: p33 = getfield_gc_pure(p32, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+297: p34 = getfield_gc_pure(p3, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)') | |
+301: guard_class(p32, 9625672, descr=<Guard0x146f360>) [p34, p32, p33, p31, p23, None, None, p2, None, None] | |
+314: p36 = getfield_gc_pure(p32, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+318: guard_class(p36, 9625128, descr=<Guard0x146f2f0>) [p34, p36, p32, p33, p31, p23, None, None, p2, None, None] | |
+330: p38 = getfield_gc_pure(p36, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+334: p40 = getarrayitem_gc_pure(p38, 1, descr=<ArrayP 8>) | |
+338: p42 = getarrayitem_gc_pure(p38, 3, descr=<ArrayP 8>) | |
+342: p43 = getfield_gc_pure(p32, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+346: p45 = getarrayitem_gc_pure(p38, 14, descr=<ArrayP 8>) | |
+353: p46 = getfield_gc_pure(p32, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
debug_merge_point(0, 0, '(let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))') | |
debug_merge_point(0, 0, '(pair? l3)') | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))') | |
debug_merge_point(0, 0, '(car l3)') | |
debug_merge_point(0, 0, '(list AppRand0_fresh_128)') | |
debug_merge_point(0, 0, '((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)') | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
debug_merge_point(0, 0, '(pair? l4)') | |
+357: guard_nonnull_class(p31, 9623144, descr=<Guard0x1485980>) [p31, p43, p42, p34, p45, p40, p46, None, p33, None, p23, None, None, p2, None, None] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125))') | |
debug_merge_point(0, 0, '(cdr l4)') | |
+375: p48 = getfield_gc_pure(p31, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+379: guard_nonnull(p48, descr=<Guard0x1485280>) [p48, p43, p42, p34, p45, p40, p46, None, p33, p31, p23, None, None, p2, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))') | |
debug_merge_point(0, 0, '(car l4)') | |
+388: p49 = getfield_gc_pure(p31, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+392: guard_nonnull(p49, descr=<Guard0x1484bf0>) [p49, p48, p43, p42, p34, p45, p40, p46, None, p33, p31, p23, None, None, p2, None, None] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_122 ender-tree)') | |
+401: i51 = instance_ptr_eq(p33, ConstPtr(ptr50)) | |
guard_false(i51, descr=<Guard0x14846b0>) [p49, p48, p43, p42, p34, p45, p40, p46, None, p33, p31, p23, None, None, p2, None, None] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+420: p52 = same_as(p49) | |
+420: p53 = same_as(p48) | |
+420: label(p49, p2, p23, p33, p40, p31, p42, p43, p45, p46, p34, p48, descr=TargetToken(20390160)) | |
p55 = new_with_vtable(9625672) | |
p57 = new_with_vtable(9623144) | |
p59 = new_with_vtable(9623144) | |
p61 = new_with_vtable(9623144) | |
+541: setfield_gc(p57, ConstPtr(ptr62), descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+549: setfield_gc(p61, ConstPtr(ptr62), descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+557: setfield_gc(p61, p23, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+561: setfield_gc(p59, p2, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
p64 = new_with_vtable(9629776) | |
p66 = new_with_vtable(9625672) | |
+587: setfield_gc(p55, ConstPtr(ptr67), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+615: setfield_gc(p55, p57, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
p69 = new_with_vtable(9625552) | |
+630: setfield_gc(p66, p33, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+634: setfield_gc(p55, ConstPtr(ptr50), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p71 = new_with_vtable(9623144) | |
+673: setfield_gc(p59, p61, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+677: setfield_gc(p57, p59, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
p73 = new_with_vtable(9632160) | |
p75 = new_with_vtable(9632160) | |
+710: setfield_gc(p73, ConstPtr(ptr76), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
p78 = new_with_vtable(9625128) | |
+742: setfield_gc(p69, p33, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p80 = new_array(6, descr=<ArrayP 8>) | |
+786: setfield_gc(p69, p33, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+804: setfield_gc(p73, p69, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+808: setfield_gc(p78, p33, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+819: setfield_gc(p55, p49, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
p82 = new_with_vtable(9629880) | |
+848: setfield_gc(p64, p66, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+873: setfield_gc(p64, ConstPtr(ptr83), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+887: setfield_gc(p82, p34, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+898: setfield_gc(p78, p33, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+909: setfield_gc(p71, ConstPtr(ptr62), descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+917: setfield_gc(p71, p59, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+921: setfield_gc(p66, p46, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+925: setfield_gc(p66, p69, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+936: setfield_gc(p66, p31, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+940: setfield_gc(p69, p71, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_3 48>) | |
+944: setfield_gc(p69, p57, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_2 40>) | |
+948: setfield_gc(p75, ConstPtr(ptr84), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+969: setfield_gc(p75, p78, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+973: setfield_gc(p69, p73, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_1 32>) | |
+977: setarrayitem_gc(p80, 0, p40, descr=<ArrayP 8>) | |
+995: setarrayitem_gc(p80, 1, p31, descr=<ArrayP 8>) | |
+999: setarrayitem_gc(p80, 2, p42, descr=<ArrayP 8>) | |
+1003: setarrayitem_gc(p80, 3, p43, descr=<ArrayP 8>) | |
+1007: setarrayitem_gc(p80, 4, p75, descr=<ArrayP 8>) | |
+1011: setarrayitem_gc(p80, 5, p45, descr=<ArrayP 8>) | |
+1015: setfield_gc(p78, p80, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+1019: setfield_gc(p69, p75, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+1023: setfield_gc(p82, p66, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+1027: setfield_gc(p82, ConstPtr(ptr91), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+1041: setfield_gc(p82, p48, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+1052: setfield_gc(p64, p82, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+1063: setfield_gc(p82, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+1071: jump(p55, p64, descr=TargetToken(140248751981136)) | |
+1105: --end of the loop-- | |
[f465ba03b4c] jit-log-opt-bridge} | |
[f465c0bf728] {jit-log-opt-bridge | |
# bridge out of Guard 0x7f8e370c3440 with 68 ops | |
[p0, p1, p2, p3, p4, p5] | |
+46: guard_nonnull_class(p0, 9640312, descr=<Guard0x7f8e34f3cbf0>) [p0, p2, p4, p3, p1, p5] | |
+65: guard_not_invalidated(descr=<Guard0x7f8e34f3cb80>) [p1, p0, p2, p4, p3, None, p5] | |
debug_merge_point(0, 0, '(loop1 AppRand0_fresh_133 l2)') | |
+65: guard_class(p3, 9625128, descr=<Guard0x7f8e34f3cb10>) [p1, p3, p0, p2, p4, None, None, p5] | |
+77: p9 = getfield_gc_pure(p3, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+81: p11 = getarrayitem_gc_pure(p9, 9, descr=<ArrayP 8>) | |
+86: guard_class(p11, 9632160, descr=<Guard0x7f8e34f3caa0>) [p11, p1, p0, p2, p4, p3, None, p5] | |
+99: p13 = getfield_gc_pure(p11, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+103: guard_value(p13, ConstPtr(ptr14), descr=<Guard0x7f8e34f3ca30>) [p13, p1, p11, p0, p2, p4, p3, None, p5] | |
+122: p15 = getfield_gc_pure(p11, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+126: i16 = instance_ptr_eq(p3, p15) | |
guard_false(i16, descr=<Guard0x7f8e34f3c9c0>) [p15, p1, p3, p0, None, p4, None, None, None] | |
+135: p17 = getfield_gc_pure(p3, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+139: i18 = instance_ptr_eq(p17, p15) | |
guard_false(i18, descr=<Guard0x7f8e34f3c950>) [p15, p1, p3, p0, None, p4, None, None, None] | |
+148: p19 = getfield_gc_pure(p15, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2))') | |
debug_merge_point(0, 0, '(pair? l1)') | |
debug_merge_point(0, 0, '(if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)') | |
debug_merge_point(0, 0, 'l2') | |
+148: guard_nonnull_class(p1, 9629880, descr=<Guard0x7f8e34f3c8e0>) [p1, None, None, p4, None, None, None] | |
+167: p21 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+171: guard_value(p21, ConstPtr(ptr22), descr=<Guard0x7f8e34f3c870>) [p21, p1, None, None, p4, None, None, None] | |
+190: i23 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+194: guard_value(i23, 1, descr=<Guard0x7f8e34f3c800>) [i23, p1, None, None, p4, None, None, None] | |
+204: p25 = getfield_gc_pure(p1, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+208: p26 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+212: p27 = getfield_gc_pure(p26, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+216: p28 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
debug_merge_point(0, 0, '((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)') | |
+220: guard_class(p26, 9625672, descr=<Guard0x7f8e34f3c790>) [p28, p26, p27, p25, None, None, p4, None, None, None] | |
+233: p30 = getfield_gc_pure(p26, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+237: guard_class(p30, 9625128, descr=<Guard0x7f8e34f3c720>) [p28, p30, p26, p27, p25, None, None, p4, None, None, None] | |
+250: p32 = getfield_gc_pure(p30, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+254: p34 = getarrayitem_gc_pure(p32, 1, descr=<ArrayP 8>) | |
+258: p36 = getarrayitem_gc_pure(p32, 3, descr=<ArrayP 8>) | |
+262: p37 = getfield_gc_pure(p26, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+266: p39 = getarrayitem_gc_pure(p32, 14, descr=<ArrayP 8>) | |
+273: p40 = getfield_gc_pure(p26, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
debug_merge_point(0, 0, '(let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))') | |
debug_merge_point(0, 0, '(pair? l3)') | |
+277: guard_nonnull_class(p4, 9623144, descr=<Guard0x7f8e34f3c6b0>) [p4, p34, p40, p28, p37, p36, p39, None, p27, p25, None, None, None, None, None, None] | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))') | |
debug_merge_point(0, 0, '(car l3)') | |
+296: p42 = getfield_gc_pure(p4, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+300: guard_nonnull_class(p42, 9623144, descr=<Guard0x7f8e34f3c640>) [p42, p34, p40, p28, p37, p36, p39, None, p27, p25, None, None, p4, None, None, None] | |
debug_merge_point(0, 0, '(list AppRand0_fresh_128)') | |
debug_merge_point(0, 0, '((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)') | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
debug_merge_point(0, 0, '(pair? l4)') | |
+319: guard_nonnull_class(p25, 9623144, descr=<Guard0x7f8e34f3c5d0>) [p25, p42, p34, p40, p28, p37, p36, p39, None, p27, None, None, None, p4, None, None, None] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125))') | |
debug_merge_point(0, 0, '(cdr l4)') | |
+338: p45 = getfield_gc_pure(p25, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+342: guard_nonnull(p45, descr=<Guard0x7f8e34f3c560>) [p45, p42, p34, p40, p28, p37, p36, p39, None, p27, p25, None, None, p4, None, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))') | |
debug_merge_point(0, 0, '(car l4)') | |
+351: p46 = getfield_gc_pure(p25, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+355: guard_nonnull(p46, descr=<Guard0x7f8e34f3c480>) [p46, p45, p42, p34, p40, p28, p37, p36, p39, None, p27, p25, None, None, p4, None, None, None] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_122 ender-tree)') | |
+364: i48 = instance_ptr_eq(p27, ConstPtr(ptr47)) | |
guard_false(i48, descr=<Guard0x7f8e34f3c410>) [p46, p45, p42, p34, p40, p28, p37, p36, p39, None, p27, p25, None, None, p4, None, None, None] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+383: jump(p46, p42, p27, p34, p25, p36, p37, p39, p4, p40, p28, p45, descr=TargetToken(140248751986496)) | |
+414: --end of the loop-- | |
[f465c14484a] jit-log-opt-bridge} | |
[f465d0c186d] {jit-log-opt-bridge | |
# bridge out of Guard 0x7f8e370b50c0 with 68 ops | |
[p0, p1] | |
+46: guard_nonnull_class(p0, 9629776, descr=<Guard0x7f8e34f3d130>) [p0, p1] | |
+65: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+69: guard_value(p3, ConstPtr(ptr4), descr=<Guard0x7f8e34f3d0c0>) [p3, p0, p1] | |
+88: i5 = getfield_gc(p0, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+92: guard_value(i5, 0, descr=<Guard0x7f8e34f3d050>) [i5, p0, p1] | |
+102: p7 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+106: p8 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+110: guard_not_invalidated(descr=<Guard0x7f8e34f3cfe0>) [p7, p8, p1] | |
debug_merge_point(0, 0, '(CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)') | |
+110: guard_class(p7, 9625672, descr=<Guard0x7f8e34f3cf70>) [p7, p8, p1] | |
+123: p10 = getfield_gc_pure(p7, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+127: guard_class(p10, 9625128, descr=<Guard0x7f8e34f3cf00>) [p7, p10, p8, p1] | |
+140: p12 = getfield_gc_pure(p10, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+144: p14 = getarrayitem_gc_pure(p12, 11, descr=<ArrayP 8>) | |
+149: p15 = getfield_gc(p14, descr=<FieldP pycket.values.W_Cell.inst_value 8>) | |
+153: p17 = getarrayitem_gc_pure(p12, 16, descr=<ArrayP 8>) | |
+161: p18 = getfield_gc_pure(p7, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+165: p20 = getarrayitem_gc_pure(p12, 0, descr=<ArrayP 8>) | |
+170: p22 = getarrayitem_gc_pure(p12, 12, descr=<ArrayP 8>) | |
+175: p24 = getarrayitem_gc_pure(p12, 2, descr=<ArrayP 8>) | |
+180: p26 = getarrayitem_gc_pure(p12, 8, descr=<ArrayP 8>) | |
+185: p28 = getarrayitem_gc_pure(p12, 13, descr=<ArrayP 8>) | |
+190: p30 = getarrayitem_gc_pure(p12, 4, descr=<ArrayP 8>) | |
+202: p32 = getarrayitem_gc_pure(p12, 15, descr=<ArrayP 8>) | |
+217: guard_class(p15, 9632160, descr=<Guard0x7f8e34f3ce90>) [p15, p7, p20, p32, p18, p28, p30, p24, p22, p26, p17, p8, p1] | |
+230: p34 = getfield_gc_pure(p15, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+234: guard_value(p34, ConstPtr(ptr35), descr=<Guard0x7f8e34f3ce20>) [p34, p7, p15, p20, p32, p18, p28, p30, p24, p22, p26, p17, p8, p1] | |
+253: p36 = getfield_gc_pure(p15, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+257: i37 = instance_ptr_eq(p10, p36) | |
guard_false(i37, descr=<Guard0x7f8e34f3cdb0>) [p36, p10, p7, p20, p32, p18, p28, p30, p24, p22, p26, p17, p8, p1] | |
+266: p38 = getfield_gc_pure(p10, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+270: i39 = instance_ptr_eq(p38, p36) | |
guard_false(i39, descr=<Guard0x7f8e34f3cd40>) [p36, p10, p7, p20, p32, p18, p28, p30, p24, p22, p26, p17, p8, p1] | |
+279: p40 = getfield_gc_pure(p36, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([name (vector-ref names conf)]) (if name (let ([if_fresh_119 (< conf nb-nts)]) (if if_fresh_119 (let ([AppRand0_fresh_117 (let ([AppRand1_fresh_116 (let ([AppRand0_fresh_115 (vector-ref toks i)]) (car AppRand0_fresh_115))]) (list name AppRand1_fresh_116))]) (list AppRand0_fresh_117)) (let ([AppRand0_fresh_118 (list name)]) (list AppRand0_fresh_118)))) (let ([prev (- conf 1)]) (let ([AppRand0_fresh_140 (let ([AppRand1_fresh_139 (vector-ref steps prev)]) (vector-ref enders AppRand1_fresh_139))]) ((rec (lambda (l1 l2) (let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)))) AppRand0_fresh_140 '())))))') | |
+284: p41 = same_as(p36) | |
+284: p42 = same_as(p22) | |
+284: p43 = same_as(p24) | |
+284: p44 = same_as(p26) | |
+284: p45 = same_as(p28) | |
+284: p46 = same_as(p18) | |
+284: p47 = same_as(p40) | |
+284: p48 = same_as(p20) | |
+284: p49 = same_as(p17) | |
+284: p50 = same_as(p30) | |
+284: p51 = same_as(p32) | |
+284: label(p40, p36, p17, p18, p20, p22, p24, p26, p28, p30, p32, p7, p8, p1, descr=TargetToken(20395120)) | |
p53 = new_with_vtable(9625128) | |
p55 = new_array(9, descr=<ArrayP 8>) | |
p57 = new_with_vtable(9629880) | |
+395: setfield_gc(p53, p40, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+399: setarrayitem_gc(p55, 0, p17, descr=<ArrayP 8>) | |
+403: setarrayitem_gc(p55, 1, p18, descr=<ArrayP 8>) | |
+414: setarrayitem_gc(p55, 2, p20, descr=<ArrayP 8>) | |
+418: setarrayitem_gc(p55, 3, p22, descr=<ArrayP 8>) | |
+422: setarrayitem_gc(p55, 4, p24, descr=<ArrayP 8>) | |
+426: setarrayitem_gc(p55, 5, p26, descr=<ArrayP 8>) | |
+437: setarrayitem_gc(p55, 6, p28, descr=<ArrayP 8>) | |
+441: setarrayitem_gc(p55, 7, p30, descr=<ArrayP 8>) | |
+445: setarrayitem_gc(p55, 8, p32, descr=<ArrayP 8>) | |
+449: setfield_gc(p53, p55, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+453: setfield_gc(p53, p36, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+457: setfield_gc(p57, p1, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+461: setfield_gc(p57, p7, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+472: setfield_gc(p57, ConstPtr(ptr4), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+486: setfield_gc(p57, p8, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+497: setfield_gc(p57, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+505: jump(p53, p57, descr=TargetToken(21994160)) | |
+532: --end of the loop-- | |
[f465d125910] jit-log-opt-bridge} | |
[f465d5dbeb6] {jit-log-opt-bridge | |
# bridge out of Guard 0x7f8e370c3590 with 51 ops | |
[p0, p1, p2, p3, p4] | |
+46: guard_not_invalidated(descr=<Guard0x1371590>) [p0, p3, p2, p4, p1] | |
debug_merge_point(0, 0, '(if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))') | |
debug_merge_point(0, 0, '(let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2))))') | |
debug_merge_point(0, 0, '(let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))') | |
debug_merge_point(0, 0, '(>= k i)') | |
+46: guard_class(p2, 9625128, descr=<Guard0x7f8e35015210>) [p2, p0, p3, None, p4, p1] | |
+58: p7 = getfield_gc_pure(p2, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+62: p9 = getarrayitem_gc_pure(p7, 10, descr=<ArrayP 8>) | |
+67: guard_nonnull_class(p4, ConstClass(W_Fixnum), descr=<Guard0x7f8e350151a0>) [p4, p9, p0, p3, p2, None, p1] | |
+85: guard_nonnull_class(p9, ConstClass(W_Fixnum), descr=<Guard0x7f8e35015130>) [p9, p4, None, p0, p3, p2, None, p1] | |
+104: i12 = getfield_gc_pure(p4, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+108: i13 = getfield_gc_pure(p9, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+112: i14 = int_ge(i12, i13) | |
guard_false(i14, descr=<Guard0x7f8e350150c0>) [None, p0, p3, p2, p4, p1] | |
debug_merge_point(0, 0, '(if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f)') | |
debug_merge_point(0, 0, '#f') | |
debug_merge_point(0, 0, '(if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+121: p16 = getarrayitem_gc_pure(p7, 3, descr=<ArrayP 8>) | |
+126: p18 = getarrayitem_gc_pure(p7, 14, descr=<ArrayP 8>) | |
+134: guard_value(p16, ConstPtr(ptr19), descr=<Guard0x7f8e35015050>) [p16, p18, None, p0, p3, p2, p4, p1] | |
+153: p20 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+157: i22 = instance_ptr_eq(p20, ConstPtr(ptr21)) | |
guard_false(i22, descr=<Guard0x7f8e35014fe0>) [p2, p18, None, p0, p3, None, p4, p1] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+176: i24 = int_add_ovf(i12, 5) | |
guard_no_overflow(descr=<Guard0x7f8e35014f70>) [i12, i24, p18, None, p0, p3, p2, p4, p1] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p26 = new_with_vtable(9625432) | |
p28 = new_with_vtable(ConstClass(W_Fixnum)) | |
p30 = new_with_vtable(9625672) | |
+285: setfield_gc(p26, ConstPtr(ptr31), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+299: setfield_gc(p30, ConstPtr(ptr21), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p33 = new_with_vtable(9629776) | |
p35 = new_with_vtable(9625672) | |
+337: setfield_gc(p30, ConstPtr(ptr31), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+351: setfield_gc(p30, p4, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+355: setfield_gc(p26, p30, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+359: setfield_gc(p30, p18, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+363: setfield_gc(p35, p1, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+367: setfield_gc(p28, i24, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+371: setfield_gc(p26, p28, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+375: setfield_gc(p35, p3, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+379: setfield_gc(p35, p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+390: setfield_gc(p35, p4, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+394: setfield_gc(p33, p35, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+399: setfield_gc(p33, ConstPtr(ptr36), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+414: setfield_gc(p33, p0, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+419: jump(p26, p33, descr=TargetToken(140248750874544)) | |
+446: --end of the loop-- | |
[f465d623f9d] jit-log-opt-bridge} | |
[f465de25f0e] {jit-log-opt-bridge | |
# bridge out of Guard 0x14f1360 with 93 ops | |
[p0, p1, p2, p3, p4, p5, p6, p7, p8] | |
+46: guard_nonnull_class(p0, 9623144, descr=<Guard0x7f8e35015bb0>) [p0, p5, p8, p6, p1, p3, p7, p4, p2] | |
+65: guard_not_invalidated(descr=<Guard0x7f8e35015b40>) [p3, p0, p5, p8, p6, p1, None, p7, p4, p2] | |
debug_merge_point(0, 0, '(loop3 AppRand0_fresh_126 l2)') | |
+65: guard_class(p1, 9625552, descr=<Guard0x7f8e35015ad0>) [p3, p1, p0, p5, p8, p6, None, None, p7, p4, p2] | |
+77: p12 = getfield_gc_pure(p1, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+81: guard_class(p12, 9632160, descr=<Guard0x7f8e35015a60>) [p12, p3, p0, p5, p8, p6, p1, None, p7, p4, p2] | |
+95: p14 = getfield_gc_pure(p12, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+100: guard_value(p14, ConstPtr(ptr15), descr=<Guard0x7f8e35015980>) [p14, p3, p12, p0, p5, p8, p6, p1, None, p7, p4, p2] | |
+119: p16 = getfield_gc_pure(p12, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+124: i17 = instance_ptr_eq(p1, p16) | |
guard_false(i17, descr=<Guard0x7f8e350158a0>) [p16, p3, p1, p0, p5, p8, p6, None, None, p7, None, None] | |
+133: p18 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+137: i19 = instance_ptr_eq(p18, p16) | |
guard_false(i19, descr=<Guard0x7f8e350157c0>) [p16, p3, p1, p0, p5, p8, p6, None, None, p7, None, None] | |
+146: p20 = getfield_gc_pure(p16, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))') | |
debug_merge_point(0, 0, '(pair? l3)') | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))') | |
debug_merge_point(0, 0, '(car l3)') | |
+150: p21 = getfield_gc_pure(p0, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+154: guard_nonnull_class(p21, 9623144, descr=<Guard0x7f8e350156e0>) [p21, p16, p20, p0, p5, p8, p6, None, p3, p7, None, None] | |
debug_merge_point(0, 0, '(list AppRand0_fresh_128)') | |
debug_merge_point(0, 0, '((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)') | |
+172: guard_class(p16, 9625128, descr=<Guard0x7f8e35015600>) [p3, p16, p21, None, p20, p0, p5, p8, p6, None, None, p7, None, None] | |
+185: p24 = getfield_gc_pure(p16, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+189: p26 = getarrayitem_gc_pure(p24, 4, descr=<ArrayP 8>) | |
+193: p28 = getarrayitem_gc_pure(p24, 1, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
debug_merge_point(0, 0, '(pair? l4)') | |
+197: guard_nonnull_class(p28, 9623144, descr=<Guard0x7f8e35015520>) [p28, p26, p21, None, p20, p0, p5, p8, p6, None, p3, p7, None, None] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125))') | |
debug_merge_point(0, 0, '(cdr l4)') | |
+215: p30 = getfield_gc_pure(p28, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+219: guard_nonnull(p30, descr=<Guard0x7f8e35015440>) [p30, p28, p26, p21, None, p20, p0, p5, p8, p6, None, p3, p7, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))') | |
debug_merge_point(0, 0, '(car l4)') | |
+228: p31 = getfield_gc_pure(p28, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+232: guard_nonnull(p31, descr=<Guard0x7f8e350153d0>) [p31, p30, p28, p26, p21, None, p20, p0, p5, p8, p6, None, p3, p7, None, None] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_122 ender-tree)') | |
+241: i33 = instance_ptr_eq(p20, ConstPtr(ptr32)) | |
guard_false(i33, descr=<Guard0x7f8e35015360>) [p31, p30, p28, p26, p21, None, p20, p0, p5, p8, p6, None, p3, p7, None, None] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
+260: p34 = same_as(p31) | |
+260: p35 = same_as(p21) | |
+260: p36 = same_as(p30) | |
+260: label(p31, p21, p20, p26, p0, p28, p6, p8, p7, p5, p3, p30, descr=TargetToken(23194224)) | |
p38 = new_with_vtable(9625672) | |
p40 = new_with_vtable(9623144) | |
p42 = new_with_vtable(9629776) | |
p44 = new_with_vtable(9625672) | |
+381: setfield_gc(p38, ConstPtr(ptr45), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p47 = new_with_vtable(9623144) | |
+413: setfield_gc(p40, ConstPtr(ptr48), descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
p50 = new_with_vtable(9623144) | |
p52 = new_with_vtable(9623144) | |
+457: setfield_gc(p47, p5, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+461: setfield_gc(p40, p21, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+465: setfield_gc(p52, p7, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+476: setfield_gc(p52, p8, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+480: setfield_gc(p50, p6, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+484: setfield_gc(p38, p40, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
p54 = new_with_vtable(9625552) | |
+506: setfield_gc(p44, p20, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+517: setfield_gc(p38, ConstPtr(ptr32), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p56 = new_with_vtable(9632160) | |
+543: setfield_gc(p54, p20, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+547: setfield_gc(p38, p31, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
p58 = new_with_vtable(9629880) | |
+562: setfield_gc(p42, p44, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+573: setfield_gc(p42, ConstPtr(ptr59), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+587: setfield_gc(p58, p3, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+591: setfield_gc(p54, p20, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+595: setfield_gc(p50, p52, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+599: setfield_gc(p47, p50, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+603: setfield_gc(p44, p47, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+607: setfield_gc(p44, p54, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+611: setfield_gc(p44, p28, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+622: setfield_gc(p54, p0, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_3 48>) | |
+626: setfield_gc(p54, p40, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_2 40>) | |
+630: setfield_gc(p56, ConstPtr(ptr60), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+644: setfield_gc(p56, p54, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+648: setfield_gc(p54, p56, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_1 32>) | |
+652: setfield_gc(p54, p26, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+656: setfield_gc(p58, p44, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+660: setfield_gc(p58, ConstPtr(ptr61), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+674: setfield_gc(p58, p30, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+685: setfield_gc(p42, p58, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+689: setfield_gc(p58, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+697: jump(p38, p42, descr=TargetToken(140248751981136)) | |
+731: --end of the loop-- | |
[f465de83bbb] jit-log-opt-bridge} | |
[f465e32c85a] {jit-log-opt-bridge | |
# bridge out of Guard 0x1535520 with 86 ops | |
[p0, p1, p2, p3, p4, p5, p6, p7] | |
+46: guard_nonnull_class(p0, 9623144, descr=<Guard0x7f8e35135f30>) [p0, p3, p6, p4, p2, p5, p7, p1] | |
+66: guard_not_invalidated(descr=<Guard0x7f8e351224f0>) [p3, p0, None, p6, p4, p2, p5, p7, p1] | |
debug_merge_point(0, 0, '(loop3 AppRand0_fresh_126 l2)') | |
+66: guard_class(p1, 9625552, descr=<Guard0x7f8e35122480>) [p3, p1, p0, None, p6, p4, p2, p5, p7, None] | |
+79: p11 = getfield_gc_pure(p1, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+83: guard_class(p11, 9632160, descr=<Guard0x7f8e35122410>) [p11, p3, p0, None, p6, p4, p2, p5, p7, p1] | |
+96: p13 = getfield_gc_pure(p11, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+100: guard_value(p13, ConstPtr(ptr14), descr=<Guard0x7f8e351223a0>) [p13, p3, p11, p0, None, p6, p4, p2, p5, p7, p1] | |
+119: p15 = getfield_gc_pure(p11, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+123: i16 = instance_ptr_eq(p1, p15) | |
guard_false(i16, descr=<Guard0x7f8e35122330>) [p15, p3, p1, p0, None, p6, None, None, p5, p7, None] | |
+132: p17 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+136: i18 = instance_ptr_eq(p17, p15) | |
guard_false(i18, descr=<Guard0x7f8e351222c0>) [p15, p3, p1, p0, None, p6, None, None, p5, p7, None] | |
+145: p19 = getfield_gc_pure(p15, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2))))') | |
debug_merge_point(0, 0, '(pair? l3)') | |
debug_merge_point(0, 0, '(if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))') | |
debug_merge_point(0, 0, '(let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))') | |
debug_merge_point(0, 0, '(car l3)') | |
+149: p20 = getfield_gc_pure(p0, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+154: guard_nonnull_class(p20, 9623144, descr=<Guard0x7f8e35122250>) [p20, p19, p15, p0, p3, p6, None, None, p5, p7, None] | |
debug_merge_point(0, 0, '(list AppRand0_fresh_128)') | |
debug_merge_point(0, 0, '((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)') | |
+173: guard_class(p15, 9625128, descr=<Guard0x7f8e351221e0>) [p3, p15, p20, p19, None, p0, None, p6, None, None, p5, p7, None] | |
+186: p23 = getfield_gc_pure(p15, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+190: p25 = getarrayitem_gc_pure(p23, 4, descr=<ArrayP 8>) | |
+194: p27 = getarrayitem_gc_pure(p23, 1, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2))))') | |
debug_merge_point(0, 0, '(pair? l4)') | |
+198: guard_nonnull_class(p27, 9623144, descr=<Guard0x7f8e35122170>) [p27, p25, p20, p19, None, p0, p3, p6, None, None, p5, p7, None] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125))') | |
debug_merge_point(0, 0, '(cdr l4)') | |
+217: p29 = getfield_gc_pure(p27, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+221: guard_nonnull(p29, descr=<Guard0x7f8e35122100>) [p29, p27, p25, p20, p19, None, p0, p3, p6, None, None, p5, p7, None] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))') | |
debug_merge_point(0, 0, '(car l4)') | |
+230: p30 = getfield_gc_pure(p27, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+234: guard_nonnull(p30, descr=<Guard0x7f8e35122090>) [p30, p29, p27, p25, p20, p19, None, p0, p3, p6, None, None, p5, p7, None] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_122 ender-tree)') | |
+243: i32 = instance_ptr_eq(p19, ConstPtr(ptr31)) | |
guard_false(i32, descr=<Guard0x7f8e35122020>) [p30, p29, p27, p25, p20, p19, None, p0, p3, p6, None, None, p5, p7, None] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
p34 = new_with_vtable(9625672) | |
p36 = new_with_vtable(9623144) | |
p38 = new_with_vtable(9629776) | |
p40 = new_with_vtable(9625672) | |
+376: setfield_gc(p34, ConstPtr(ptr41), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p43 = new_with_vtable(9623144) | |
+415: setfield_gc(p36, ConstPtr(ptr44), descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
p46 = new_with_vtable(9623144) | |
+441: setfield_gc(p43, p5, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+445: setfield_gc(p36, p20, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+449: setfield_gc(p46, p7, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+453: setfield_gc(p34, p36, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
p48 = new_with_vtable(9625552) | |
+475: setfield_gc(p40, p19, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+479: setfield_gc(p34, ConstPtr(ptr31), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p50 = new_with_vtable(9632160) | |
+504: setfield_gc(p48, p19, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+508: setfield_gc(p34, p30, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
p52 = new_with_vtable(9629880) | |
+523: setfield_gc(p38, p40, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+534: setfield_gc(p38, ConstPtr(ptr53), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+548: setfield_gc(p52, p3, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+552: setfield_gc(p48, p19, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+556: setfield_gc(p46, p6, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+567: setfield_gc(p43, p46, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+571: setfield_gc(p40, p43, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+575: setfield_gc(p40, p48, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+579: setfield_gc(p40, p27, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+583: setfield_gc(p48, p0, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_3 48>) | |
+587: setfield_gc(p48, p36, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_2 40>) | |
+591: setfield_gc(p50, ConstPtr(ptr54), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+605: setfield_gc(p50, p48, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+609: setfield_gc(p48, p50, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_1 32>) | |
+613: setfield_gc(p48, p25, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_0 24>) | |
+617: setfield_gc(p52, p40, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+621: setfield_gc(p52, ConstPtr(ptr55), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+635: setfield_gc(p52, p29, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+646: setfield_gc(p38, p52, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+650: setfield_gc(p52, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+658: jump(p34, p38, descr=TargetToken(140248751981136)) | |
+692: --end of the loop-- | |
[f465e384c0f] jit-log-opt-bridge} | |
[f465e647310] {jit-log-opt-bridge | |
# bridge out of Guard 0x14f1440 with 49 ops | |
[p0, p1, p2, p3, p4, p5, p6, p7] | |
+46: guard_nonnull_class(p0, 9623144, descr=<Guard0x7f8e35123910>) [p0, p2, p4, p7, p5, p1, p3, p6] | |
+65: guard_not_invalidated(descr=<Guard0x7f8e350ecf00>) [p3, p0, p2, p4, p7, p5, p1, None, p6] | |
debug_merge_point(0, 0, '(if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125))') | |
debug_merge_point(0, 0, '(cdr l4)') | |
+65: p10 = getfield_gc_pure(p0, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+69: guard_nonnull(p10, descr=<Guard0x7f8e350ece90>) [p10, p0, p2, p4, p7, p5, p1, p3, p6] | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))') | |
debug_merge_point(0, 0, '(car l4)') | |
+78: p11 = getfield_gc_pure(p0, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+82: guard_nonnull(p11, descr=<Guard0x7f8e350ece20>) [p11, p10, p0, p2, p4, p7, p5, p1, p3, p6] | |
debug_merge_point(0, 0, '(append AppRand0_fresh_122 ender-tree)') | |
+91: guard_class(p1, 9625552, descr=<Guard0x7f8e350ecdb0>) [p1, p11, p10, p0, p2, p4, p7, p5, None, p3, p6] | |
+103: p13 = getfield_gc_pure(p1, descr=<FieldP pycket.small_list.ConsEnvSize4.inst__vals_2 40>) | |
+107: p14 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+111: i16 = instance_ptr_eq(p14, ConstPtr(ptr15)) | |
guard_false(i16, descr=<Guard0x7f8e350eccd0>) [p1, p13, p11, p10, p0, p2, p4, p7, p5, None, p3, p6] | |
debug_merge_point(0, 0, '(let ([if_fresh_37 (null? a)]) (if if_fresh_37 b (let ([AppRand0_fresh_35 (car a)] [AppRand1_fresh_36 (let ([AppRand0_fresh_34 (cdr a)]) (append AppRand0_fresh_34 b))]) (cons AppRand0_fresh_35 AppRand1_fresh_36))))') | |
p18 = new_with_vtable(9625672) | |
p20 = new_with_vtable(9629776) | |
p22 = new_with_vtable(9625672) | |
+233: setfield_gc(p18, ConstPtr(ptr23), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p25 = new_with_vtable(9623144) | |
p27 = new_with_vtable(9623144) | |
p29 = new_with_vtable(9623144) | |
+294: setfield_gc(p25, p4, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+298: setfield_gc(p29, p6, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+309: setfield_gc(p29, p7, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+313: setfield_gc(p27, p5, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+317: setfield_gc(p18, p13, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+335: setfield_gc(p18, ConstPtr(ptr15), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+349: setfield_gc(p18, p11, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
p31 = new_with_vtable(9629880) | |
+364: setfield_gc(p20, p22, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+375: setfield_gc(p20, ConstPtr(ptr32), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+389: setfield_gc(p31, p3, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+393: setfield_gc(p22, p2, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+397: setfield_gc(p22, p25, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+401: setfield_gc(p22, p1, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+405: setfield_gc(p22, p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+409: setfield_gc(p27, p29, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+413: setfield_gc(p25, p27, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+417: setfield_gc(p31, p22, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+421: setfield_gc(p31, ConstPtr(ptr33), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+435: setfield_gc(p31, p10, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+439: setfield_gc(p20, p31, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+443: setfield_gc(p31, 1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+451: jump(p18, p20, descr=TargetToken(140248751981136)) | |
+478: --end of the loop-- | |
[f465e676314] jit-log-opt-bridge} | |
[f465ecbfd66] {jit-log-opt-bridge | |
# bridge out of Guard 0x7f8e350150c0 with 86 ops | |
[p0, p1, p2, p3, p4] | |
+46: guard_not_invalidated(descr=<Guard0x7f8e350ecfe0>) [p3, p4, p0, p1, p2] | |
debug_merge_point(0, 0, '(if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f)') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i))') | |
debug_merge_point(0, 0, '(vector-ref states k)') | |
+46: guard_class(p2, 9625128, descr=<Guard0x1222250>) [p2, p3, p4, p0, p1, None] | |
+58: p7 = getfield_gc_pure(p2, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+62: p9 = getarrayitem_gc_pure(p7, 4, descr=<ArrayP 8>) | |
+67: guard_nonnull_class(p9, ConstClass(W_Vector), descr=<Guard0x12221e0>) [p9, p3, p4, p0, p1, p2] | |
+86: guard_nonnull_class(p3, ConstClass(W_Fixnum), descr=<Guard0x1222170>) [p9, p3, None, p4, p0, p1, p2] | |
+104: i12 = getfield_gc_pure(p3, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+108: i14 = int_ge(i12, 0) | |
guard_true(i14, descr=<Guard0x1222100>) [i12, p3, p9, None, p4, p0, p1, p2] | |
+118: i15 = getfield_gc_pure(p9, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+122: i16 = int_lt(i12, i15) | |
guard_true(i16, descr=<Guard0x1222090>) [p3, p9, None, p4, p0, p1, p2] | |
+131: p17 = getfield_gc(p9, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+135: guard_class(p17, 9641744, descr=<Guard0x1222020>) [i12, p17, p9, p3, p4, p0, p1, p2] | |
+148: p19 = getfield_gc(p9, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+152: p20 = getarrayitem_gc(p19, i12, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(conf-set-member? AppRand0_fresh_120 prev i)') | |
+157: p22 = getarrayitem_gc_pure(p7, 6, descr=<ArrayP 8>) | |
+162: p24 = getarrayitem_gc_pure(p7, 7, descr=<ArrayP 8>) | |
+167: p26 = getarrayitem_gc_pure(p7, 10, descr=<ArrayP 8>) | |
+172: guard_class(p22, 9632160, descr=<Guard0x122df30>) [p22, p26, p24, p20, p3, p4, p0, p1, p2] | |
+185: p28 = getfield_gc_pure(p22, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+189: guard_value(p28, ConstPtr(ptr29), descr=<Guard0x122dec0>) [p28, p22, p26, p24, p20, p3, p4, p0, p1, p2] | |
+208: p30 = getfield_gc_pure(p22, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+212: i31 = instance_ptr_eq(p2, p30) | |
guard_false(i31, descr=<Guard0x122de50>) [p30, p2, p26, p24, p20, p3, p4, p0, p1, None] | |
+221: p32 = getfield_gc_pure(p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+225: i33 = instance_ptr_eq(p32, p30) | |
guard_false(i33, descr=<Guard0x122dde0>) [p30, p2, p26, p24, p20, p3, p4, p0, p1, None] | |
+234: p34 = getfield_gc_pure(p30, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([conf-set (let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))]) (if conf-set (conf-set-next conf-set i) #f))') | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_213 (+ conf 1)]) (vector-ref state AppRand1_fresh_213))') | |
debug_merge_point(0, 0, '(+ conf 1)') | |
+239: guard_class(p24, ConstClass(W_Fixnum), descr=<Guard0x122dd70>) [p24, p34, p30, p26, None, p20, p3, p4, p0, p1, p2] | |
+252: i36 = getfield_gc_pure(p24, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+256: i38 = int_add_ovf(i36, 1) | |
guard_no_overflow(descr=<Guard0x122dc90>) [i36, i38, p34, p30, p26, p24, p20, p3, p4, p0, p1, p2] | |
debug_merge_point(0, 0, '(vector-ref state AppRand1_fresh_213)') | |
+269: guard_nonnull_class(p20, ConstClass(W_Vector), descr=<Guard0x122dbb0>) [p20, i38, p34, p30, p26, p24, None, p3, p4, p0, p1, p2] | |
+288: i41 = int_ge(i38, 0) | |
guard_true(i41, descr=<Guard0x122db40>) [i38, p20, None, p34, p30, p26, p24, None, p3, p4, p0, p1, p2] | |
+298: i42 = getfield_gc_pure(p20, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+302: i43 = int_lt(i38, i42) | |
guard_true(i43, descr=<Guard0x122da60>) [p20, i38, p34, p30, p26, p24, None, p3, p4, p0, p1, p2] | |
+311: p44 = getfield_gc(p20, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+315: guard_class(p44, 9641744, descr=<Guard0x122d9f0>) [i38, p44, p20, None, p34, p30, p26, p24, None, p3, p4, p0, p1, p2] | |
+327: p46 = getfield_gc(p20, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+331: p47 = getarrayitem_gc(p46, i38, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(if conf-set (conf-set-next conf-set i) #f)') | |
+336: i49 = instance_ptr_eq(p47, ConstPtr(ptr48)) | |
guard_false(i49, descr=<Guard0x122d910>) [p47, None, p34, p30, p26, p24, p20, p3, p4, p0, p1, p2] | |
debug_merge_point(0, 0, '(conf-set-next conf-set i)') | |
+349: guard_class(p30, 9625432, descr=<Guard0x122d8a0>) [p30, p47, None, p34, None, p26, p24, p20, p3, p4, p0, p1, p2] | |
+363: p51 = getfield_gc_pure(p30, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+368: guard_value(p51, ConstPtr(ptr52), descr=<Guard0x122d830>) [p51, p47, None, p34, p30, p26, p24, p20, p3, p4, p0, p1, p2] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+387: guard_class(p26, ConstClass(W_Fixnum), descr=<Guard0x122d7c0>) [p26, p47, None, None, None, None, None, None, p3, p4, p0, p1, p2] | |
+399: i54 = getfield_gc_pure(p26, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+403: i56 = int_add_ovf(i54, 5) | |
guard_no_overflow(descr=<Guard0x122d750>) [i54, i56, p47, None, None, None, p26, None, None, p3, p4, p0, p1, p2] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p58 = new_with_vtable(9625432) | |
p60 = new_with_vtable(ConstClass(W_Fixnum)) | |
p62 = new_with_vtable(9625672) | |
+519: setfield_gc(p58, ConstPtr(ptr63), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+533: setfield_gc(p62, ConstPtr(ptr64), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p66 = new_with_vtable(9629776) | |
p68 = new_with_vtable(9625672) | |
+571: setfield_gc(p62, ConstPtr(ptr63), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+585: setfield_gc(p62, p26, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+596: setfield_gc(p58, p62, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+600: setfield_gc(p62, p47, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+604: setfield_gc(p68, p4, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+608: setfield_gc(p60, i56, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+612: setfield_gc(p58, p60, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+616: setfield_gc(p68, p1, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+620: setfield_gc(p68, p2, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+631: setfield_gc(p68, p3, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+635: setfield_gc(p66, p68, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+640: setfield_gc(p66, ConstPtr(ptr69), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+655: setfield_gc(p66, p0, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+660: jump(p58, p66, descr=TargetToken(140248750874544)) | |
+687: --end of the loop-- | |
[f465ed0fd9d] jit-log-opt-bridge} | |
[f46618cef8b] {jit-log-opt-bridge | |
# bridge out of Guard 0x15fbbb0 with 61 ops | |
[p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23] | |
+46: guard_not_invalidated(descr=<Guard0x12224f0>) [p18, p21, p22, p10, p0, p17, p11, p3, p16, p4, p8, p15, p9, p20, p13, p14, p1, p19, p7, p12, p2, p5, p23, p6] | |
debug_merge_point(0, 0, '#f') | |
debug_merge_point(0, 0, '(if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2))') | |
debug_merge_point(0, 0, '(conf-set-next ender-set k)') | |
+46: guard_value(p17, ConstPtr(ptr24), descr=<Guard0x1223210>) [p17, p18, p21, p22, p10, None, None, p11, None, p16, p4, p8, p15, p9, p20, p13, p14, None, p19, p7, p12, None, p5, p23, p6] | |
+65: i27 = instance_ptr_eq(p22, ConstPtr(ptr26)) | |
guard_false(i27, descr=<Guard0x1223360>) [p18, p21, p22, p10, None, None, p11, None, p16, p4, p8, p15, p9, p20, p13, p14, None, p19, p7, p12, None, p5, p23, p6] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_214 (+ i 5)]) (vector-ref conf-set AppRand1_fresh_214))') | |
debug_merge_point(0, 0, '(+ i 5)') | |
+84: guard_class(p4, ConstClass(W_Fixnum), descr=<Guard0x12232f0>) [p4, p18, p21, p22, p10, None, None, p11, None, p16, None, p8, p15, p9, p20, p13, p14, None, p19, p7, p12, None, p5, p23, p6] | |
+97: i29 = getfield_gc_pure(p4, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+101: i31 = int_add_ovf(i29, 5) | |
guard_no_overflow(descr=<Guard0x1223280>) [i29, i31, p18, p21, p22, p10, None, None, p11, None, p16, p4, p8, p15, p9, p20, p13, p14, None, p19, p7, p12, None, p5, p23, p6] | |
debug_merge_point(0, 0, '(vector-ref conf-set AppRand1_fresh_214)') | |
p33 = new_with_vtable(9625432) | |
p35 = new_with_vtable(ConstClass(W_Fixnum)) | |
p37 = new_with_vtable(9625672) | |
+203: setfield_gc(p33, ConstPtr(ptr38), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+217: setfield_gc(p37, ConstPtr(ptr26), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
p40 = new_with_vtable(9629776) | |
p42 = new_with_vtable(9625672) | |
+255: setfield_gc(p37, ConstPtr(ptr38), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+269: setfield_gc(p37, p4, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
p44 = new_with_vtable(9625128) | |
+284: setfield_gc(p42, p22, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p46 = new_array(17, descr=<ArrayP 8>) | |
p48 = new_with_vtable(9632160) | |
+329: setfield_gc(p33, p37, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+333: setfield_gc(p44, p22, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+337: setfield_gc(p37, p23, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+355: setfield_gc(p44, p22, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+359: setfield_gc(p35, i31, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+363: setfield_gc(p33, p35, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+374: setfield_gc(p42, p15, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+378: setfield_gc(p42, p44, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+382: setfield_gc(p42, p4, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+386: setarrayitem_gc(p46, 0, p20, descr=<ArrayP 8>) | |
+390: setfield_gc(p48, ConstPtr(ptr50), descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+405: setfield_gc(p48, p44, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+410: setarrayitem_gc(p46, 1, p48, descr=<ArrayP 8>) | |
+414: setarrayitem_gc(p46, 2, p16, descr=<ArrayP 8>) | |
+418: setarrayitem_gc(p46, 3, ConstPtr(ptr24), descr=<ArrayP 8>) | |
+432: setarrayitem_gc(p46, 4, p18, descr=<ArrayP 8>) | |
+443: setarrayitem_gc(p46, 5, p5, descr=<ArrayP 8>) | |
+454: setarrayitem_gc(p46, 6, p6, descr=<ArrayP 8>) | |
+465: setarrayitem_gc(p46, 7, p14, descr=<ArrayP 8>) | |
+476: setarrayitem_gc(p46, 8, p7, descr=<ArrayP 8>) | |
+487: setarrayitem_gc(p46, 9, p8, descr=<ArrayP 8>) | |
+498: setarrayitem_gc(p46, 10, p9, descr=<ArrayP 8>) | |
+509: setarrayitem_gc(p46, 11, p10, descr=<ArrayP 8>) | |
+520: setarrayitem_gc(p46, 12, p11, descr=<ArrayP 8>) | |
+531: setarrayitem_gc(p46, 13, p12, descr=<ArrayP 8>) | |
+542: setarrayitem_gc(p46, 14, p23, descr=<ArrayP 8>) | |
+549: setarrayitem_gc(p46, 15, p13, descr=<ArrayP 8>) | |
+563: setarrayitem_gc(p46, 16, p19, descr=<ArrayP 8>) | |
+577: setfield_gc(p44, p46, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+581: setfield_gc(p40, p42, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+592: setfield_gc(p40, ConstPtr(ptr67), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+606: setfield_gc(p40, p21, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+617: jump(p33, p40, descr=TargetToken(140248750874544)) | |
+644: --end of the loop-- | |
[f46619203d3] jit-log-opt-bridge} | |
[f4661ec20ea] {jit-log-opt-bridge | |
# bridge out of Guard 0x7f8e370b0100 with 70 ops | |
[p0, p1, p2, p3, p4] | |
+46: guard_nonnull_class(p0, 9623288, descr=<Guard0x7f8e354e8100>) [p0, p4, p1, p3, p2] | |
+65: guard_not_invalidated(descr=<Guard0x7f8e354e88e0>) [p1, p0, p4, None, p3, p2] | |
debug_merge_point(0, 0, '(loop1 AppRand0_fresh_136 l2)') | |
+65: guard_class(p3, 9625432, descr=<Guard0x7f8e354e8870>) [p1, p3, p0, p4, None, None, p2] | |
+77: p8 = getfield_gc_pure(p3, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+81: guard_class(p8, 9625672, descr=<Guard0x7f8e354e8800>) [p1, p8, p0, p4, None, p3, p2] | |
+95: p10 = getfield_gc_pure(p8, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+99: guard_class(p10, 9625128, descr=<Guard0x7f8e354e8790>) [p1, p10, p0, p4, None, p3, p2] | |
+113: p12 = getfield_gc_pure(p10, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+118: p14 = getarrayitem_gc_pure(p12, 7, descr=<ArrayP 8>) | |
+122: p15 = getfield_gc_pure(p8, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+126: guard_class(p14, 9632160, descr=<Guard0x7f8e354e8720>) [p14, p1, p15, p0, p4, None, p3, p2] | |
+140: p17 = getfield_gc_pure(p14, descr=<FieldP pycket.values.W_Closure.inst_caselam 8>) | |
+145: guard_value(p17, ConstPtr(ptr18), descr=<Guard0x7f8e354e86b0>) [p17, p1, p14, p15, p0, p4, None, p3, p2] | |
+164: p19 = getfield_gc_pure(p14, descr=<FieldP rpython.tool.pairtype.W_ClosureSize1.inst__envs_0 16>) | |
+169: i20 = instance_ptr_eq(p3, p19) | |
guard_false(i20, descr=<Guard0x7f8e354e8640>) [p19, p1, p3, p15, p0, None, None, None, None] | |
+178: i21 = instance_ptr_eq(p8, p19) | |
guard_false(i21, descr=<Guard0x7f8e354e85d0>) [p19, p1, p3, p15, p0, None, None, None, None] | |
+187: p22 = getfield_gc_pure(p19, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
debug_merge_point(0, 0, '(let ([if_fresh_138 (pair? l1)]) (if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2))') | |
debug_merge_point(0, 0, '(pair? l1)') | |
debug_merge_point(0, 0, '(if if_fresh_138 (let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))) l2)') | |
debug_merge_point(0, 0, '(let ([ender (car l1)]) (let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2)))))') | |
debug_merge_point(0, 0, '(car l1)') | |
+191: i23 = getfield_gc_pure(p0, descr=<FieldS pycket.values.W_UnwrappedFixnumCons.inst__car 8>) | |
debug_merge_point(0, 0, '(let ([ender-set (let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))]) (if ender-set (let ([AppRand0_fresh_135 (conf-set-head ender-set)]) ((rec (lambda (k l2) (let ([if_fresh_134 (>= k 0)]) (if if_fresh_134 (let ([if_fresh_132 (let ([if_fresh_121 (>= k i)]) (if if_fresh_121 (let ([AppRand0_fresh_120 (vector-ref states k)]) (conf-set-member? AppRand0_fresh_120 prev i)) #f))]) (if if_fresh_132 (let ([prev-trees (CellRef(deriv-trees) prev i k enders steps names toks states nb-nts)] [ender-trees (CellRef(deriv-trees) ender k j enders steps names toks states nb-nts)]) ((rec (lambda (l3 l2) (let ([if_fresh_130 (pair? l3)]) (if if_fresh_130 (let ([ender-tree (let ([AppRand0_fresh_128 (car l3)]) (list AppRand0_fresh_128))]) ((rec (lambda (l4 l2) (let ([if_fresh_127 (pair? l4)]) (if if_fresh_127 (let ([AppRand0_fresh_124 (cdr l4)] [AppRand1_fresh_125 (let ([AppRand0_fresh_123 (let ([AppRand0_fresh_122 (car l4)]) (append AppRand0_fresh_122 ender-tree))]) (cons AppRand0_fresh_123 l2))]) (loop4 AppRand0_fresh_124 AppRand1_fresh_125)) (let ([AppRand0_fresh_126 (cdr l3)]) (loop3 AppRand0_fresh_126 l2)))))) prev-trees l2)) (let ([AppRand0_fresh_129 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_129 l2)))))) ender-trees l2)) (let ([AppRand0_fresh_131 (conf-set-next ender-set k)]) (loop2 AppRand0_fresh_131 l2)))) (let ([AppRand0_fresh_133 (cdr l1)]) (loop1 AppRand0_fresh_133 l2)))))) AppRand0_fresh_135 l2)) (let ([AppRand0_fresh_136 (cdr l1)]) (loop1 AppRand0_fresh_136 l2))))') | |
debug_merge_point(0, 0, '(let ([AppRand0_fresh_137 (vector-ref states j)]) (conf-set-get AppRand0_fresh_137 ender))') | |
debug_merge_point(0, 0, '(vector-ref states j)') | |
+195: guard_class(p19, 9625128, descr=<Guard0x7f8e354e8560>) [p19, p22, i23, p15, p0, None, p1, None, None] | |
+207: p25 = getfield_gc_pure(p19, descr=<FieldP pycket.small_list.ConsEnvArbitrary.inst_vals 24>) | |
+211: p27 = getarrayitem_gc_pure(p25, 4, descr=<ArrayP 8>) | |
+216: p29 = getarrayitem_gc_pure(p25, 0, descr=<ArrayP 8>) | |
+221: guard_nonnull_class(p27, ConstClass(W_Vector), descr=<Guard0x7f8e354e84f0>) [p27, p29, p19, p22, i23, p15, p0, None, p1, None, None] | |
+240: guard_nonnull_class(p29, ConstClass(W_Fixnum), descr=<Guard0x7f8e354e8410>) [p27, p29, None, p19, p22, i23, p15, p0, None, p1, None, None] | |
+259: i32 = getfield_gc_pure(p29, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+263: i34 = int_ge(i32, 0) | |
guard_true(i34, descr=<Guard0x7f8e354e83a0>) [i32, p29, p27, None, p19, p22, i23, p15, p0, None, p1, None, None] | |
+273: i35 = getfield_gc_pure(p27, descr=<FieldS pycket.vector.W_Vector.inst_len 8>) | |
+277: i36 = int_lt(i32, i35) | |
guard_true(i36, descr=<Guard0x7f8e354e82c0>) [p29, p27, None, p19, p22, i23, p15, p0, None, p1, None, None] | |
+286: p37 = getfield_gc(p27, descr=<FieldP pycket.vector.W_Vector.inst_strategy 24>) | |
+290: guard_class(p37, 9641744, descr=<Guard0x7f8e354e8250>) [i32, p37, p27, None, p19, p22, i23, p15, p0, None, p1, None, None] | |
+302: p39 = getfield_gc(p27, descr=<FieldP pycket.vector.W_Vector.inst_storage 16>) | |
+306: p40 = getarrayitem_gc(p39, i32, descr=<ArrayP 8>) | |
debug_merge_point(0, 0, '(conf-set-get AppRand0_fresh_137 ender)') | |
+311: p42 = getarrayitem_gc_pure(p25, 14, descr=<ArrayP 8>) | |
+319: guard_value(p42, ConstPtr(ptr43), descr=<Guard0x7f8e354e8170>) [p42, p40, None, p19, p22, i23, p15, p0, None, p1, None, None] | |
debug_merge_point(0, 0, '(let ([AppRand1_fresh_221 (+ conf 1)]) (vector-ref state AppRand1_fresh_221))') | |
p45 = new_with_vtable(9625672) | |
p47 = new_with_vtable(ConstClass(W_Fixnum)) | |
p49 = new_with_vtable(9629776) | |
p51 = new_with_vtable(9625432) | |
+447: setfield_gc(p45, ConstPtr(ptr52), descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
p54 = new_with_vtable(9625672) | |
+472: setfield_gc(p51, p22, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+476: setfield_gc(p45, p47, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+480: setfield_gc(p45, ConstPtr(ptr55), descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+494: setfield_gc(p45, p40, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+498: setfield_gc(p54, p19, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+509: setfield_gc(p54, p22, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+513: setfield_gc(p47, i23, descr=<FieldS pycket.values.W_Fixnum.inst_value 8>) | |
+517: setfield_gc(p54, p15, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+521: setfield_gc(p51, p54, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+525: setfield_gc(p54, p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+529: setfield_gc(p51, p47, descr=<FieldP pycket.small_list.ConsEnvSize1.inst__vals_0 24>) | |
+533: setfield_gc(p49, p51, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+538: setfield_gc(p49, ConstPtr(ptr56), descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+553: setfield_gc(p49, p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+558: jump(p45, p49, descr=TargetToken(140248750869264)) | |
+585: --end of the loop-- | |
[f4661f2f4a2] jit-log-opt-bridge} | |
[f485a54b522] {jit-log-opt-loop | |
# Loop 9 ((cons AppRand0_fresh_35 AppRand1_fresh_36)) : loop with 37 ops | |
[p0, p1] | |
+83: label(p0, p1, descr=TargetToken(23191904)) | |
debug_merge_point(0, 0, '(cons AppRand0_fresh_35 AppRand1_fresh_36)') | |
+83: guard_class(p0, 9625672, descr=<Guard0x7f8e354e8020>) [p1, p0] | |
+102: p3 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_0 24>) | |
+106: p4 = getfield_gc_pure(p0, descr=<FieldP pycket.small_list.ConsEnvSize2.inst__vals_1 32>) | |
+110: p5 = getfield_gc_pure(p0, descr=<FieldP pycket.interpreter.ConsEnv.inst_prev 16>) | |
+114: guard_nonnull_class(p3, 9623144, descr=<Guard0x7f8e354e8fe0>) [p1, p5, p4, p3] | |
+132: guard_nonnull_class(p1, 9629880, descr=<Guard0x7f8e354e8f70>) [p1, p4, p3] | |
+157: p8 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+161: guard_value(p8, ConstPtr(ptr9), descr=<Guard0x7f8e354e8f00>) [p8, p1, p4, p3] | |
+180: i10 = getfield_gc(p1, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+184: guard_value(i10, 1, descr=<Guard0x7f8e354e8e90>) [i10, p1, p4, p3] | |
+194: p12 = getfield_gc_pure(p1, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+198: p13 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+202: p14 = getfield_gc_pure(p13, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+206: p15 = getfield_gc_pure(p1, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+210: guard_not_invalidated(descr=<Guard0x7f8e354e8e20>) [p15, p14, p12, p13, p4, p3] | |
debug_merge_point(0, 0, '(cons AppRand0_fresh_35 AppRand1_fresh_36)') | |
+210: p16 = same_as(p14) | |
+210: label(p14, p13, p12, p3, p4, p15, descr=TargetToken(23191984)) | |
debug_merge_point(0, 0, '(cons AppRand0_fresh_35 AppRand1_fresh_36)') | |
+224: guard_nonnull_class(p12, 9623144, descr=<Guard0x7f8e354e8db0>) [p15, p13, p12, p4, p3] | |
+242: guard_nonnull_class(p15, 9629880, descr=<Guard0x7f8e354e8d40>) [p15, p12, p4, p3] | |
+261: p17 = getfield_gc_pure(p15, descr=<FieldP pycket.interpreter.LetCont.inst_ast 8>) | |
+265: guard_value(p17, ConstPtr(ptr9), descr=<Guard0x7f8e354e8cd0>) [p17, p15, p12, p4, p3] | |
+284: i18 = getfield_gc(p15, descr=<FieldS pycket.interpreter.LetCont.inst_rhsindex 32>) | |
+288: guard_value(i18, 1, descr=<Guard0x7f8e354e8c60>) [i18, p15, p12, p4, p3] | |
+298: p19 = getfield_gc_pure(p15, descr=<FieldP pycket.small_list.LetContSize1.inst__vals_w_0 40>) | |
+302: p20 = getfield_gc_pure(p15, descr=<FieldP pycket.interpreter.LetCont.inst_env 16>) | |
+306: p21 = getfield_gc_pure(p20, descr=<FieldP pycket.interpreter.Env.inst_toplevel_env 8>) | |
+310: p22 = getfield_gc_pure(p15, descr=<FieldP pycket.interpreter.LetCont.inst_prev 24>) | |
+314: guard_not_invalidated(descr=<Guard0x7f8e354e8bf0>) [p22, p19, p21, p20, p12, p4, p3] | |
debug_merge_point(0, 0, '(cons AppRand0_fresh_35 AppRand1_fresh_36)') | |
p24 = new_with_vtable(9623144) | |
+392: setfield_gc(p24, p4, descr=<FieldP pycket.values.W_WrappedCons.inst__cdr 16>) | |
+396: setfield_gc(p24, p3, descr=<FieldP pycket.values.W_WrappedCons.inst__car 8>) | |
+407: jump(p21, p20, p19, p12, p24, p22, descr=TargetToken(23191984)) | |
+431: --end of the loop-- | |
[f485a57c5ba] jit-log-opt-loop} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment