Commit Graph

58180 Commits

Author SHA1 Message Date
Vitaliy.Tikhonov cf5a1615ea [IR] add JsTextTest for IrScript 2019-10-10 12:52:05 +03:00
Vitaliy.Tikhonov 209a20153e [Psi2IR] support IrScript 2019-10-10 12:52:05 +03:00
Vitaliy.Tikhonov 14510c1da3 [IR] create IrScript, infrastructure for it and update visitors 2019-10-10 12:52:05 +03:00
Vitaliy.Tikhonov f13e05de7d [JS SCRIPTING] moved the javascript engines to a separate module 2019-10-10 12:52:05 +03:00
Ilya Goncharov bf0b4f6878 Commonization of condition for linking node packages 2019-10-10 11:58:18 +03:00
Ilya Goncharov bcbc408892 Remove NpmSimpleLinker
- Now only Yarn is responsible to link modules
2019-10-10 11:58:18 +03:00
Mads Ager 92cf521e11 [IR] Deal with forward references in default argument lambdas.
Rely on the frontend weeding out cases that are not supported.

In psi2ir, introduce all the parameters before processing default
values.

Change the DefaultArgumentStubGenerator to generate code that
matches the behavior of the current backend.
2019-10-10 09:00:51 +02:00
Abduqodiri Qurbonzoda 834eeb567b Alter componentN documentation 2019-10-10 05:08:44 +03:00
Abduqodiri Qurbonzoda e54b405fe4 Fix Iterable, Sequence and String index overflow in windowed 2019-10-09 19:48:39 +03:00
Pavel Kirpichenkov 42740c8b97 Fix capturing of outer type parameters for classes declared inside init block 2019-10-09 16:01:46 +03:00
Vladimir Dolzhenko 5e1efead9a Fixed errors reporting in tearDown in performance tests 2019-10-09 13:39:13 +02:00
Leonid Startsev 395d595b22 Supply JVM and JS platforms when compile from CLI
To be able to check descriptor's platform in frontend during plugin processing.

