Optimize JVM byte code generation for conditional conjunction

Implement an intrinsic method for boolean.and operation, and replace
ANDAND condition with a call to such intrinsic method.
This commit is contained in:
Jiaxiang Chen
2019-04-02 13:47:27 -07:00
committed by max-kammerer
parent 53493657ff
commit 4b99d85322
18 changed files with 187 additions and 12 deletions
@@ -894,9 +894,19 @@ public class BytecodeTextTestGenerated extends AbstractBytecodeTextTest {
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/bytecodeText/conditions"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JVM, true);
}
@TestMetadata("conjuction.kt")
public void testConjuction() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/conditions/conjuction.kt");
@TestMetadata("conjunction.kt")
public void testConjunction() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/conditions/conjunction.kt");
}
@TestMetadata("conjunctionInDoWhile.kt")
public void testConjunctionInDoWhile() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/conditions/conjunctionInDoWhile.kt");
}
@TestMetadata("conjunctionInWhile.kt")
public void testConjunctionInWhile() throws Exception {
runTest("compiler/testData/codegen/bytecodeText/conditions/conjunctionInWhile.kt");
}
@TestMetadata("disjunction.kt")