Abduqodiri Qurbonzoda
91d42fe345
[K/N] Advance deprecation level of subarrayContentToString to ERROR
2021-04-06 18:44:22 +03:00
Abduqodiri Qurbonzoda
7fdf7c6175
[K/N] Move declarations from Text.kt to Strings.kt and StringBuilder.kt
2021-04-06 18:44:20 +03:00
Abduqodiri Qurbonzoda
71afd112c6
[K/N] Remove old String and utf8 conversion api #KT-31343
2021-04-06 18:43:41 +03:00
Svyatoslav Scherbina
df77cd303f
Don't use exitProcess to indicate a failure in Native library resolver
...
If Native compiler performs exitProcess, it crashes Gradle daemon that
runs the compiler.
2021-04-06 13:18:07 +00:00
Pavel Punegov
e23d09beb6
[Native] Return kotlinCompilerRepo parameter back
...
This parameter is used to specify maven path in case of kotlin_version
rewriting that happens during Nightly test runs.
2021-04-06 09:59:08 +00:00
Svyatoslav Scherbina
a4b9e2502c
Native: don't use frame pointer in leaf functions on ARM64 targets
...
Clang 8 and Clang 11 both have this optimization, but it was moved
from LLVM to Clang:
https://github.com/llvm/llvm-project/compare/c5b890e922432bd80a5e3c6d82994ef4cdc41900...a0aa58dad53f2e5e90a9b7079ec31bf7c3144fc7
So Kotlin/Native compiler now has to enable this optimization explicitly.
2021-04-06 08:44:12 +00:00
Svyatoslav Scherbina
2b6d8ab975
Native: replace no-frame-pointer-elim* LLVM attributes by frame-pointer
...
LLVM 8 and LLVM 11 understand both, but *frame-pointer-elim*
are obscure and obsolete.
2021-04-06 08:44:12 +00:00
Elena Lepilkina
85cb8eb959
[Native][perf] Increase heap space for K/N compiler in performance project
2021-04-06 09:27:28 +03:00
Alexander Shabalin
451fc8e9df
Fix enum isFrozen for wasm
2021-04-05 14:07:29 +00:00
Elena Lepilkina
d0513c9ece
[Native][perf] Removed unneeded workaround
2021-04-05 10:52:55 +00:00
Elena Lepilkina
1fea08aac1
[Native][Performance server] Fix request for new composite build numbers
2021-04-05 10:52:54 +00:00
Ilya Gorbunov
35ae913a5e
Stabilize new string and char case conversion API KT-45873
2021-04-03 10:39:17 +03:00
Ilya Gorbunov
8b85bae020
Stabilize Char-to-Int conversions KT-45874
2021-04-03 10:30:50 +03:00
Vladimir Ivanov
c5f06d6e3f
Patch expectedLazyNoGenerics.h to corresond with new test ( #4271 )
2021-04-02 19:38:22 +03:00
Ilya Gorbunov
fa7460ba48
Store Duration value as a multi-range Long
...
Now precision loss happens at bigger durations.
This changes the binary API due different underlying type of Duration.
2021-04-02 17:43:20 +03:00
Svyatoslav Scherbina
65fa2f62bd
Fix :kotlin-native:**:nativelibs Gradle tasks
...
These tasks did copy all files from build to build/nativelibs, thus
causing up-to-date checks to fail, and native libs and temporary build
files to be accumulated in recursive directories like
nativelibs/nativelibs/... in both build dirs and dist.
Fix this by copying only relevant files.
2021-04-02 14:13:48 +00:00
Alexander Shabalin
71397a06fb
Add Stop-the-World Mark & Sweep GC for single-threaded programs.
...
GC implementation for testing purposes
* Only works for a single mutator
* Runs on the same thread as the mutator
* Runs every nth checkpoint and after every m bytes are allocated
* Runs finalizers after sweeping on the mutator thread.
2021-04-02 12:13:44 +00:00
Vladimir Ivanov
b87a943efd
[Native] Add test for -Xexport-kdoc ( #4249 )
...
(*) Fix exported kdoc indentation and extra blank lines
2021-04-02 12:10:09 +03:00
Dmitriy Dolovov
003d07b51e
[K/N][IR] Ref to expect property in actual declaration is not remapped
...
^KT-36880
2021-04-02 09:35:46 +03:00
Elena Lepilkina
393aaac2b9
[Native] Removed old gradle properties for kotlin repo and versions
2021-04-02 05:42:13 +00:00
Alexander Udalov
5f7f4a4ac8
Improve API of annotation arguments in kotlinx-metadata
...
See changes in ChangeLog.md for more information
2021-04-01 22:34:53 +02:00
Alexander Shabalin
e5ea7f5b4e
Do not freeze enum in new MM
2021-04-01 08:41:08 +00:00
Ilya Goncharov
03fed85447
[IR] Change copy method into shallowCopy in Native
2021-03-31 20:14:56 +03:00
Svyatoslav Scherbina
1d96f810da
Native: fix target for ReturnsRetained and ConsumesReceiver annotations
...
These annotations can be used on Objective-C property accessors imported
to Kotlin.
Note: the annotations aren't used in source code, only generated
directly to metadata by cinterop. So this commit doesn't in fact fix
anything but rather makes the implementation less fragile.
See https://github.com/JetBrains/kotlin-native/issues/3336 .
2021-03-30 20:23:59 +00:00
Svyatoslav Scherbina
107129679e
Native: fix interop_objc_tests after recent frontend change
...
b60056f11e raises a warning to an error,
fixing this error here.
2021-03-30 15:32:46 +00:00
Ilmir Usmanov
5617d83c6b
Remove coroutinesPackage from tests, since it is kotlin.coroutines
...
anyway.
Simplify createTextForHelpers: remove experimental coroutines version.
2021-03-30 12:41:40 +03:00
Pavel Punegov
303d5ece96
Use iPhone 11 as a default target for ios simulator tests.
...
iPhone 12 isn't available on the xcode 12 without updates.
2021-03-30 06:47:01 +00:00
Ting-Yuan Huang
dba127a4d8
Add AnalysisHandlerExtension extension point for K2Native
...
frontendPhase is moved out of back phases to allow frontend only mode.
AnalysisHandlerExtension allows compiler plugins to:
1. Intercept and override the default analysis.
2. Utilize the compiler infrastructure to do custom analysis.
A well know plugin on the JVM platform is KAPT.
2021-03-29 20:41:06 +03:00
Elena Lepilkina
510e38b791
[K/N][performance] Adopted performance service to work with new configurations and build numbers
2021-03-29 17:10:18 +00:00
Elena Lepilkina
d709df9d8d
[K/N][performance] Removed analyzer dependencies and fixed running benchmarks
2021-03-29 17:10:18 +00:00
Sergey Bogolepov
f1280a63d3
Remove -target-cpu flag from Mac targets
...
Because this option is unsupported in
bitcode embedding.
2021-03-29 12:17:12 +07:00
Alexander Shabalin
770401801b
Implement freezing in the new MM
...
Currently, it uses suboptimal storage for the freeze bit. This'll be revised later when we finalize stack objects handling in the new MM.
2021-03-26 15:00:14 +00:00
Ilya Matveev
e56ac775ca
[K/N][tests] Do not propagate user.dir property to compiler/cinterop
...
In a Gradle process, the user.dir property is set to the directory
where the build was started. By default, if we start a child process
via project.javaexec, Gradle sets its working directory to the
directory of the current project. But passing Gradle's value of user.dir
to that process overrides this setting.
This makes tools started in a such way sensitive to directory the build
is started from. Thus a test using relative paths may fail if it is
started from a wrong directory.
This patch fixes this issue for Kotlin/Native tests.
2021-03-26 12:38:27 +03:00
Pavel Punegov
991e5210ba
Simplify further support for simulators by using target family
2021-03-25 13:06:13 +00:00
Pavel Punegov
5acd72d5a5
Update simulators: use fresh targets
2021-03-25 13:06:13 +00:00
Pavel Punegov
39b11f6ef0
Create simulator device in case it is missing on the host
2021-03-25 13:06:12 +00:00
Igor Chevdar
a618791ff0
[K/N][IR] Removed unnecessary hack
...
The hack has been rendered redundant due to the recent fixes in psi2ir
2021-03-24 20:42:40 +05:00
Sergey Bogolepov
5243720043
Add support for android and wasm on macos_arm64
2021-03-24 17:37:51 +03:00
Sergey Bogolepov
3a008f6236
Cleanup ClangArgs.kt a little bit
2021-03-24 17:37:50 +03:00
Sergey Bogolepov
273b43d227
Simplify setting apple os version in ClangArgs
...
Use `osVersionMinFlagClang` from konan.properties
instead of manual setup in ClangArgs.
This simplification will make it easier to add support
for future targets.
2021-03-24 17:37:49 +03:00
Sergey Bogolepov
51d3d1f1a8
ClangArgs: Set stdlib for apple targets in a single place
2021-03-24 17:37:48 +03:00
Sergey Bogolepov
f339e9cc66
ClangArgs: Set arch for apple targets in a single place
2021-03-24 17:37:47 +03:00
Sergey Bogolepov
30863cd184
Support the rest of Linux targets on macos_arm64
2021-03-24 17:37:45 +03:00
Sergey Bogolepov
0e1276fc6c
Support the rest of Apple targets on macos_arm64
2021-03-24 17:37:44 +03:00
Sergey Bogolepov
58e0cc1c7c
Specify linker for macos_arm64-linux_x64
2021-03-24 17:37:42 +03:00
Sergey Bogolepov
579c1eb7db
Remove libffi from target dependencies
...
Technically, it is a dependency of a compiler itself.
Thus, we can simplify konan.properties a little bit
by applying the same approach as we did for LLVM.
2021-03-24 17:37:40 +03:00
Svyatoslav Scherbina
940774caaf
Native: remove README.md from binary distributions
...
It is outdated, and the presumed contents are covered by other docs.
2021-03-24 10:56:35 +00:00
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