This is needed for serialization plugin because some synthesized descriptors (annotation interface implementation) must be JVM-only (or the Native compilation fails).
2019-10-09 14:18:54 +03:00
Kristoffer Andersen 9d1d6a7b1f JVM IR: Do not generate DefaultImpls if it's empty. This revealed that InterfaceDelegationLowering was relying on the presence of DefaultImpls even when empty. Hence, simply dropping it from InterfaceLowering was not trivial. Moved default delegation in DefaultImpls to SuperType.DefaultImpls to InterfaceLowering. Clean up logic considerably, and document inter-phase dependencies. 2019-10-09 13:03:21 +02:00
Kristoffer Andersen cc6252098f Add a test to reveal flaw in call delegation with default implementations in interfaces. 2019-10-09 13:03:21 +02:00
Kristoffer Andersen 5cefd4e443 JVM IR: Implement -Xjvm-default=enable 2019-10-09 13:03:21 +02:00
Ilya Goncharov 48e2e1f0c1 Remain only license files 2019-10-09 13:52:51 +03:00
Roman Artemev e738534bef [KLIB] Promote Konan ABI Version 2019-10-09 13:23:19 +03:00
Roman Artemev d5176cbf5d [IR SERIALIZATION] Get rid of UniqId proto message
- encode locality flag in major bit of uniqid (1 - global, 0 - local)
2019-10-09 13:23:18 +03:00
Roman Artemev fcae5873d0 [IR SERIALIZATION] Get rid of Annotations message 2019-10-09 13:23:18 +03:00
Roman Artemev aeafaf78f1 [IR SERIALIZATION] Replace DescriptorReference boolean fields with single flag in proto 2019-10-09 13:23:13 +03:00
Roman Artemev 105fc4b0ca [IR SERIALIZATION] Get rid of FqName 2019-10-09 13:06:01 +03:00
Roman Artemev 9fa89bf7e2 [IR SERIALIZATION] Get rid of IrDataIndex 2019-10-09 13:06:01 +03:00
Ilya Goncharov 8c2ae4f91a Migrate on copyfiles 2019-10-09 12:57:26 +03:00
Ilya Goncharov 896271cd87 Add similarity with kotlin-test-js-runner 2019-10-09 12:57:26 +03:00
Natalia Selezneva 1bb6a7cc91 Remove fir tests from idea <= 183
Broken at 17dcdb59de
2019-10-09 11:17:13 +03:00
Pavel Kirpichenkov 9bcee2cc74 Minor: fix typo in diagnostic message 2019-10-09 10:53:12 +03:00
Vladimir Dolzhenko 55548d9199 Use test path relative to testDataPath in fixture.configureByFile to be complaint with 193, part 3 2019-10-09 07:34:25 +02:00
nikita.movshin b3392c792b Add changelog for 1.3.50 2019-10-08 20:36:38 +03:00
Abduqodiri Qurbonzoda b4d580fa91 JS: document array destructuring behavior (KT-17544) 2019-10-08 19:24:31 +03:00
Mads Ager f9d117970a [JVM_IR] Map suspend lambdas to original function for inlining. 2019-10-08 19:21:37 +03:00
Ilya Goncharov 8ef28446cc Remove webpack protocol for processing stacktrace 2019-10-08 18:51:40 +03:00
Ilya Goncharov f4ba132327 Simplify progress procentage 2019-10-08 18:51:40 +03:00
Ilya Goncharov 7e5c51e6aa Windows source-map-loading with absolute paths 2019-10-08 18:51:40 +03:00
Alexey Kudravtsev 9c1e59c720 Use ReentrantLock instead of ReadWriteLock as a more cheaper alternative more suitable to usage pattern 2019-10-08 18:20:05 +03:00
pyos b6a1154672 Add a test for non-null assertions in local classes/functions 2019-10-08 17:19:41 +02:00
pyos 06c00f4d9e Unmute some JVM_IR inlining tests 2019-10-08 17:19:41 +02:00
pyos a0edf2934b JVM_IR: implement isCallInsideSameModuleAsDeclared 2019-10-08 17:19:41 +02:00
pyos f6fe273774 JVM_IR: don't reset callSiteMarker to null after generating lambdas 2019-10-08 17:19:41 +02:00
pyos cea69e0706 JVM_IR: do not generate redundant load+stores before inline calls 2019-10-08 17:19:41 +02:00
pyos 59408242db JVM_IR: ignore captured parameters in lambda invokeMethodDescriptor 2019-10-08 17:19:41 +02:00
pyos a20d212908 JVM_IR: take lambda arguments from signature, not call site 2019-10-08 17:19:41 +02:00
pyos 4ea4bc1c2b JVM_IR: pass callee after fake override resolution to source inliner
Fixes NPE in:

    open class A {
        inline fun f() = 1
    }

    class B : A() {
        fun g() = f()
    }
2019-10-08 17:19:41 +02:00
pyos 07bde889b4 JVM_IR: generate more correct names for regenerated objects
and fake lambda types, too. (But those only matter for debugging.)

Also, share object name generators between methods with the same name to
avoid rewriting objects from one with objects from the other.
2019-10-08 17:19:41 +02:00
pyos 58775275e7 JVM_IR: omit nullability assertions in anonymous object constructors 2019-10-08 17:19:41 +02:00
Ilya Chernikov 37fed8bbc9 Add jvmCompilerIntegrationTest task as a subtask of compilerTest:
add embeddable compiler and client tests to it
2019-10-08 17:05:34 +02:00
Ilya Chernikov 1a8bcee86c Restore embeddable compiler smoke test
also move sources and testdata to the appropriate place
2019-10-08 17:05:33 +02:00
Ilya Chernikov cd4cce3f9f Refactor embeddable compiler client tests:
- move from the legacy location to the project dir
- move testdata from resources to the separate folder (fixes global compileTestKotlin build)
- fix classpaths handling
2019-10-08 17:05:31 +02:00
Mikhail Glukhikh 07e067102b FIR body resolve: use one scope session per module
Gives significant (~5%) performance boost mainly due to use-site scope caching
2019-10-08 17:59:44 +03:00
Alexander Gorshenev c2c88a9ee6 Use MessageCollector.NONE as a dummy logger collector for js library resolver 2019-10-08 16:56:29 +03:00
Alexander Gorshenev 71eb413350 Attached library resolver to messge collector 2019-10-08 16:56:29 +03:00