Svyatoslav Scherbina
77139d58f8
Unify interop with Objective-C in both directions
...
Also support casts to Objective-C types
2018-04-12 09:56:29 +03:00
Svyatoslav Scherbina
38f896649c
Use meta object for storing associated Objective-C object
2018-04-12 09:56:29 +03:00
Igor Chevdar
8e6ed44db3
Turned on devirtualization + fix in ObjCExport
2018-04-09 15:42:13 +03:00
Igor Chevdar
7b4d60d489
Marked WeakReferenceCounter with @ExportForCompiler
2018-04-07 08:56:37 +03:00
Nikolay Igotti
21079ae644
Weak references. ( #1459 )
2018-04-04 14:35:06 +03:00
Svyatoslav Scherbina
7d7f0f46e6
Add prelimitary support for using Objective-C types in framework API
2018-04-03 11:20:57 +03:00
Svyatoslav Scherbina
80d026afa5
Fix dynamic type info generation when producing framework
2018-04-03 11:20:57 +03:00
Igor Chevdar
e84e76107f
Supported cycles during object subgraph freezing
2018-03-30 17:59:33 +03:00
Sergey Bogolepov
6259b28cd3
Moved inRange and getCachedBox to C++ runtime
2018-03-30 16:30:51 +07:00
Sergey Bogolepov
ddff7b365e
Boxing of bytes, shorts, chars, ints and longs. Cogegen only implementation
2018-03-30 16:30:51 +07:00
Nikolay Igotti
0abcd62c13
Meta-object support. ( #1451 )
2018-03-30 11:05:21 +03:00
Svyatoslav Scherbina
bbefb4bab3
Translate Kotlin @Throws to Swift 'throws' when producing framework
...
Methods having or inheriting `@Throws` annotation are represented as
`NSError*`-producing methods in Objective-C and as `throws` methods in Swift.
2018-03-29 23:59:12 +03:00
Nikolay Igotti
cca9280093
Fix WASM32/Zephyr build.
2018-03-28 20:36:18 +03:00
Igor Chevdar
c76c39fafd
Fixed shared globals deinit
2018-03-28 17:33:09 +03:00
Igor Chevdar
6fa9ca8888
Added shadow singleton value to resolve cycles during initialization
2018-03-28 17:33:09 +03:00
Igor Chevdar
c1c363b81e
Freezing: bug fix
2018-03-28 17:33:09 +03:00
Igor Chevdar
7a8220ea36
Memory.cpp: refactoring
2018-03-28 17:33:09 +03:00
Igor Chevdar
7227c5d100
Supported shared access to enums
2018-03-28 17:33:09 +03:00
Nikolay Igotti
8a06dbfb28
Fix memory leak with frozen objects hanging from cycles.
2018-03-22 15:33:31 +03:00
Sergey Bogolepov
bcf1722ecd
Force LLVM to inline basic math functions
2018-03-21 18:41:38 +07:00
Nikolay Igotti
204fde4bf1
Typed arrays API ( #1398 )
2018-03-15 10:02:35 +03:00
Nikolay Igotti
a6fa19a7fd
Object freezing API ( #1390 )
2018-03-14 11:51:48 +03:00
Svyatoslav Scherbina
79b0dc5652
Add check to prevent loading more than one Kotlin framework
2018-03-12 10:41:34 +03:00
Pavel Punegov
0c8ca828eb
Add AfterTest and BeforeTest aliases for tests
2018-03-06 14:16:24 +03:00
Ilya Matveev
588dd7efb7
[js-interop] Add Konan_js_getInt stub for targets without JS interop
2018-03-06 11:29:31 +03:00
Ilya Matveev
8e08bbf6bd
[stdlib] Fix comments in kotlin.math
2018-03-01 17:02:37 +03:00
Ilya Matveev
968014868d
[stdlib] Don't pass an arena to JS math functions
2018-03-01 17:02:37 +03:00
Ilya Matveev
da5f4e4c2e
[build] Add a task to re-generate math.js
2018-03-01 17:02:37 +03:00
Ilya Matveev
164d35c73f
[stdlib] Implement kotlin.math for wasm
2018-03-01 17:02:37 +03:00
Ilya Matveev
ffae98f7e0
[js-interop] Include JS interop into stdlib
2018-03-01 17:02:37 +03:00
Pavel Punegov
0b84718fa2
Support nullable floating point equality comparisons
2018-02-28 22:46:44 +03:00
Alexander Gorshenev
0de9b3a9b6
We now have a Kotlin program to blink a LED on stm32f4_disco.
2018-02-27 15:16:37 +03:00
Sergey Bogolepov
049d29af75
Fixed trailing newline in consoleReadUtf8
2018-02-26 14:28:13 +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
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
0761108399
Make intrinsics be external functions
2018-02-22 19:03:03 +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
91bd565972
Implemented isInitialized for lateinit properties + tests
2018-02-21 11:57:13 +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
Nikolay Igotti
bac96e3927
Fix exception contructors to match JVM/JS signatures. ( #1329 )
2018-02-15 15:21:41 +03:00
SvyatoslavScherbina
12bec9b22f
Fix handling nil result of NSSet.member for Kotlin Set ( #1314 )
2018-02-12 18:59:31 +03:00
Alexander Gorshenev
9789420ed3
A configurable zephyr board support.
2018-02-12 16:00:58 +03:00
Mike Sinkovsky
d968fafec0
zephyr: first attempt
2018-02-12 16:00:58 +03:00
Svyatoslav Scherbina
b15c94855e
Improve Kotlin collections support when producing framework
...
* Represent MutableList, Set, Map as standard Objective-C collections
* Represent MutableSet and MutableMap as Obj-C collection subclasses
* Use Objective-C generics to represent collection element type
* Make type mapping more correct
2018-02-09 20:40:33 +03:00
Svyatoslav Scherbina
d228e77c0c
Add AbstractSet from main Kotlin repo
2018-02-09 20:40:33 +03:00
Nikolay Igotti
7ccc73aadd
Simplify regexp engine init. ( #1302 )
2018-02-09 11:27:01 +03:00