Abduqodiri Qurbonzoda
718965227e
Advance deprecation level of K/N StringBuilder renamed functions to ERROR #KT-46101
2021-09-16 19:45:04 +03:00
Abduqodiri Qurbonzoda
d9f8ce899a
Promote rotateLeft and rotateRight to stable
2021-09-16 19:27:21 +03:00
Abduqodiri Qurbonzoda
34a50e4e34
Promote regex splitToSequence to stable
2021-09-16 19:26:33 +03:00
Igor Chevdar
e194a07358
[tests] Added some tests
2021-09-16 10:54:14 +00:00
Igor Chevdar
cc75b45479
[K/N][IR] Fix for https://youtrack.jetbrains.com/issue/KT-47669
...
Outer this references should be lowered before inliner
2021-09-16 10:54:14 +00:00
Abduqodiri Qurbonzoda
f1befc0108
Format Other_Uppercase/Other_Lowercase property as an identifier in docs
2021-09-15 17:31:52 +03:00
Elena Lepilkina
bdb61ec5d7
[K/N] Run inline property accessors later to inline all cases including devirtualized
2021-09-15 12:29:03 +00:00
Svyatoslav Scherbina
b32ab48596
Native: add tests for autorelease optimization in ObjCExport
...
The compiler should do its best to avoid putting objects to autorelease
pools.
2021-09-15 11:48:17 +00:00
Svyatoslav Scherbina
8c923f6504
Native: optimize autorelease in ObjCExport calls to Kotlin
...
Use objc_autoreleaseReturnValue to eliminate the autorelease operation
for return value if the caller is optimized (usually it is).
This required moving autorelease operation from Kotlin -> ObjC ref
conversion to bridge epilogue.
To achieve this, also make ObjCExport Kotlin ref -> ObjC ref dynamic
converters return retained reference (instead of autoreleased one).
To reflect this, rename the corresponding entities in the code.
2021-09-15 11:48:16 +00:00
Svyatoslav Scherbina
75a3070067
Native: implement autoreleaseAndRet for ObjCExportCodeGenerator
...
This operation is equivalent to "autorelease and then return",
but it supports Obj-C runtime autorelease optimization for return value:
if the caller is optimized (which is usually true), then no autorelease
will happen at runtime.
2021-09-15 11:48:15 +00:00
Svyatoslav Scherbina
e00fd6b9b3
Native: allow subclassing FunctionGenerationContext
...
This allows one to have domain-specific generator without polluting
the global namespace.
Also introduce builders and do minor refactoring.
2021-09-15 11:48:15 +00:00
Svyatoslav Scherbina
be1acc8103
Native: eliminate autorelease in ObjCExport set/getAssociatedTypeInfo
2021-09-15 11:48:14 +00:00
Alexander Shabalin
0b431d5ea5
[K/N] Link GC triggers issue
2021-09-14 14:00:46 +00:00
Alexander Shabalin
d03a7993ed
[K/N] Implement GCScheduler
2021-09-14 13:53:36 +00:00
Svyatoslav Scherbina
ae349846e1
Native: support writing unit tests for Interop/Indexer
2021-09-14 10:42:16 +00:00
Pavel Punegov
3d58a70e62
[Native][Tests] Rename USE_EXPERIMENTAL directive to OPT_IN
...
See fc6403679a
2021-09-13 14:08:32 +00:00
Igor Chevdar
8464b15d27
[K/N][IR] Fix for https://youtrack.jetbrains.com/issue/KT-48559
...
Aligned SAM conversion lowering with the JVM's one
Also refactored other places with erasure
2021-09-13 16:49:39 +05:00
Igor Chevdar
23a02be169
[K/N][IR] Fix for https://youtrack.jetbrains.com/issue/KT-48527
2021-09-13 16:41:37 +05:00
Pavel Kunyavskiy
51c85e7f86
[K/N] Safer handling of bridges function in dce
2021-09-10 15:58:42 +00:00
Mikhail Glukhikh
007cf2ce7c
Rename AnalysisFlags.useExperimental to optIn
2021-09-10 16:29:18 +03:00
Mikhail Glukhikh
3febabe977
Use OPT_IN instead of EXPERIMENTAL in diagnostic names
2021-09-10 16:29:13 +03:00
Pavel Kunyavskiy
7e58660ce2
[K/N] Emmit error on using @SymbolName with new mm
2021-09-10 07:46:39 +00:00
Pavel Kunyavskiy
ca9ec76c08
[K/N] Replace SymbolName with GCUnsafeCall in interop
2021-09-10 07:46:39 +00:00
Pavel Kunyavskiy
91c6ee1ebb
[K/N] Replace SymbolName with GCUnsafeCall in stdlib
2021-09-10 07:46:39 +00:00
Svyatoslav Scherbina
01272cace3
[K/N] don't rely on expression type when lowering value constructor calls
...
Because of generics, these types don't exactly match the actual types in
generated code, and autoboxing can't fix this because this happens after
it.
^KT-48381 Fixed
2021-09-09 13:56:36 +00:00
Elena Lepilkina
aaf666e0e1
[K/N] Turn on mimalloc by default for experimental MM
2021-09-09 13:41:37 +00:00
Danil Pavlov
64827d03bc
Update New memory model guide ( #4567 )
...
* update: stylistic review
2021-09-09 16:05:37 +03:00
Vladimir Ivanov
8ba164163c
[K/N] cinterop: ignore CXIdxEntity_CXXClass in ObjC header
...
Unexpected behavior is caused by `@class` declaration in ObjC context.
This entity is not used in CPP context either.
2021-09-09 09:37:05 +00:00
Mikhail Glukhikh
ffbd574a08
Use -opt-in instead of -Xopt-in in comments and scripts
2021-09-08 23:43:55 +03:00
Igor Chevdar
8ad540953e
[K/N][optmz] Fix for https://youtrack.jetbrains.com/issue/KT-48380
2021-09-09 00:32:41 +05:00
Elena Lepilkina
8924730320
[K/N][perf] Added option to analyze benchmarks without DB connection
2021-09-08 18:53:18 +00:00
Igor Laevsky
37874b1937
WASM: Lower expression bodies into block bodies
2021-09-08 19:56:27 +03:00
Elena Lepilkina
e89ae81f87
[K/N] Updated mimalloc version in README
2021-09-08 13:53:19 +00:00
Elena Lepilkina
cb067e160b
[K/N] Updated RSS limit for new version of mimalloc
2021-09-08 13:53:18 +00:00
Elena Lepilkina
084268573c
[K/N] Added some other functions in list with safe functions for state checker
2021-09-08 13:53:18 +00:00
Elena Lepilkina
8ff960fbe3
[K/N] Updated mimalloc to version 1.7.2
2021-09-08 13:53:17 +00:00
Elena Lepilkina
e454c824d5
[K/N] Enable mimalloc support on Windows and Mac Arm64
2021-09-08 13:53:17 +00:00
Igor Chevdar
e057e5ffac
[K/N][optmz] New strategy for resolving divergence of escape analysis
2021-09-08 18:48:55 +05:00
Igor Chevdar
aad2a3303f
[K/N][optmz] More debug output for escape analysis
2021-09-08 18:48:50 +05:00
Roman Artemev
78cd45f937
[KLIB] Resolve deserialization on for each file separately
...
Needs for IC
2021-09-07 20:41:28 +03:00
Svyatoslav Scherbina
09c8ca860a
Fix output path for :kotlin-native:distEndorsedSources
2021-09-07 15:59:16 +00:00
Igor Chevdar
e67a78abaf
[K/N][codegen] Fix for https://youtrack.jetbrains.com/issue/KT-48543
...
Sometimes an interface contains final methods, they shouldn't be in its itable
cause they can't be called virtually
2021-09-07 12:04:26 +05:00
Sergey Bogolepov
ae2c8a3540
[K/N] Fix KT-48613
2021-09-06 09:58:34 +00:00
Abduqodiri Qurbonzoda
97eb28144f
Introduce Common readln() and readlnOrNull() top-level functions #KT-48456
2021-09-05 15:31:11 +00:00
Mikhail Glukhikh
ed035d99ab
Migrate -Xopt-in to -opt-in in Gradle Kotlin scripts
2021-09-03 15:40:47 +03:00
Dmitriy Dolovov
df208dc060
[Native][tests] Fix failing 'interop_objc_smoke_noopgc' test
2021-09-03 14:53:10 +03:00
Pavel Punegov
7e4e0ffdaa
[Native][Tests] Don't run tests that require diagnostic options
2021-09-03 10:52:10 +00:00
Pavel Punegov
50bd5da639
[Native][Tests] Add one more option to exclude
2021-09-03 10:52:10 +00:00
Pavel Punegov
6b49597bb7
[Native][Tests] Additional language directive
2021-09-03 10:52:09 +00:00
Pavel Punegov
bc0d7efbbd
[native][test] Fix main module select
2021-09-03 10:52:09 +00:00