view graal/com.oracle.graal.truffle.test/sl/TestDeoptInInlinedFunction.sl @ 21065:986f1c0d6f55

Truffle-DSL: do not generate polymorphic nodes for nodes with all parameters evaluated in all execute methods.
author Christian Humer <christian.humer@oracle.com>
date Fri, 17 Apr 2015 16:18:17 +0200
parents eebb05f2d1e8
children
line wrap: on
line source

/* 
 * This tests that simple arithmetic gets inlined.
 */
function add(a, b) {
    deoptimizeWhenCompiled(a == 50); 
    return a + b;
}


function test() {
    i = 0;
    while (i < 100) {
        i = add(i, 1);
    }
    return i;
}

function main() {
    waitForOptimization(callUntilOptimized(test, 1 == 2));
    test();
}