Commit Graph

56643 Commits

Author SHA1 Message Date
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
Alexey Tsvetkov 4db3dcc28f Use short temp dirs names only in gradle integration tests 2019-07-31 04:48:20 +03:00
Alexey Tsvetkov 1a0c6fe8b8 Unify test tasks configuration in gradle tests 2019-07-31 04:48:20 +03:00
Alexey Tsvetkov 847af4456a Remove KotlinGradlePluginJpsParametrizedIT
We've stopped running it on CI some time ago,
does not seem very useful now
2019-07-31 04:48:20 +03:00
Alexey Tsvetkov 54227e15ff Do not set max heap size twice
The parameter is also set in the next statement (`maxHeapSize = "1600m"`)
2019-07-31 04:48:20 +03:00
Ivan Gavrilovic de5335b17f Fix gradle integration tests on Windows
Android Gradle Plugin 3.0 and 3.1 use aapt that does not handle
long paths on Windows. This commit uses shorter paths for the project
working directory on Windows.

Test: running integration tests on Windows
2019-07-31 04:48:20 +03:00
Ty Smith e74a00789d Add embeddable artifact for jvm-abi-gen
#KT-28824 Fixed
2019-07-30 20:47:56 +03:00
Alexey Tsvetkov 37042801c4 Fix CompilerDaemonTest#testDaemonJvmOptionsParsing
Forgot to update test data after 560f1483e8 and 317c39f27d

    #KT-33048 Fixed
2019-07-30 20:35:23 +03:00