Commit Graph

99 Commits

Author SHA1 Message Date
Leonid Startsev c3f66cda65 Lowering extension point 2018-08-09 16:16:09 +03:00
Mikhael Bogdanov 813e1ffa39 Initial support of function callable references 2018-08-09 14:22:46 +03:00
Mikhael Bogdanov da34299064 Temporary set public constructor visibility for lowered local declarations
Allow to support callable reference in next commits
2018-08-09 14:22:45 +03:00
Roman Artemev c62e4b4fcf [JS IR BE] Support coroutines
* Move FinallyBlockLowering to common part
* Fix catching of dynamic exception
* Fix bridges for suspend functions
* Disable explicit cast to Unit
* Run lowering per module
* Update some test data
2018-08-08 18:33:39 +03:00
Svyatoslav Scherbina e923c65704 backend.common: improve support for unsigned types 2018-08-02 16:29:39 +03:00
Svyatoslav Scherbina 1aac1c2d69 Prepare default arguments IR lowering for inline classes support
Allow `nullConst` to be customized by backend
2018-08-02 16:29:38 +03:00
Mikhael Bogdanov 0df6fddd0a Extract utils from ReferenceSymbolTable 2018-08-01 12:29:28 +02:00
Mikhael Bogdanov 1bf3f4bda7 Extract ReferenceSymbolTable, support lazy type parameters 2018-08-01 12:29:27 +02:00
Georgy Bronnikov 8478c73434 Make @JvmStatic work on JVM_IR 2018-07-13 13:43:02 +03:00
Mikhael Bogdanov da0a966d65 Initialize return type and use unit type in IrDelegationConstructorCall
(cherry picked from commit faac924)
2018-06-29 11:24:46 +03:00
Zalim Bashorov 068859eece Minor: use right type for null literal
(cherry picked from commit 88c824b)
2018-06-29 11:24:46 +03:00
Zalim Bashorov 92407c509f IR BE common: add KotlinType based utils
(cherry picked from commit d8be3a6)
2018-06-29 11:24:46 +03:00
Zalim Bashorov 686a3d631c IR BE common: provide type arguments count explicitly for ir calls to reduce dependency on descriptors
(cherry picked from commit af76ae2)
2018-06-29 11:24:46 +03:00
Zalim Bashorov f002e6030a IR BE common: use another ctor of IrGetValueImpl in LocalDeclarationsLowering
(cherry picked from commit 7e34d6e)
2018-06-29 11:24:46 +03:00
Zalim Bashorov d5906dd584 IR BE common: fix InnerClassesLowering
(cherry picked from commit 4239a5f)
2018-06-29 11:24:46 +03:00
Dmitry Petrov d5286874bd Fix circular dependency: TypeTranslator <-> ConstantValueGenerator
TODO proper DI?
2018-06-29 11:24:46 +03:00
Svyatoslav Scherbina b11abeed6a IrTypes: migrate some code from backend.common
(cherry picked from commit 3788130)
2018-06-29 11:24:46 +03:00
Svyatoslav Scherbina f1bdb48a76 IrTypes: comment backend.common code to be migrated by someone else
(cherry picked from commit 0491fc4)
2018-06-29 11:24:46 +03:00
Svyatoslav Scherbina 25d0c57194 backend.common: remove obsolete lowerings
(cherry picked from commit 5d6b9c7)
2018-06-29 11:24:46 +03:00
Dmitry Petrov 353076f596 compiler/ir/backend.common is NOT a part of compiler/backend-common 2018-06-29 11:24:46 +03:00
Dmitry Petrov 4eb2fc66d0 IrTypes: deep copy with symbols
Preliminary implementation of type remapper (does nothing).
2018-06-29 11:24:46 +03:00
Dmitry Petrov 0f718ec2d8 IrTypes: Fix up some back-end code 2018-06-29 11:24:46 +03:00
Svyatoslav Scherbina cffe7fb23b backend.common: backport DefaultArgumentStubGenerator from Native 2018-06-21 18:18:03 +03:00
Svyatoslav Scherbina 830923e111 backend.common: backport LocalDeclarationsLowering from Native 2018-06-21 18:18:02 +03:00
Anton Bannykh 6df9919eba JS IR: add DefaultContructorMarker to the runtime 2018-06-21 13:27:17 +03:00
Mikhael Bogdanov a4308e983a Set proper parent for lowered local declaration 2018-06-21 11:18:35 +02:00
Mikhael Bogdanov 50d7e49211 Skip unmapped receiver in inner class lowering 2018-06-04 10:49:56 +02:00
Dmitry Petrov 2a0e7eb412 IR: split IrUtils.kt into common and backend-specific part 2018-05-25 09:40:51 +03:00
Mikhael Bogdanov 61f444f846 Avoid empty clinit generation 2018-05-18 12:58:00 +02:00
Mikhael Bogdanov f4f01efd1f Avoid descriptors usage in IrFunction flag calculation 2018-05-15 16:07:07 +02:00
Mikhael Bogdanov 9d36367fbd Minor. Code clean: use class kind utils 2018-05-15 16:06:30 +02:00
Mikhael Bogdanov 678b1101cb Add class kind utils 2018-05-15 16:06:28 +02:00
Mikhael Bogdanov 9546c36c3c Get rid of 'descriptor.isInner()' call 2018-05-15 16:06:00 +02:00
Mikhael Bogdanov b9da331dcd Migrate DescriptorsFactory.getInnerClassConstructorWithOuterThisParameter() API to symbols 2018-05-15 16:05:59 +02:00
Mikhael Bogdanov 9103b6a51b Migrate DescriptorsFactory.getOuterThisFieldSymbol() API to symbols 2018-05-15 16:05:59 +02:00
Mikhael Bogdanov d4d8fe4995 Migrate DescriptorsFactory.getSymbolForObjectInstance() API to symbols 2018-05-15 16:05:57 +02:00
Mikhael Bogdanov 2631d149b2 Migrate DescriptorsFactory.getFieldDescriptorForEnumEntry() API to symbols 2018-05-15 16:05:55 +02:00
Mikhael Bogdanov 9fad3f25f3 Minor. Reformat 2018-05-15 16:04:47 +02:00
Roman Artemev 131fb642aa Fix initializer lowering crash during deep copy 2018-05-11 17:14:30 +03:00
Mikhael Bogdanov 643e4f5c5a Get rid of descriptors in TailrecLowering 2018-05-04 16:35:44 +02:00
Mikhael Bogdanov 489808ec38 Get rid of descriptors in PropertiesLowering 2018-05-04 16:35:43 +02:00
Mikhael Bogdanov 17e2f1a61e Get rid of descriptors in LateinitLowering 2018-05-04 16:35:42 +02:00
Mikhael Bogdanov 74fa7ee676 Minor. Code clean 2018-05-04 16:35:42 +02:00
Mikhael Bogdanov fdbc863e60 Minor. Reformat 2018-05-04 16:28:12 +02:00
Mikhael Bogdanov 12ba1b002c Refactor SharedVariablesManager: get rid of descriptors in API 2018-05-04 12:33:44 +02:00
Mikhael Bogdanov b4853d9293 Minor. Reformat 2018-05-03 12:04:47 +02:00
Mikhael Bogdanov f0e4420259 Don't recreate ir declarations to set body 2018-05-03 12:04:45 +02:00
Mikhael Bogdanov 5a2e62dd4f Use symbols in IrGet/SetValue 2018-05-03 11:38:50 +02:00
Roman Artemev 8bc80a9829 Fix secondary constructor lowering 2018-04-27 20:02:57 +03:00
Roman Artemev cf31e544eb Implement default interface members 2018-04-27 20:01:45 +03:00