Commit Graph

192 Commits

Author SHA1 Message Date
Dmitriy Dolovov dfd3b54ee4 Native: Handle integer overflow on div/rem of Int.MIN_VALUE by -1
^KT-45136
2021-03-24 09:55:46 +03:00
Igor Chevdar 752be27557 [K/N][tests] Disabled failing test for now 2021-03-23 11:57:56 +05:00
Svyatoslav Scherbina 818659f2bb Native: fix bug in KType support affecting only stdlib
Don't use IrClass.declarations to find enum entries during lowerings,
because this enum might already be lowered and thus have all entries
removed.
2021-03-23 09:45:40 +03:00
Svyatoslav Scherbina 2a7ccb11e8 Native compiler: remove unused dependency on common/src/hash 2021-03-22 16:03:29 +00:00
Svyatoslav Scherbina a471bbc185 Native compiler: remove unused hashing code
It was used to compute hashes for class names, but this is no longer
required after c6ac807034.
2021-03-22 16:03:28 +00:00
Svyatoslav Scherbina 39d748dbbb Native compiler: replace C++ CityHash64 impl by Kotlin one 2021-03-22 16:03:28 +00:00
Sergey Bogolepov ec23ebd1c5 Fix workerAutoreleasePool test on macos_arm64 using __autoreleasing
Also merge `createAutorelease` and `create. There is no need in
such separation since it was originally added to prevent
optimization `result`'s lifetime.
Turned out, it was still happening on Apple Silicon,
and only addition of __autoreleasing attribute solves the problem.
2021-03-22 14:02:39 +03:00
Sergey Bogolepov af3ff6c4d6 Revert "Revert "Remove unused protobuf from backend.native""
This reverts commit c4182c82
2021-03-19 15:24:44 +03:00
Sergey Bogolepov bba82c0d60 Revert "Revert "Remove obsolete bc.frontend module""
This reverts commit e7a385f9
2021-03-19 15:24:43 +03:00
Vasily Levchenko b3ae30fdea [llvm][context util] make error more readable 2021-03-19 08:04:00 +00:00
Nikolay Krasko e7a385f9da Revert "Remove obsolete bc.frontend module"
This reverts commit b48a42a5
2021-03-17 20:40:00 +03:00
Nikolay Krasko c4182c8269 Revert "Remove unused protobuf from backend.native"
This reverts commit 7a526a85
2021-03-17 20:39:35 +03:00
Sergey Bogolepov 7a526a852f Remove unused protobuf from backend.native 2021-03-17 13:44:05 +00:00
Sergey Bogolepov b48a42a5a6 Remove obsolete bc.frontend module 2021-03-17 13:44:04 +00:00
Igor Chevdar c37f8ba708 [IR][cache] Fix for https://youtrack.jetbrains.com/issue/KT-44764
The .konanLibrary is cached for each declaration for performance purposes, but it is only ok to do it
after IR has been lowered to its final state (or at least when declarations aren't being moved around),
so the fix respects that by only taking .konanLibrary of a IrFile (it is assumed that files stay on their place
during entire backend lowering procedure).

(cherry picked from commit e021138368b48e306ba99a96f47d93ecbe039f4d)
2021-03-15 15:54:51 +03:00
Alexander Udalov c56f719dcc Fix/suppress some warnings
(cherry picked from commit d8a43c216925b3a9e1475b786978436835a57927)
2021-03-15 15:54:50 +03:00
Igor Chevdar c5249ac714 Disposed target data
(cherry picked from commit 250be87acf66d5c780fb593f46da3540a536e049)
2021-03-15 15:54:49 +03:00
Vladimir Ivanov ba50a8275c Add test for [KT-3706]
Issue is already fixed by metadata-based cinterop

(cherry picked from commit fd4f5b2c07ebdc431d6243ac087f911ee30e88ca)
2021-03-15 15:54:48 +03:00
Igor Chevdar 6608ca5795 [K/N][IR] Fixed bug with parents setting
Fixes IR_VALIDATION warning as a side effect
2021-03-10 21:29:11 +05:00
Igor Chevdar f9f948fea6 [IR] Fixed problems with nested inline classes
Fixes https://youtrack.jetbrains.com/issue/KT-45139 as well

(cherry picked from commit 44916e39bfa69325a9ab73cb4533bd2612fb4e56)
2021-03-09 20:19:34 +00:00
Florian Kistner bd614aba0b Retain typed generics in ObjC export stubs (#4727)
* Add ObjC export test with disabled generics
* Retain typed generics in ObjC export stubs
* Introduce ObjC variance enum to decouple stubs from Kotlin variance

(cherry picked from commit 4d7c78b952a467ca3318c8c49d36b768fdc1ef9c)
2021-03-09 20:19:31 +00:00
Vladimir Ivanov fd02802028 [Native] Export KDoc into generated native header 2021-03-09 16:50:23 +03:00
Alexander Udalov 566f97ae3e JVM IR: remove dependency of 'backend.jvm' on 'psi2ir', 'ir.serialization.jvm'
Add a new module 'backend.jvm.entrypoint' which depends on psi2ir and
contains code that runs psi2ir + JVM IR backend with serialization
implementations.

Hopefully this will allow to compile these modules in parallel and
reduce the build time.
2021-03-05 20:46:33 +01:00
Alexander Udalov f332192de8 IR: remove SourceManager, make PsiSourceManager a singleton 2021-03-05 20:46:33 +01:00
Svyatoslav Scherbina 27904c0fb9 Native compiler source: replace inline classes by value classes
The former are deprecated.
2021-03-05 12:15:22 +00:00
Svyatoslav Scherbina b45de517c4 Native stdlib build: fix using OptionalExpectation in Interop/Runtime
Current build for kotlin-native/Interop/Runtime sources is not truly
MPP, so explicit -Xcommon-sources flags are required for the compiler
to allow using OptionalExpectation annotations.
2021-03-05 12:15:22 +00:00
Abduqodiri Qurbonzoda a1be20d359 Add String case conversion tests
(cherry picked from commit 103499280c40767298eabd534d421d6e3c695c1e)
2021-03-02 17:11:24 +00:00
Abduqodiri Qurbonzoda 9592422b28 Add Char case conversion tests
(cherry picked from commit 6e28726c31d41a664e9e3d31c7370629d8b279a2)
2021-03-02 17:11:24 +00:00
Abduqodiri Qurbonzoda 63897b5aca Update Unicode version in Char and String case conversion functions #KT-45213
(cherry picked from commit 25b0dac947cb55f842b8e503351f4ebd2064628c)
2021-03-02 17:11:23 +00:00
SvyatoslavScherbina 7bfcf815ba Add missing DisposeStablePointer calls to produce_dynamic test
(cherry picked from commit 65109f68622ca6371511d7d36167197fa7f9003c)
2021-03-02 17:11:21 +00:00
Igor Chevdar 10e79bff8b [IR] Fixed bug with wrong init order of a enum's entries
This fixes https://youtrack.jetbrains.com/issue/KT-38540

(cherry picked from commit d031526a6e1a618597898dd6beadb04eed74b478)
2021-03-02 17:11:20 +00:00
Igor Chevdar 31835f1921 [IR] Reworked adapted references building + test
As a side effect, this fixes https://youtrack.jetbrains.com/issue/KT-43887

(cherry picked from commit 387c09e7aed7666f5a178b2ac342fb17ed3cdda3)
2021-03-02 17:11:19 +00:00
Stanislav Erokhin f77ba914c7 [MERGE] Kotlin/Native history merged into kotlin/master 2021-02-26 15:30:58 +01:00
Vasily Levchenko 905c0c3dd3 [build] version of kotlin native stored in resouces 2021-02-26 12:51:51 +01:00
Vasily Levchenko bdc87edfd0 [build] cache repository fix 2021-02-26 12:51:51 +01:00
Alexander Udalov dbce28053c IR: move frontend-dependent code into implementations in psi2ir 2021-02-26 11:49:28 +01:00
Alexander Udalov 2566aa9db2 IR: remove TranslationPluginContext.bindingContext
This removes another dependency of 'ir.tree' on 'frontend', and among
other things, makes it possible to implement TranslationPluginContext
for FIR in the future.
2021-02-26 11:49:28 +01:00
Vasily Levchenko 65dd798818 [build][native support] intoduced new native support. 2021-02-24 11:07:18 +01:00
Vasily Levchenko fa08b1dc48 [kotlin-native] change in output of library_mismatch 2021-02-24 11:07:17 +01:00
Vasily Levchenko 8a4b5efa9e [build][native] don't ever fix dist, take it with API 2021-02-24 11:07:17 +01:00
Vasily Levchenko ebeac62f17 [build][tests][g/c] fix dependencies on platform and dist 2021-02-24 11:07:16 +01:00
Vasily Levchenko 46f2182ba6 [build][tests] more utilities functions used 2021-02-24 11:07:16 +01:00
Pavel Punegov 4610d9f171 Fix file separator in tests for Windows 2021-02-24 11:07:16 +01:00
Vasily Levchenko 6234bcb453 [build][test] enable external compiler tests 2021-02-24 11:07:15 +01:00
Vasily Levchenko 3867cf6ef5 [build] switch to kotlin-build-gradle-plugin:0.0.25 2021-02-24 11:07:14 +01:00
Vasily Levchenko 326ab1cd02 [build][tests] disable interop_concurrentRuntime - very unstable 2021-02-24 11:07:14 +01:00
Vasily Levchenko 17fc4a087b [build] enable sanity tests (step 3) 2021-02-24 11:07:14 +01:00
Vasily Levchenko 840c1e612c [build] joint (step 2)
- dist:
  - compiler
  - tools(cinterop,klib)
  - stdlib
  - cache
2021-02-24 11:07:13 +01:00
Vasily Levchenko c85c3ac123 [build] joint (step 1)
(cherry picked from commit 7d0775f7e69ab900200bcf1fa78b94d68e6bd4f6)
2021-02-24 11:04:59 +01:00
Anton Bannykh ae5655f9b3 BasicIrModuleDeserializer is not inner class anymore
(cherry picked from commit 7a32327afb8beaf769b23e342348707874afbfb3)
2021-02-24 11:00:05 +01:00