Ivan Cilcic
be073ce2e6
Reformat LightTree2Fir class to be able to parse block of code
2019-08-01 15:14:23 +03:00
Ivan Cilcic
bfe83d0bfd
Write some simple FIR dummy comparator
2019-08-01 15:14:22 +03:00
Ivan Cilcic
5a24c2253a
Write annotation's conversion (light tree to FIR)
2019-08-01 15:14:22 +03:00
Ivan Cilcic
8bcea1cf85
Change parseCharacter visibility to be visible from lightTree module
2019-08-01 15:14:22 +03:00
Ivan Cilcic
b0a04b1061
Fix bug in abstract benchmark class (light tree)
2019-08-01 15:14:22 +03:00
Ivan Cilcic
a66adffdcf
Create ExpressionsConverter class and took out light tree node handlers
2019-08-01 15:14:21 +03:00
Ivan Cilcic
05757c1ada
Write basis for separate testing some of fir nodes
2019-08-01 15:14:21 +03:00
Ivan Cilcic
e9ddbc412c
Took out common code of dir walking
2019-08-01 15:14:21 +03:00
Ivan Cilcic
5b5eadeeaa
Change method's order in converter according to KotlinParsing class
2019-08-01 15:14:21 +03:00
Ivan Cilcic
840e627f1f
Add annotation processing in joinTypeParameters method
2019-08-01 15:14:21 +03:00
Ivan Cilcic
8b1a63b54d
Move modifiers enum set to separate file
2019-08-01 15:14:20 +03:00
Ivan Cilcic
7cbd838720
Change AbstractBenchmark code to avoid collisions in files map
2019-08-01 15:14:20 +03:00
Ivan Cilcic
c9d5202971
Add reference to parse value parameters methods in light tree converter
2019-08-01 15:14:20 +03:00
Ivan Cilcic
bbf7263ddc
Summarize methods that convert value parameter nodes
2019-08-01 15:14:20 +03:00
Ivan Cilcic
5fc3367c25
Write ClassWrapper class to transmit information to lower FIR nodes
...
Additionally a number of further optimization in Converter class
2019-08-01 15:14:20 +03:00
Ivan Cilcic
b5d617492a
Change modifiers parsing and some minor changes in fir conversion
2019-08-01 15:14:19 +03:00
Ivan Cilcic
05a2b2fac8
Add some minor changes to fix errors after merge in lightTree module
2019-08-01 15:14:19 +03:00
Ivan Cilcic
d0dfcbb2f2
Add simple documentation to convert methods
2019-08-01 15:14:19 +03:00
Ivan Cilcic
311964acea
Made some code refactoring to make it more readable
2019-08-01 15:14:19 +03:00
Ivan Cilcic
f07d85eb83
Create benchmark for light tree FIR builder (including coroutines test)
2019-08-01 15:14:19 +03:00
Ivan Cilcic
0a8d0baa59
Write benchmarks for some generated cases
2019-08-01 15:14:18 +03:00
Ivan Cilcic
c47a8e2025
Add JMH for benchmark
2019-08-01 15:14:18 +03:00
Ivan Cilcic
0e8bbab925
Change total kotlin tests architecture
2019-08-01 15:14:18 +03:00
Ivan Cilcic
45faf76b4a
Write test to compare FIR from light tree with FIR from PSI
2019-08-01 15:14:18 +03:00
Ivan Cilcic
9dbacb5380
Put the common code into a separate function
2019-08-01 15:14:17 +03:00
Ivan Kylchik
16d7d202d2
Add separated tests for tree generation and fir convertion
2019-08-01 15:14:17 +03:00
Ivan Kylchik
343dcca79d
Add some test cases to test performance and tree construction correctness
2019-08-01 15:14:17 +03:00
Ivan Kylchik
d1e87eb90c
Implement LightTree to Fir converter for declarations
2019-08-01 15:14:17 +03:00
Ivan Kylchik
5b577b9754
Refactor light tree test compare for better result
2019-08-01 15:14:16 +03:00
Ivan Kylchik
f0a5408eb6
Modify previously added test
2019-08-01 15:14:16 +03:00
Ivan Kylchik
200fe63fca
Implement basic class to test light tree builder performance
2019-08-01 15:14:16 +03:00
Dmitriy Novozhilov
14d6f8009d
[NI] Update diagnostic messages in testdata
2019-08-01 14:37:54 +03:00
Dmitriy Novozhilov
8107d1515c
[NI] Minor. Remove redundant code that was added for debugging
2019-08-01 14:37:49 +03:00
Dmitriy Novozhilov
b6a7d21579
[NI] Fix extracting type variables for flexible types in in captured types
...
Bug was introduced in b99efb because of lack of tests.
All code in `AbstractTypeCheckerContextForConstraintSystem.extractTypeVariableForSubtype`
related to IN projection looks suspicious and needs further investigation
2019-08-01 14:37:41 +03:00
Alexander Podkhalyuzin
71a1a0e2f5
Do not highlight annotations as keyword (new default like in Java)
...
#KT-17993 Fixed
2019-08-01 13:49:03 +03:00
Ilya Gorbunov
695d657ca8
Random.nextLong: use progression properties consistently
...
Apply inspection suggestion that helps to reduce boxing.
2019-07-31 21:53:16 +03:00
Ilmir Usmanov
06388b885c
JVM_IR: Support suspend lambdas with receiver
2019-07-31 21:17:09 +03:00
Toshiaki Kameyama
3742993dea
Change to star projection: do not suggest when type paramer is generic type
...
#KT-30794 Fixed
2019-07-31 20:51:57 +03:00
Mikhail Glukhikh
10e42a55c9
FIR: set PSI elements in JavaSymbolProvider / enhancement scope
...
Related to KT-24351
2019-07-31 13:24:20 +03:00
Mikhail Glukhikh
0c4134bef4
Remove FirResolvePhase from FirElement hierarchy
2019-07-31 12:55:36 +03:00
Steven Schäfer
efb938a7c8
(Un)mute tests
2019-07-31 11:18:44 +02:00
Steven Schäfer
06274b1339
JVM_IR: Simplify RemoveDeclarationsThatWouldBeInlinedLowering
2019-07-31 11:18:44 +02:00
Steven Schäfer
93d414ac01
JVM_IR: Change CallableReferenceLowering to match the JVM backend
...
In particular, the JVM backend inlines the bodies of lambdas into the
generated lambda subclasses and stores bound receivers in the receiver
field of CallableReference. Both are required for reflection.
2019-07-31 11:18:44 +02:00
Steven Schäfer
917435a50c
Extract IrBody.statements utility function
2019-07-31 11:18:44 +02:00
Steven Schäfer
509d257475
JVM_IR: Fixes to SyntheticAccessorLowering
...
This commit fixes the handling of accessors for super calls, changes the
naming scheme to avoid accessor name clashes and uses a more robust test
to determine the placement of accessors for protected static members.
2019-07-31 11:18:44 +02:00
Steven Schäfer
173f1fc7d1
Fix statement order in LocalDeclarationsLowering
...
Previously, the order of IrSetField statements in this lowering was
non-deterministic. This broke the inliner in the JVM backend which
expects statements to be in argument order.
2019-07-31 11:18:44 +02:00
Steven Schäfer
c38fb27676
JVM_IR: Run CallableReferenceLowering before LocalDeclarationsLowering
2019-07-31 11:18:44 +02:00
Steven Schäfer
9816e62d08
JVM_IR: Fix inlining of interface methods
2019-07-31 11:18:44 +02:00
Dmitry Petrov
bdec8b04e8
Minor: trim in RenderIrElementVisitor
2019-07-31 10:37:35 +03:00
Alexey Tsvetkov
efe62c983a
Decrease max heap size for test process on Windows
...
Test processes themselves don't do much
(RAM heavy work is done in Kotlin and Gradle daemons).
The default 1600m max heap size is unreasonably high
for copying test projects and checking output logs.
2019-07-31 04:48:20 +03:00