Commit Graph

34688 Commits

Author SHA1 Message Date
Mikhail Glukhikh 779d4f7f3e Module compiler/ir/ir2cfg added 2016-10-18 09:09:45 +03:00
Dmitry Petrov 45c999788a Deep copy for IR elements.
NB: we can transform descriptors during copying.
2016-10-18 09:09:44 +03:00
Michael Bogdanov 31d971a302 Get rid of impl classes 2016-10-18 09:09:44 +03:00
Michael Bogdanov bdecffa1e1 Support singleton access 2016-10-18 09:09:43 +03:00
Michael Bogdanov 58ba5ed37b Default args support 2016-10-18 09:09:43 +03:00
Michael Bogdanov bf822daa3b INSTANCEOF support 2016-10-18 09:09:42 +03:00
Michael Bogdanov 869f60a053 When and safe cast support 2016-10-18 09:09:42 +03:00
Michael Bogdanov c34d140a53 Intrinsics update 2016-10-18 09:09:41 +03:00
Dmitry Petrov e8c7c821a7 FileClassDescriptor should provide all information required for TypeMapper. 2016-10-18 09:09:41 +03:00
Dmitry Petrov ce8bdef746 Minor: rename. 2016-10-18 09:09:40 +03:00
Dmitry Petrov d66d582f25 Update to origin/master.
IrReturn should return 'Unit' for "return without value".
2016-10-18 09:09:40 +03:00
Michael Bogdanov 97dbec06e5 Codegen impl classes moved to 'codegen' package 2016-10-18 09:09:39 +03:00
Michael Bogdanov 29bd7c3804 Experimental 'CompareTo' intrinsic 2016-10-18 09:09:39 +03:00
Michael Bogdanov 0c92174e42 FunctionCodegen -> JvmFunctionCodegen 2016-10-18 09:09:39 +03:00
Dmitry Petrov 8551bcf103 Refactor IrWhen. 2016-10-18 09:09:38 +03:00
Michael Bogdanov aca71dea22 Constuctors support, refactoring 2016-10-18 09:09:38 +03:00
Michael Bogdanov 204a8c5c14 Initial intrinsic implementation 2016-10-18 09:09:37 +03:00
Michael Bogdanov 95c88e4445 infrastructure 2016-10-18 09:09:37 +03:00
Michael Bogdanov ca97f17cb6 Hack: intrinsic package support in typeMapper 2016-10-18 09:09:36 +03:00
Michael Bogdanov b07fc09dac Added experimental coercion 2016-10-18 09:09:36 +03:00
Michael Bogdanov 7ad69bbea1 Add IR black box tests 2016-10-18 09:09:35 +03:00
Michael Bogdanov 978a4db07b Introduced IR CodegenFactory, added configuration key to enable it 2016-10-18 09:09:35 +03:00
Michael Bogdanov 0c60b21cca Package part support 2016-10-18 09:09:34 +03:00
Michael Bogdanov 1d8b9c5a58 Initial implementation of ExpressionCodegen 2016-10-18 09:09:34 +03:00
Michael Bogdanov 99e7df7035 Remove duplicated line from build.xml 2016-10-18 09:09:33 +03:00
Michael Bogdanov fa5095977f JvmClassGenerator->JvmClassCodegen 2016-10-18 09:09:33 +03:00
Michael Bogdanov fe51c35298 Fix for 'getNthResult' in IfThenElse expression impl 2016-10-18 09:09:32 +03:00
Dmitry Petrov f4aee6cab5 Update testData. 2016-10-18 09:09:32 +03:00
Dmitry Petrov 7e7bc127d1 Coerce finally expression to Unit 2016-10-18 09:09:31 +03:00
Dmitry Petrov 663eb21990 Coerce loop body to Unit. 2016-10-18 09:09:31 +03:00
Dmitry Petrov 291d535de7 Fix IR generation for string templates containing single entry. 2016-10-18 09:09:30 +03:00
Dmitry Petrov 1c2a676cd6 Make coercion to Unit explicit in IR. 2016-10-18 09:09:30 +03:00
Dmitry Petrov 233a979932 Source element for file classes. 2016-10-18 09:09:29 +03:00
Dmitry Petrov 16334771ad Minor: comment for IrMemberAccessExpression::getTypeArgument 2016-10-18 09:09:29 +03:00
Dmitry Petrov 7ae6c55ddb IrMemberAccessExpression::getTypeArgument 2016-10-18 09:09:28 +03:00
Dmitry Petrov 89de2a2ebe Drop IrGeneralCall, pull up corresponding members to IrMemberAccessExpression. 2016-10-18 09:09:28 +03:00
Dmitry Petrov d67d8016d3 Lowering for property declarations. 2016-10-18 09:09:27 +03:00
Dmitry Petrov b19bcc0587 IrElementTransformerVoid 2016-10-18 09:09:27 +03:00
Dmitry Petrov e0129ef33b IrDeclaration.transform(transformer, data) returns IrStatement.
Declaration containers assume that transformers maintain declaration structure.
2016-10-18 09:09:26 +03:00
Dmitry Petrov 65dcdaecfb Minor: irFile. 2016-10-18 09:09:26 +03:00
Dmitry Petrov 2b5cb0f722 Make statement containers mutable. 2016-10-18 09:09:26 +03:00
Dmitry Petrov 4c88ad408f Make declaration containers mutable. 2016-10-18 09:09:25 +03:00
Dmitry Petrov 4b9c5effd3 Minor: irElement rendering 2016-10-18 09:09:25 +03:00
Dmitry Petrov 90119880c5 IrCatch element. 2016-10-18 09:09:24 +03:00
Michael Bogdanov c02ae4a4a5 Initial implemetation of JvmClassGenerator 2016-10-18 09:09:23 +03:00
Michael Bogdanov 4e258df26b Extract super class info calculation to utility class, make 'signature' static 2016-10-18 09:09:23 +03:00
Michael Bogdanov 709bc08fbd Add IR->JVM output to bytecode tool window 2016-10-18 09:09:22 +03:00
Michael Bogdanov 0838b28e10 Add IR modules to build.xml 2016-10-18 09:09:22 +03:00
Dmitry Petrov 001b95473a Drop 'parent' and 'slot'. 2016-10-18 09:09:21 +03:00
Dmitry Petrov a8a6477ce5 IrOperator -> IrStatementOrigin 2016-10-18 09:09:21 +03:00