Igor Chevdar
2be9953d4f
Merged InlinedConstructorTransformer into ordinary inliner.
...
The benefits are - removed big amount of copy/paste;
fixed bug with recursive inline touching inline constructors.
2018-02-26 13:28:19 +03:00
Ilya Matveev
d15f55d807
[gradle-plugin] Annotate commonSourceSet with @Deprecated
2018-02-26 12:48:39 +03:00
Ilya Matveev
9c812e0c90
[gradle-plugin] Allow setting several common source sets
2018-02-26 12:48:39 +03:00
Nikolay Igotti
346e1aefcf
Rework globals init. ( #1336 )
2018-02-23 01:32:01 +03:00
Pavel Punegov
46f75c2226
More review fixes
2018-02-22 19:03:03 +03:00
Pavel Punegov
45985d9a7f
Review fixes
2018-02-22 19:03:03 +03:00
Pavel Punegov
8352e5f7d9
Small indent fix
2018-02-22 19:03:03 +03:00
Pavel Punegov
6b44b69ec7
Remove ignore for several floating point tests
2018-02-22 19:03:03 +03:00
Pavel Punegov
ad8160ae83
Support IEEE754 floating point comparisons
...
Add an intrinsic that performs check according to the standard
Add floating point compare methods from LLVM
Support new IR builtins, symbols and descriptors
Rewrite compareTo floating point checks to Kotlin
Rewrite equals to be the same as in JVM
2018-02-22 19:03:03 +03:00
Pavel Punegov
e3fd5d5306
Update kotlin compiler to 1.2-20180212.074217-235
2018-02-22 19:03:03 +03:00
Pavel Punegov
758a1effd1
Update to latest changes in frontend
2018-02-22 19:03:03 +03:00
Pavel Punegov
0761108399
Make intrinsics be external functions
2018-02-22 19:03:03 +03:00
Nikolay Igotti
6e3d751a17
Resolve variadic vs. normal arguments conflicts in LLVM signatures. ( #1357 )
2018-02-22 19:02:31 +03:00
Ilya Matveev
08a5fdaaf7
[klib] Add copyright into test data
2018-02-22 15:00:29 +03:00
Ilya Matveev
2e958f0219
[klib] Print accessors
2018-02-22 15:00:29 +03:00
Ilya Matveev
ba56d17cec
[klib] Don't print 'final' modality
2018-02-22 15:00:29 +03:00
Ilya Matveev
5f100c620e
[readme] Fix URL rendering in RELEASE_PROCESS.md
2018-02-22 15:00:29 +03:00
Ilya Matveev
4a64dd08bd
[gradle-plugin] Add TODO to replace HostManager with PlatformManager
2018-02-22 15:00:29 +03:00
Ilya Matveev
ad9babfec6
[klib] Use DescriptorRenderer instead of PrettyPrinter
2018-02-22 15:00:29 +03:00
Nikolay Igotti
132c873927
Disable devirtualization.
2018-02-22 12:47:30 +03:00
Svyatoslav Scherbina
e035ac1022
Support importing string literal macros with cinterop
2018-02-22 10:08:54 +03:00
Svyatoslav Scherbina
4335f891b7
Add minor improvement to kotlin String literals in generated sources
2018-02-22 10:08:54 +03:00
Svyatoslav Scherbina
29d77d3867
Update libclang interop stubs
2018-02-22 10:08:54 +03:00
Svyatoslav Scherbina
433737f66a
Fix minor issue with :Interop:Indexer:updatePrebuilt Gradle task
2018-02-22 10:08:54 +03:00
Svyatoslav Scherbina
f3dbf8f5d4
Don't use backing fields for properties generated from macros
...
Thus don't require running initializer for these.
2018-02-22 10:08:54 +03:00
Svyatoslav Scherbina
05da6481d9
Add comment to auto-generated interop stubs
2018-02-22 10:08:54 +03:00
Vasily Levchenko
b8c36098b3
[gradle][plugin][warns] bit of idea inspection warnings fixed
2018-02-21 17:00:15 +03:00
Igor Chevdar
1042a710e3
Implemented devirtualization of multimorphic callsites
2018-02-21 16:47:40 +03:00
Igor Chevdar
6682d8083b
Extracted compile time evaluation to a separate IR lowering
2018-02-21 16:47:40 +03:00
Igor Chevdar
51e5410ffd
Inliner: fix in IR copier
...
During copying of IR we need not only copy descriptors but also types
corresponding to classes being copied
2018-02-21 16:47:40 +03:00
Igor Chevdar
9c62d5faa3
Supported exceptions in devirtualization
2018-02-21 16:47:40 +03:00
Igor Chevdar
86e5d6c845
Implemented devirtualization of monomorphic callsites
2018-02-21 16:47:40 +03:00
Igor Chevdar
5586cf684a
Implemented devirtualization analysis
2018-02-21 16:47:40 +03:00
Igor Chevdar
d902b7fc93
DFG: workers support
2018-02-21 16:47:40 +03:00
Igor Chevdar
2bbab2d2bc
DFG: bumped version
2018-02-21 16:47:40 +03:00
Igor Chevdar
5a57c40469
DFG: fixed debug output
2018-02-21 16:47:40 +03:00
Igor Chevdar
51801b9009
DFG: added parameter types to Function
2018-02-21 16:47:40 +03:00
Igor Chevdar
0629513fd9
DFG: placed isGlobalInitializer to FunctionSymbol
2018-02-21 16:47:40 +03:00
Igor Chevdar
e3b6152a1e
DFG: added array reading & writing
2018-02-21 16:47:40 +03:00
Igor Chevdar
91bd565972
Implemented isInitialized for lateinit properties + tests
2018-02-21 11:57:13 +03:00
SvyatoslavScherbina
adf8614889
Fix crash when producing framework with virtual suspend methods ( #1344 )
...
Note: suspend methods aren't directly available through framework API
2018-02-21 10:50:31 +03:00
Igor Chevdar
8aa4acee88
Bug fix: explicitly initialize lateinit properties/variables with null
2018-02-19 18:51:15 +03:00
Igor Chevdar
bb311c7ac4
Supported lateinit locals + tests
2018-02-19 18:51:15 +03:00
Pavel Punegov
6e7f577887
Fix integer limits that depend on a size of the type.
...
LONG_MAX is 32-bit wide value on raspberrypi
2018-02-16 14:36:14 +03:00
Svyatoslav Scherbina
7861f23607
Add minor improvement to clash detection when producing framework
2018-02-15 15:48:14 +03:00
Svyatoslav Scherbina
4b91fab695
Fix assert when clashing with method of Any while producing framework
2018-02-15 15:48:14 +03:00
Nikolay Igotti
bac96e3927
Fix exception contructors to match JVM/JS signatures. ( #1329 )
2018-02-15 15:21:41 +03:00
Jonas Seibert
b42e9e9c80
Add note about konan.initRuntimeIfNeeded() ( #1326 )
...
Initing the konan runtime is mandatory if your callback runs in a different thread (e.g. in a thread-per-connection model), that should be documented!
2018-02-14 23:37:34 +03:00
Vasily Levchenko
3dc88795d8
[bindings][llvm][DI] warnings [-Wformat]
2018-02-13 14:15:02 +03:00
Ilya Matveev
db253cb297
[gradle-plugin] Use HostManager instead of PlatformManager
...
Gradle plugin uses PlatformManager to initialize tasks
when the compiler is not downloaded yet. In this case
PlatformManager cannot read konan.properties file.
This patch replaces PlatformManager with HostManager
2018-02-13 17:31:14 +07:00