Skip to content

Instantly share code, notes, and snippets.

@timo
Last active August 29, 2015 14:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save timo/b7cc8284db472e35c255 to your computer and use it in GitHub Desktop.
Save timo/b7cc8284db472e35c255 to your computer and use it in GitHub Desktop.
infix:<+> for Complex arguments
Finished specialization of 'infix:<+>' (cuid: cuid_3845_1424267157.42774)
Spesh of 'infix:<+>' (cuid: cuid_3845_1424267157.42774, file: src/gen/m-CORE.setting:12869)
Callsite 0x7fa1859206a0 (2 args, 2 pos)
BB 0 (0xa4dda78):
Instructions:
no_op
Successors: 1, 6
Predeccessors:
Dominance children: 1, 6, 7
BB 1 (0xa4ddaf0):
Instructions:
sp_getarg_o r3(1), liti16(0)
set r7(1), r3(1)
set r3(2), r7(1)
set r1(1), r3(2)
sp_getarg_o r4(1), liti16(1)
set r13(2), r4(1)
set r4(2), r13(2)
set r2(1), r4(2)
takedispatcher r5(1)
isnull r6(4), r5(1)
if_i r6(4), BB(3)
Successors: 3, 2
Predeccessors: 0
Dominance children: 2, 3
BB 2 (0xa4ddb40):
Instructions:
bindlex lex(idx=6,outers=0,$*DISPATCHER), r5(1)
Successors: 3
Predeccessors: 1
Dominance children:
BB 3 (0xa4ddb90):
Instructions:
newlexotic r5(2), BB(6)
Successors: 6, 4
Predeccessors: 1, 2
Dominance children: 4
BB 4 (0xa4ddbe0):
Instructions:
bindlex lex(idx=8,outers=0,RETURN), r5(2)
[Annotation: FH Start (0)]
sp_fastcreate r7(6), liti16(48), sslot(2)
set r0(1), r7(6)
sp_getspeshslot r7(7), sslot(3)
prepargs <nyi(lit)>
arg_o liti16(0), r1(1)
[Annotation: INS Deopt All (idx 1 -> pc 230)]
invoke_o r7(8), r7(7)
Successors: 5
Predeccessors: 3
Dominance children: 5
BB 5 (0xa4ddc30):
Instructions:
[Annotation: INS Deopt One (idx 0 -> pc 230)]
sp_guardconc r7(8), sslot(0)
set r7(9), r7(8)
set r8(2), r7(9)
unbox_n r9(1), r8(2)
set r8(3), r2(1)
sp_p6oget_n r10(1), r8(3), liti16(8)
add_n r10(2), r9(1), r10(1)
sp_p6obind_n r0(1), liti16(8), r10(2)
set r7(14), r2(1)
sp_p6oget_n r9(2), r7(14), liti16(16)
wval r8(6), liti16(0), liti16(13017)
set r8(7), r8(6)
const_s r11(4), lits($!im)
sp_p6obind_n r0(1), liti16(16), r9(2)
set r0(2), r0(1)
[Annotation: FH End (0)]
goto BB(7)
Successors: 7
Predeccessors: 4
Dominance children:
BB 6 (0xa4ddc80):
Instructions:
PHI r5(3), r5(0), r5(2)
[Annotation: FH Goto (0)]
lexoticresult r0(3), r5(3)
Successors: 7
Predeccessors: 0, 3
Dominance children:
BB 7 (0xa4ddcd0):
Instructions:
PHI r0(4), r0(2), r0(3)
[Annotation: INS Deopt One (idx 2 -> pc 422)]
getlex r5(5), lex(idx=147,outers=1,&EXHAUST)
bindlex lex(idx=8,outers=0,RETURN), r5(5)
wval r8(9), liti16(0), liti16(13017)
decont r7(17), r0(4)
istype r6(7), r7(17), r8(9)
if_i r6(7), BB(9)
Successors: 9, 8
Predeccessors: 5, 6
Dominance children: 8, 9
BB 8 (0xa4ddd20):
Instructions:
wval r7(18), liti16(4), liti16(9)
sp_getspeshslot r7(18), sslot(4)
prepargs <nyi(lit)>
arg_o liti16(0), r0(4)
arg_o liti16(1), r8(9)
[Annotation: INS Deopt All (idx 3 -> pc 488)]
invoke_v r7(18)
Successors: 9
Predeccessors: 7
Dominance children:
BB 9 (0xa4ddd70):
Instructions:
return_o r0(4)
Successors:
Predeccessors: 7, 8
Dominance children:
Facts:
r0(0): usages=0, flags=0
r0(1): usages=6, flags=13
r0(2): usages=2, flags=0
r0(3): usages=1, flags=0
r0(4): usages=6, flags=0
r1(0): usages=1, flags=0
r1(1): usages=1, flags=13
r1(2): usages=0, flags=0
r1(3): usages=0, flags=0
r2(0): usages=1, flags=0
r2(1): usages=4, flags=13
r2(2): usages=0, flags=0
r2(3): usages=0, flags=0
r3(0): usages=1, flags=0
r3(1): usages=1, flags=13
r3(2): usages=1, flags=13
r3(3): usages=0, flags=0
r3(4): usages=0, flags=0
r4(0): usages=1, flags=0
r4(1): usages=1, flags=13
r4(2): usages=1, flags=13
r4(3): usages=0, flags=0
r4(4): usages=0, flags=0
r5(0): usages=2, flags=0
r5(1): usages=2, flags=0
r5(2): usages=2, flags=0
r5(3): usages=1, flags=0
r5(4): usages=0, flags=0
r5(5): usages=4, flags=269
r6(0): usages=1, flags=0
r6(1): usages=0, flags=2
r6(2): usages=0, flags=2
r6(3): usages=0, flags=2
r6(4): usages=1, flags=0
r6(5): usages=0, flags=0
r6(6): usages=0, flags=0
r6(7): usages=1, flags=0
r7(0): usages=1, flags=0
r7(1): usages=1, flags=13
r7(2): usages=0, flags=13
r7(3): usages=0, flags=23
r7(4): usages=0, flags=13
r7(5): usages=0, flags=23
r7(6): usages=1, flags=13
r7(7): usages=2, flags=2
r7(8): usages=4, flags=269
r7(9): usages=1, flags=269
r7(10): usages=0, flags=23
r7(11): usages=0, flags=23
r7(12): usages=0, flags=23
r7(13): usages=0, flags=23
r7(14): usages=2, flags=13
r7(15): usages=0, flags=0
r7(16): usages=0, flags=0
r7(17): usages=1, flags=4
r7(18): usages=2, flags=15
r7(19): usages=0, flags=0
r8(0): usages=1, flags=0
r8(1): usages=0, flags=13
r8(2): usages=1, flags=269
r8(3): usages=1, flags=13
r8(4): usages=0, flags=23
r8(5): usages=0, flags=23
r8(6): usages=1, flags=23
r8(7): usages=1, flags=23
r8(8): usages=0, flags=0
r8(9): usages=2, flags=23
r9(0): usages=1, flags=0
r9(1): usages=1, flags=0
r9(2): usages=2, flags=0
r9(3): usages=0, flags=0
r10(0): usages=1, flags=0
r10(1): usages=1, flags=0
r10(2): usages=2, flags=0
r10(3): usages=0, flags=0
r11(0): usages=1, flags=0
r11(1): usages=0, flags=2
r11(2): usages=0, flags=2
r11(3): usages=0, flags=2
r11(4): usages=1, flags=2
r11(5): usages=0, flags=0
r12(0): usages=1, flags=0
r12(1): usages=0, flags=23
r12(2): usages=0, flags=23
r12(3): usages=0, flags=0
r12(4): usages=0, flags=0
r13(0): usages=1, flags=0
r13(1): usages=0, flags=23
r13(2): usages=1, flags=13
r13(3): usages=0, flags=13
r13(4): usages=0, flags=0
r13(5): usages=0, flags=0
Spesh of 'infix:<+>' (cuid: cuid_3842_1424218482.53793, file: src/gen/m-CORE.setting:12849)
Callsite 0x7fcb937696a0 (2 args, 2 pos)
BB 0 (0x9460c48):
Instructions:
no_op
Successors: 1, 6
Predeccessors:
Dominance children: 1, 6, 7
BB 1 (0x9460cc0):
Instructions:
sp_getarg_o r3(2), liti16(0)
set r1(1), r3(2)
sp_getarg_o r4(2), liti16(1)
set r2(1), r4(2)
takedispatcher r5(1)
isnull r6(4), r5(1)
if_i r6(4), BB(3)
Successors: 3, 2
Predeccessors: 0
Dominance children: 2, 3
BB 2 (0x9460d10):
Instructions:
bindlex lex(idx=6,outers=0,$*DISPATCHER), r5(1)
Successors: 3
Predeccessors: 1
Dominance children:
BB 3 (0x9460d60):
Instructions:
newlexotic r5(2), BB(6)
Successors: 6, 4
Predeccessors: 1, 2
Dominance children: 4
BB 4 (0x9460db0):
Instructions:
bindlex lex(idx=8,outers=0,RETURN), r5(2)
[Annotation: FH Start (0)]
sp_fastcreate r0(1), liti16(48), sslot(2)
sp_getspeshslot r7(7), sslot(3)
prepargs <nyi(lit)>
arg_o liti16(0), r1(1)
[Annotation: INS Deopt All (idx 1 -> pc 230)]
invoke_o r7(8), r7(7)
Successors: 5
Predeccessors: 3
Dominance children: 5
BB 5 (0x9460e00):
Instructions:
[Annotation: INS Deopt One (idx 0 -> pc 230)]
sp_guardconc r7(8), sslot(0)
set r8(2), r7(9)
unbox_n r9(1), r8(2)
set r8(3), r2(1)
wval r7(10), liti16(0), liti16(13017)
const_s r11(1), lits($!re)
sp_p6oget_n r10(1), r8(3), liti16(8)
add_n r10(2), r9(1), r10(1)
wval r7(12), liti16(0), liti16(13017)
const_s r11(2), lits($!re)
sp_p6obind_n r0(1), liti16(8), r10(2)
set r7(14), r2(1)
wval r8(4), liti16(0), liti16(13017)
const_s r11(3), lits($!im)
sp_p6oget_n r9(2), r7(14), liti16(16)
wval r8(6), liti16(0), liti16(13017)
const_s r11(4), lits($!im)
sp_p6obind_n r0(1), liti16(16), r9(2)
[Annotation: FH End (0)]
goto BB(7)
Successors: 7
Predeccessors: 4
Dominance children:
BB 6 (0x9460e50):
Instructions:
PHI r5(3), r5(0), r5(2)
[Annotation: FH Goto (0)]
lexoticresult r0(3), r5(3)
Successors: 7
Predeccessors: 0, 3
Dominance children:
BB 7 (0x9460ea0):
Instructions:
PHI r0(4), r0(2), r0(3)
[Annotation: INS Deopt One (idx 2 -> pc 422)]
getlex r5(5), lex(idx=147,outers=1,&EXHAUST)
bindlex lex(idx=8,outers=0,RETURN), r5(5)
wval r8(9), liti16(0), liti16(13017)
decont r7(17), r0(4)
istype r6(7), r7(17), r8(9)
if_i r6(7), BB(9)
Successors: 9, 8
Predeccessors: 5, 6
Dominance children: 8, 9
BB 8 (0x9460ef0):
Instructions:
wval r7(18), liti16(4), liti16(9)
sp_getspeshslot r7(18), sslot(4)
prepargs <nyi(lit)>
arg_o liti16(0), r0(4)
arg_o liti16(1), r8(9)
[Annotation: INS Deopt All (idx 3 -> pc 488)]
invoke_v r7(18)
Successors: 9
Predeccessors: 7
Dominance children:
BB 9 (0x9460f40):
Instructions:
return_o r0(4)
Successors:
Predeccessors: 7, 8
Dominance children:
Facts:
r0(0): usages=0, flags=0
r0(1): usages=6, flags=13
r0(2): usages=2, flags=13
r0(3): usages=1, flags=0
r0(4): usages=6, flags=0
r1(0): usages=1, flags=0
r1(1): usages=1, flags=13
r1(2): usages=0, flags=0
r1(3): usages=0, flags=0
r2(0): usages=1, flags=0
r2(1): usages=4, flags=13
r2(2): usages=0, flags=0
r2(3): usages=0, flags=0
r3(0): usages=1, flags=0
r3(1): usages=0, flags=13
r3(2): usages=1, flags=13
r3(3): usages=0, flags=0
r3(4): usages=0, flags=0
r4(0): usages=1, flags=0
r4(1): usages=0, flags=13
r4(2): usages=1, flags=13
r4(3): usages=0, flags=0
r4(4): usages=0, flags=0
r5(0): usages=2, flags=0
r5(1): usages=2, flags=0
r5(2): usages=2, flags=0
r5(3): usages=1, flags=0
r5(4): usages=0, flags=0
r5(5): usages=4, flags=269
r6(0): usages=1, flags=0
r6(1): usages=0, flags=2
r6(2): usages=0, flags=2
r6(3): usages=0, flags=2
r6(4): usages=1, flags=0
r6(5): usages=0, flags=0
r6(6): usages=0, flags=0
r6(7): usages=1, flags=0
r7(0): usages=1, flags=0
r7(1): usages=0, flags=13
r7(2): usages=0, flags=13
r7(3): usages=0, flags=23
r7(4): usages=0, flags=13
r7(5): usages=0, flags=23
r7(6): usages=0, flags=13
r7(7): usages=2, flags=2
r7(8): usages=4, flags=269
r7(9): usages=1, flags=269
r7(10): usages=1, flags=23
r7(11): usages=0, flags=23
r7(12): usages=1, flags=23
r7(13): usages=0, flags=23
r7(14): usages=2, flags=13
r7(15): usages=0, flags=0
r7(16): usages=0, flags=0
r7(17): usages=1, flags=4
r7(18): usages=2, flags=15
r7(19): usages=0, flags=0
r8(0): usages=1, flags=0
r8(1): usages=0, flags=13
r8(2): usages=1, flags=269
r8(3): usages=1, flags=13
r8(4): usages=1, flags=23
r8(5): usages=0, flags=23
r8(6): usages=1, flags=23
r8(7): usages=1, flags=23
r8(8): usages=0, flags=0
r8(9): usages=2, flags=23
r9(0): usages=1, flags=0
r9(1): usages=1, flags=0
r9(2): usages=2, flags=0
r9(3): usages=0, flags=0
r10(0): usages=1, flags=0
r10(1): usages=1, flags=0
r10(2): usages=2, flags=0
r10(3): usages=0, flags=0
r11(0): usages=1, flags=0
r11(1): usages=1, flags=2
r11(2): usages=1, flags=2
r11(3): usages=1, flags=2
r11(4): usages=2, flags=2
r11(5): usages=0, flags=0
r12(0): usages=1, flags=0
r12(1): usages=0, flags=23
r12(2): usages=0, flags=23
r12(3): usages=0, flags=0
r12(4): usages=0, flags=0
r13(0): usages=1, flags=0
r13(1): usages=0, flags=23
r13(2): usages=0, flags=13
r13(3): usages=0, flags=13
r13(4): usages=0, flags=0
r13(5): usages=0, flags=0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment