Welcome to the GBF Test Portal

This was built to track decompiler and CFG progress.

Decompiler Output

function onCreated()
{
    <temp.thingOne>#8 = true;
    <temp.thingTwo>#9 = true;
    <temp.thingThree>#10 = false;
    // RegionId(0)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: temp.simpleAndTwo
    // RegionId(1)
    // Unresolved nodes:
    // idx=0: temp.thingTwo
    // idx=1: temp.simpleAndTwo
    // idx=2: temp.thingOne
    if (<temp.thingOne>#7) 
    {
    }
    <temp.simpleAndTwo>#13 = phi<idx=0, regions=(RegionId(1), RegionId(0))>;
    // RegionId(3)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: temp.simpleAndThree
    // idx=2: temp.thingOne
    // RegionId(4)
    // Unresolved nodes:
    // idx=0: temp.thingTwo
    // idx=1: temp.thingOne
    // idx=2: temp.simpleAndThree
    // idx=3: temp.thingOne
    if (<temp.thingOne>#7) 
    {
        // RegionId(4)
        // Unresolved nodes:
        // idx=0: temp.thingTwo
        // idx=1: temp.thingOne
        // idx=2: temp.simpleAndThree
        // idx=3: temp.thingOne
        // RegionId(5)
        // Unresolved nodes:
        // idx=0: temp.thingThree
        // idx=1: temp.thingOne
        // idx=2: temp.simpleAndThree
        // idx=3: temp.thingOne
        // idx=4: temp.thingTwo
        if (<temp.thingTwo>#4) 
        {
        }
    }
    phi<idx=1, regions=(RegionId(5), RegionId(4), RegionId(3))> = phi<idx=0, regions=(RegionId(5), RegionId(4), RegionId(3))>;
    // RegionId(7)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: temp.simpleOrTwo
    // idx=2: phi<idx=2, regions=(RegionId(5), RegionId(4), RegionId(3))>
    // idx=3: temp.thingOne
    // idx=4: temp.thingTwo
    // RegionId(8)
    // Unresolved nodes:
    // idx=0: temp.thingTwo
    // idx=1: temp.thingTwo
    // idx=2: temp.thingOne
    // idx=3: phi<idx=2, regions=(RegionId(5), RegionId(4), RegionId(3))>
    // idx=4: temp.simpleOrTwo
    // idx=5: temp.thingOne
    if (<temp.thingOne>#7) 
    {
    }
    phi<idx=1, regions=(RegionId(8), RegionId(7))> = phi<idx=0, regions=(RegionId(8), RegionId(7))>;
    // RegionId(10)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: temp.simpleOrThree
    // idx=2: phi<idx=2, regions=(RegionId(8), RegionId(7))>
    // idx=3: phi<idx=3, regions=(RegionId(8), RegionId(7))>
    // idx=4: phi<idx=4, regions=(RegionId(8), RegionId(7))>
    // idx=5: temp.thingOne
    // RegionId(11)
    // Unresolved nodes:
    // idx=0: temp.thingTwo
    // idx=1: temp.thingOne
    // idx=2: phi<idx=4, regions=(RegionId(8), RegionId(7))>
    // idx=3: phi<idx=3, regions=(RegionId(8), RegionId(7))>
    // idx=4: phi<idx=2, regions=(RegionId(8), RegionId(7))>
    // idx=5: temp.simpleOrThree
    // idx=6: temp.thingOne
    if (<temp.thingOne>#7) 
    {
        // RegionId(11)
        // Unresolved nodes:
        // idx=0: temp.thingTwo
        // idx=1: temp.thingOne
        // idx=2: phi<idx=4, regions=(RegionId(8), RegionId(7))>
        // idx=3: phi<idx=3, regions=(RegionId(8), RegionId(7))>
        // idx=4: phi<idx=2, regions=(RegionId(8), RegionId(7))>
        // idx=5: temp.simpleOrThree
        // idx=6: temp.thingOne
        // RegionId(12)
        // Unresolved nodes:
        // idx=0: temp.thingThree
        // idx=1: temp.thingOne
        // idx=2: temp.simpleOrThree
        // idx=3: phi<idx=2, regions=(RegionId(8), RegionId(7))>
        // idx=4: phi<idx=3, regions=(RegionId(8), RegionId(7))>
        // idx=5: phi<idx=4, regions=(RegionId(8), RegionId(7))>
        // idx=6: temp.thingOne
        // idx=7: temp.thingTwo
        if (<temp.thingTwo>#4) 
        {
        }
    }
    phi<idx=1, regions=(RegionId(12), RegionId(11), RegionId(10))> = phi<idx=0, regions=(RegionId(12), RegionId(11), RegionId(10))>;
    // RegionId(14)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: temp.complex
    // idx=2: phi<idx=2, regions=(RegionId(12), RegionId(11), RegionId(10))>
    // idx=3: phi<idx=3, regions=(RegionId(12), RegionId(11), RegionId(10))>
    // idx=4: phi<idx=4, regions=(RegionId(12), RegionId(11), RegionId(10))>
    // idx=5: phi<idx=5, regions=(RegionId(12), RegionId(11), RegionId(10))>
    // idx=6: temp.thingOne
    // idx=7: temp.thingTwo
    // RegionId(15)
    // Unresolved nodes:
    // idx=0: temp.thingTwo
    // idx=1: temp.thingTwo
    // idx=2: temp.thingOne
    // idx=3: phi<idx=5, regions=(RegionId(12), RegionId(11), RegionId(10))>
    // idx=4: phi<idx=4, regions=(RegionId(12), RegionId(11), RegionId(10))>
    // idx=5: phi<idx=3, regions=(RegionId(12), RegionId(11), RegionId(10))>
    // idx=6: phi<idx=2, regions=(RegionId(12), RegionId(11), RegionId(10))>
    // idx=7: temp.complex
    // idx=8: temp.thingOne
    if (<temp.thingOne>#7) 
    {
    }
    // RegionId(16)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: phi<idx=7, regions=(RegionId(15), RegionId(14))>
    // idx=2: phi<idx=6, regions=(RegionId(15), RegionId(14))>
    // idx=3: phi<idx=5, regions=(RegionId(15), RegionId(14))>
    // idx=4: phi<idx=4, regions=(RegionId(15), RegionId(14))>
    // idx=5: phi<idx=3, regions=(RegionId(15), RegionId(14))>
    // idx=6: phi<idx=2, regions=(RegionId(15), RegionId(14))>
    // idx=7: phi<idx=1, regions=(RegionId(15), RegionId(14))>
    // idx=8: phi<idx=0, regions=(RegionId(15), RegionId(14))>
    // RegionId(17)
    // Unresolved nodes:
    // idx=0: temp.thingThree
    // idx=1: phi<idx=0, regions=(RegionId(15), RegionId(14))>
    // idx=2: phi<idx=1, regions=(RegionId(15), RegionId(14))>
    // idx=3: phi<idx=2, regions=(RegionId(15), RegionId(14))>
    // idx=4: phi<idx=3, regions=(RegionId(15), RegionId(14))>
    // idx=5: phi<idx=4, regions=(RegionId(15), RegionId(14))>
    // idx=6: phi<idx=5, regions=(RegionId(15), RegionId(14))>
    // idx=7: phi<idx=6, regions=(RegionId(15), RegionId(14))>
    // idx=8: phi<idx=7, regions=(RegionId(15), RegionId(14))>
    // idx=9: temp.thingOne
    if (<temp.thingOne>#7) 
    {
    }
    phi<idx=1, regions=(RegionId(17), RegionId(16))> = phi<idx=0, regions=(RegionId(17), RegionId(16))>;
    // RegionId(19)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: temp.complexTwo
    // idx=2: phi<idx=2, regions=(RegionId(17), RegionId(16))>
    // idx=3: phi<idx=3, regions=(RegionId(17), RegionId(16))>
    // idx=4: phi<idx=4, regions=(RegionId(17), RegionId(16))>
    // idx=5: phi<idx=5, regions=(RegionId(17), RegionId(16))>
    // idx=6: phi<idx=6, regions=(RegionId(17), RegionId(16))>
    // idx=7: phi<idx=7, regions=(RegionId(17), RegionId(16))>
    // idx=8: phi<idx=8, regions=(RegionId(17), RegionId(16))>
    // idx=9: temp.thingOne
    // RegionId(20)
    // Unresolved nodes:
    // idx=0: temp.thingTwo
    // idx=1: temp.thingOne
    // idx=2: phi<idx=8, regions=(RegionId(17), RegionId(16))>
    // idx=3: phi<idx=7, regions=(RegionId(17), RegionId(16))>
    // idx=4: phi<idx=6, regions=(RegionId(17), RegionId(16))>
    // idx=5: phi<idx=5, regions=(RegionId(17), RegionId(16))>
    // idx=6: phi<idx=4, regions=(RegionId(17), RegionId(16))>
    // idx=7: phi<idx=3, regions=(RegionId(17), RegionId(16))>
    // idx=8: phi<idx=2, regions=(RegionId(17), RegionId(16))>
    // idx=9: temp.complexTwo
    // idx=10: temp.thingOne
    if (<temp.thingOne>#7) 
    {
    }
    // RegionId(21)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: phi<idx=9, regions=(RegionId(20), RegionId(19))>
    // idx=2: phi<idx=8, regions=(RegionId(20), RegionId(19))>
    // idx=3: phi<idx=7, regions=(RegionId(20), RegionId(19))>
    // idx=4: phi<idx=6, regions=(RegionId(20), RegionId(19))>
    // idx=5: phi<idx=5, regions=(RegionId(20), RegionId(19))>
    // idx=6: phi<idx=4, regions=(RegionId(20), RegionId(19))>
    // idx=7: phi<idx=3, regions=(RegionId(20), RegionId(19))>
    // idx=8: phi<idx=2, regions=(RegionId(20), RegionId(19))>
    // idx=9: phi<idx=1, regions=(RegionId(20), RegionId(19))>
    // idx=10: phi<idx=0, regions=(RegionId(20), RegionId(19))>
    // RegionId(22)
    // Unresolved nodes:
    // idx=0: temp.thingThree
    // idx=1: phi<idx=0, regions=(RegionId(20), RegionId(19))>
    // idx=2: phi<idx=1, regions=(RegionId(20), RegionId(19))>
    // idx=3: phi<idx=2, regions=(RegionId(20), RegionId(19))>
    // idx=4: phi<idx=3, regions=(RegionId(20), RegionId(19))>
    // idx=5: phi<idx=4, regions=(RegionId(20), RegionId(19))>
    // idx=6: phi<idx=5, regions=(RegionId(20), RegionId(19))>
    // idx=7: phi<idx=6, regions=(RegionId(20), RegionId(19))>
    // idx=8: phi<idx=7, regions=(RegionId(20), RegionId(19))>
    // idx=9: phi<idx=8, regions=(RegionId(20), RegionId(19))>
    // idx=10: phi<idx=9, regions=(RegionId(20), RegionId(19))>
    // idx=11: temp.thingOne
    if (<temp.thingOne>#7) 
    {
        // RegionId(22)
        // Unresolved nodes:
        // idx=0: temp.thingThree
        // idx=1: phi<idx=0, regions=(RegionId(20), RegionId(19))>
        // idx=2: phi<idx=1, regions=(RegionId(20), RegionId(19))>
        // idx=3: phi<idx=2, regions=(RegionId(20), RegionId(19))>
        // idx=4: phi<idx=3, regions=(RegionId(20), RegionId(19))>
        // idx=5: phi<idx=4, regions=(RegionId(20), RegionId(19))>
        // idx=6: phi<idx=5, regions=(RegionId(20), RegionId(19))>
        // idx=7: phi<idx=6, regions=(RegionId(20), RegionId(19))>
        // idx=8: phi<idx=7, regions=(RegionId(20), RegionId(19))>
        // idx=9: phi<idx=8, regions=(RegionId(20), RegionId(19))>
        // idx=10: phi<idx=9, regions=(RegionId(20), RegionId(19))>
        // idx=11: temp.thingOne
        // RegionId(23)
        // Unresolved nodes:
        // idx=0: temp.thingOne
        // idx=1: temp.thingOne
        // idx=2: phi<idx=9, regions=(RegionId(20), RegionId(19))>
        // idx=3: phi<idx=8, regions=(RegionId(20), RegionId(19))>
        // idx=4: phi<idx=7, regions=(RegionId(20), RegionId(19))>
        // idx=5: phi<idx=6, regions=(RegionId(20), RegionId(19))>
        // idx=6: phi<idx=5, regions=(RegionId(20), RegionId(19))>
        // idx=7: phi<idx=4, regions=(RegionId(20), RegionId(19))>
        // idx=8: phi<idx=3, regions=(RegionId(20), RegionId(19))>
        // idx=9: phi<idx=2, regions=(RegionId(20), RegionId(19))>
        // idx=10: phi<idx=1, regions=(RegionId(20), RegionId(19))>
        // idx=11: phi<idx=0, regions=(RegionId(20), RegionId(19))>
        // idx=12: temp.thingThree
        if (<temp.thingThree>#2) 
        {
        }
    }
    phi<idx=1, regions=(RegionId(23), RegionId(22), RegionId(21))> = phi<idx=0, regions=(RegionId(23), RegionId(22), RegionId(21))>;
    // RegionId(25)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: temp.complexThree
    // idx=2: phi<idx=2, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=3: phi<idx=3, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=4: phi<idx=4, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=5: phi<idx=5, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=6: phi<idx=6, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=7: phi<idx=7, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=8: phi<idx=8, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=9: phi<idx=9, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=10: phi<idx=10, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=11: phi<idx=11, regions=(RegionId(23), RegionId(22))>
    // idx=12: temp.thingThree
    // RegionId(26)
    // Unresolved nodes:
    // idx=0: temp.thingTwo
    // idx=1: temp.thingThree
    // idx=2: phi<idx=11, regions=(RegionId(23), RegionId(22))>
    // idx=3: phi<idx=10, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=4: phi<idx=9, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=5: phi<idx=8, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=6: phi<idx=7, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=7: phi<idx=6, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=8: phi<idx=5, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=9: phi<idx=4, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=10: phi<idx=3, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=11: phi<idx=2, regions=(RegionId(23), RegionId(22), RegionId(21))>
    // idx=12: temp.complexThree
    // idx=13: temp.thingOne
    if (<temp.thingOne>#7) 
    {
    }
    // RegionId(27)
    // Unresolved nodes:
    // idx=0: temp.thingOne
    // idx=1: phi<idx=12, regions=(RegionId(26), RegionId(25))>
    // idx=2: phi<idx=11, regions=(RegionId(26), RegionId(25))>
    // idx=3: phi<idx=10, regions=(RegionId(26), RegionId(25))>
    // idx=4: phi<idx=9, regions=(RegionId(26), RegionId(25))>
    // idx=5: phi<idx=8, regions=(RegionId(26), RegionId(25))>
    // idx=6: phi<idx=7, regions=(RegionId(26), RegionId(25))>
    // idx=7: phi<idx=6, regions=(RegionId(26), RegionId(25))>
    // idx=8: phi<idx=5, regions=(RegionId(26), RegionId(25))>
    // idx=9: phi<idx=4, regions=(RegionId(26), RegionId(25))>
    // idx=10: phi<idx=3, regions=(RegionId(26), RegionId(25))>
    // idx=11: phi<idx=2, regions=(RegionId(26), RegionId(25))>
    // idx=12: phi<idx=1, regions=(RegionId(26), RegionId(25))>
    // idx=13: phi<idx=0, regions=(RegionId(26), RegionId(25))>
    // RegionId(28)
    // Unresolved nodes:
    // idx=0: temp.thingThree
    // idx=1: phi<idx=0, regions=(RegionId(26), RegionId(25))>
    // idx=2: phi<idx=1, regions=(RegionId(26), RegionId(25))>
    // idx=3: phi<idx=2, regions=(RegionId(26), RegionId(25))>
    // idx=4: phi<idx=3, regions=(RegionId(26), RegionId(25))>
    // idx=5: phi<idx=4, regions=(RegionId(26), RegionId(25))>
    // idx=6: phi<idx=5, regions=(RegionId(26), RegionId(25))>
    // idx=7: phi<idx=6, regions=(RegionId(26), RegionId(25))>
    // idx=8: phi<idx=7, regions=(RegionId(26), RegionId(25))>
    // idx=9: phi<idx=8, regions=(RegionId(26), RegionId(25))>
    // idx=10: phi<idx=9, regions=(RegionId(26), RegionId(25))>
    // idx=11: phi<idx=10, regions=(RegionId(26), RegionId(25))>
    // idx=12: phi<idx=11, regions=(RegionId(26), RegionId(25))>
    // idx=13: phi<idx=12, regions=(RegionId(26), RegionId(25))>
    // idx=14: temp.thingOne
    if (<temp.thingOne>#7) 
    {
        // RegionId(28)
        // Unresolved nodes:
        // idx=0: temp.thingThree
        // idx=1: phi<idx=0, regions=(RegionId(26), RegionId(25))>
        // idx=2: phi<idx=1, regions=(RegionId(26), RegionId(25))>
        // idx=3: phi<idx=2, regions=(RegionId(26), RegionId(25))>
        // idx=4: phi<idx=3, regions=(RegionId(26), RegionId(25))>
        // idx=5: phi<idx=4, regions=(RegionId(26), RegionId(25))>
        // idx=6: phi<idx=5, regions=(RegionId(26), RegionId(25))>
        // idx=7: phi<idx=6, regions=(RegionId(26), RegionId(25))>
        // idx=8: phi<idx=7, regions=(RegionId(26), RegionId(25))>
        // idx=9: phi<idx=8, regions=(RegionId(26), RegionId(25))>
        // idx=10: phi<idx=9, regions=(RegionId(26), RegionId(25))>
        // idx=11: phi<idx=10, regions=(RegionId(26), RegionId(25))>
        // idx=12: phi<idx=11, regions=(RegionId(26), RegionId(25))>
        // idx=13: phi<idx=12, regions=(RegionId(26), RegionId(25))>
        // idx=14: temp.thingOne
        // RegionId(29)
        // Unresolved nodes:
        // idx=0: temp.thingOne
        // idx=1: temp.thingOne
        // idx=2: phi<idx=12, regions=(RegionId(26), RegionId(25))>
        // idx=3: phi<idx=11, regions=(RegionId(26), RegionId(25))>
        // idx=4: phi<idx=10, regions=(RegionId(26), RegionId(25))>
        // idx=5: phi<idx=9, regions=(RegionId(26), RegionId(25))>
        // idx=6: phi<idx=8, regions=(RegionId(26), RegionId(25))>
        // idx=7: phi<idx=7, regions=(RegionId(26), RegionId(25))>
        // idx=8: phi<idx=6, regions=(RegionId(26), RegionId(25))>
        // idx=9: phi<idx=5, regions=(RegionId(26), RegionId(25))>
        // idx=10: phi<idx=4, regions=(RegionId(26), RegionId(25))>
        // idx=11: phi<idx=3, regions=(RegionId(26), RegionId(25))>
        // idx=12: phi<idx=2, regions=(RegionId(26), RegionId(25))>
        // idx=13: phi<idx=1, regions=(RegionId(26), RegionId(25))>
        // idx=14: phi<idx=0, regions=(RegionId(26), RegionId(25))>
        // idx=15: temp.thingThree
        if (<temp.thingThree>#2) 
        {
            // RegionId(29)
            // Unresolved nodes:
            // idx=0: temp.thingOne
            // idx=1: temp.thingOne
            // idx=2: phi<idx=12, regions=(RegionId(26), RegionId(25))>
            // idx=3: phi<idx=11, regions=(RegionId(26), RegionId(25))>
            // idx=4: phi<idx=10, regions=(RegionId(26), RegionId(25))>
            // idx=5: phi<idx=9, regions=(RegionId(26), RegionId(25))>
            // idx=6: phi<idx=8, regions=(RegionId(26), RegionId(25))>
            // idx=7: phi<idx=7, regions=(RegionId(26), RegionId(25))>
            // idx=8: phi<idx=6, regions=(RegionId(26), RegionId(25))>
            // idx=9: phi<idx=5, regions=(RegionId(26), RegionId(25))>
            // idx=10: phi<idx=4, regions=(RegionId(26), RegionId(25))>
            // idx=11: phi<idx=3, regions=(RegionId(26), RegionId(25))>
            // idx=12: phi<idx=2, regions=(RegionId(26), RegionId(25))>
            // idx=13: phi<idx=1, regions=(RegionId(26), RegionId(25))>
            // idx=14: phi<idx=0, regions=(RegionId(26), RegionId(25))>
            // idx=15: temp.thingThree
            // RegionId(30)
            // Unresolved nodes:
            // idx=0: fn_call
            // idx=1: temp.thingThree
            // idx=2: phi<idx=0, regions=(RegionId(26), RegionId(25))>
            // idx=3: phi<idx=1, regions=(RegionId(26), RegionId(25))>
            // idx=4: phi<idx=2, regions=(RegionId(26), RegionId(25))>
            // idx=5: phi<idx=3, regions=(RegionId(26), RegionId(25))>
            // idx=6: phi<idx=4, regions=(RegionId(26), RegionId(25))>
            // idx=7: phi<idx=5, regions=(RegionId(26), RegionId(25))>
            // idx=8: phi<idx=6, regions=(RegionId(26), RegionId(25))>
            // idx=9: phi<idx=7, regions=(RegionId(26), RegionId(25))>
            // idx=10: phi<idx=8, regions=(RegionId(26), RegionId(25))>
            // idx=11: phi<idx=9, regions=(RegionId(26), RegionId(25))>
            // idx=12: phi<idx=10, regions=(RegionId(26), RegionId(25))>
            // idx=13: phi<idx=11, regions=(RegionId(26), RegionId(25))>
            // idx=14: phi<idx=12, regions=(RegionId(26), RegionId(25))>
            // idx=15: temp.thingOne
            // idx=16: temp.thingOne
            if (<temp.thingOne>#7) 
            {
                fn_call#32 = returnAndShortCircuit#31(true, false);
            }
        }
    }
    phi<idx=1, regions=(RegionId(30), RegionId(29), RegionId(28), RegionId(27))> = phi<idx=0, regions=(RegionId(30), RegionId(29), RegionId(28), RegionId(27))>;
    fn_call#34 = echo#5("simpleAndTwo: " @ <temp.simpleAndTwo>#13);
    fn_call#35 = echo#5("simpleAndThree: " @ <temp.simpleAndThree>#15);
    fn_call#36 = echo#5("simpleOrTwo: " @ <temp.simpleOrTwo>#18);
    fn_call#37 = echo#5("simpleOrThree: " @ <temp.simpleOrThree>#21);
    fn_call#38 = echo#5("complex: " @ <temp.complex>#24);
    fn_call#39 = echo#5("complexTwo: " @ <temp.complexTwo>#27);
    return 0;
}