Alexander Udalov
d4605f5816
IR: add type parameter to IrMemberAccessExpression and some subclasses
...
This is needed to get rid of the diamond hierarchy:
IrMemberAccessExpression
/ \
/ \
IrFunctionAccessExpression IrCallableReference
\ /
\ /
IrFunctionReference
In the subsequent commit, IrFunctionReference no longer inherits from
IrFunctionAccessExpression; the more precise type of `val symbol:
IrFunctionSymbol` is now carried via the generic type argument.
This will help to refactor IR element hierarchy from interfaces to
classes, improving performance of visitors and transformers.
2020-07-01 13:03:56 +02:00
Mikhail Glukhikh
67158caf73
FunctionGenerator: use owner instead of descriptor
2020-06-16 19:17:01 +03:00
Alexander Udalov
6e67e1e78d
Replace appendln with appendLine in project
2020-06-11 13:01:30 +02:00
Roman Artemev
ed79ab68ab
[IR] Remove DeclarationDescriptor from IrExpression* tree API
2019-11-12 20:45:11 +03:00
nikita.movshin
65244b4bea
Update copyright.
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
Update only 2 lines copyright.
2019-04-23 20:09:22 +03:00
Mikhael Bogdanov
a122cba862
Switch Kotlin project to jvm-target 1.8
...
#KT-29405
2019-01-31 07:43:05 +01:00
Zalim Bashorov
49f2598907
IrTypes: fix ir2cfg
...
(cherry picked from commit cf162c7)
2018-06-29 11:24:46 +03:00
Dmitry Petrov
ede3a34baa
Temporary fix for IR2CFG: use originalKotlinType
2018-06-29 11:24:46 +03:00
Alexey Tsvetkov
8a82c1618c
Use Plugins DSL in Kotlin Gradle scripts
...
When plugins DSL is used, there is no need to
manually generate typesafe accessors for extensions and
conventions (by running `./gradlew kotlinDslAccessorsSnapshot`).
2018-03-26 16:09:29 +03:00
Yan Zhulanow
34d1611ed4
Add Pill support to compiler and IDE modules
2018-03-02 03:15:17 +03:00
Alexander Podkhalyuzin
3f8170d369
Clean idea files generated on the gradle import, add them to .gitignore
2017-09-19 23:58:27 +02:00
Ilya Chernikov
27968c8e13
Set proper jvmTarget for projects
2017-09-19 21:37:27 +02:00
Ilya Chernikov
deda50dbbb
Continue switching projects to improved dsl: sourceSets and test running
2017-09-19 21:37:26 +02:00
Ilya Chernikov
61dfb75e0e
Implement Gradle Kotlin DSL build
2017-09-19 21:37:06 +02:00
Mikhail Glukhikh
c5a81691fb
Partial code cleanup: can be private and some others applied
2017-08-01 17:08:56 +03:00
Mikhail Glukhikh
b121bf8802
Cleanup: fix some compiler warnings (mostly deprecations, javaClass)
2017-03-15 17:35:31 +03:00
Dmitry Petrov
d096f1d381
'while' and 'do-while' loop generator fixes.
...
Generate 'do-while' loop body as IrComposite, because variables declared
in loop body should be visible in loop condition.
Wrap 'do-while' loop in IrBlock so that variables declared in loop body
are not visible outside of the loop.
Generate 'while' and 'do-while' loops as expressions of type Unit.
2017-03-07 11:56:52 +03:00
Mikhail Glukhikh
9609c8af90
IR CFG: IrStatement is now used for CFG representation instead of IrElement
2016-10-18 09:09:51 +03:00
Mikhail Glukhikh
07eae1d206
IR to CFG: type operator unrolling
2016-10-18 09:09:50 +03:00
Mikhail Glukhikh
ea13386d0b
IR to CFG: member access unrolling
2016-10-18 09:09:50 +03:00
Mikhail Glukhikh
5a04c72e75
Break / continue implementation, test with break / continue, related changes in loop & loop tests
2016-10-18 09:09:49 +03:00
Mikhail Glukhikh
e03e13af43
Do..while loop implementation and first test
2016-10-18 09:09:49 +03:00
Mikhail Glukhikh
bcf2b410ba
While loop implementation && first loop test
2016-10-18 09:09:48 +03:00
Mikhail Glukhikh
979f2231a1
IR to CFG: when implementation in function generator, some when tests
2016-10-18 09:09:48 +03:00
Mikhail Glukhikh
eaf10a4675
IR to CFG test generator, sequential function tests
2016-10-18 09:09:47 +03:00
Mikhail Glukhikh
65db7aa1ba
CFG renderer
2016-10-18 09:09:47 +03:00
Mikhail Glukhikh
bab0abeee6
IR to CFG: function generator (initial version)
2016-10-18 09:09:47 +03:00
Mikhail Glukhikh
ae96afb1dc
CFG: function builder
2016-10-18 09:09:46 +03:00
Mikhail Glukhikh
59cdcdba28
CFG: interfaces implementation and builders
2016-10-18 09:09:46 +03:00
Mikhail Glukhikh
db810e55d3
Basic CFG interfaces
2016-10-18 09:09:45 +03:00
Mikhail Glukhikh
779d4f7f3e
Module compiler/ir/ir2cfg added
2016-10-18 09:09:45 +03:00