Alexander Gorshenev
52a245bb10
Added platform name to tgz.
2017-03-24 13:52:58 +04:00
Alexander Gorshenev
5b653f9579
Added samples to tgz bundle.
...
Rename dist to kotlin-native in tgz bundle.
2017-03-24 13:52:58 +04:00
Svyatoslav Scherbina
7487364bcd
Improve name clash resolution in interop stub generation
...
* Handle more keywords.
* Handle more identifier usages.
* Use backticks to escape identifiers that clash with keywords.
2017-03-24 07:00:03 +03:00
Alexander Gorshenev
ff8acd21e6
This is initial implementation of serializer/deserializer for inline IR bodies.
...
The deserialization is disabled by default.
Use `-enable deserializer` to enable it.
Use `-verbose deserializer` to watch it crunch.
2017-03-24 01:03:59 +04:00
Nikolay Igotti
4a4225fd72
Fix char index search
2017-03-23 18:38:25 +03:00
Nikolay Igotti
c55d0cd674
Simple CSV parser ( #383 )
2017-03-23 17:15:39 +03:00
Nikolay Igotti
afcce921f2
Fix typo in string search
2017-03-23 17:04:18 +03:00
Konstantin Anisimov
78d2186f97
Typo fixed
2017-03-23 20:26:24 +07:00
Konstantin Anisimov
8661baabad
Bug fix in recursive lambda inlining
2017-03-23 20:26:24 +07:00
Konstantin Anisimov
414a481fe3
If property initializer is inlined, we do not have proper outer scope to evaluate it
2017-03-23 20:26:24 +07:00
Nikolay Igotti
b5c60e3082
Support data parsing operations ( #380 )
2017-03-23 12:54:24 +03:00
Igor Chevdar
8afa12684e
Implemented StringBuilder.deleteCharAt
2017-03-22 22:25:24 +03:00
Igor Chevdar
fc9638dbd4
Added ranges from Kotlin 1.1
2017-03-22 22:24:40 +03:00
Svyatoslav Scherbina
8ec4cb48f9
Rework primitive types handling in interop stub generation
...
Use libclang API to get correct size and spelling.
This should improve support for e.g. 32-bit platforms.
2017-03-22 20:45:08 +07:00
Svyatoslav Scherbina
d6ba399e1e
Refactor Pointer*Type in interop stub generation
...
All types should have correct `equals`/`hashCode` implementation.
Also update Indexer prebuilts.
2017-03-22 20:45:08 +07:00
Alexander Gorshenev
f402b3e180
Tell lto to preserve Konan_main, rather than main.
2017-03-22 17:00:11 +04:00
Alexander Gorshenev
2071414079
Split LINK_STAGE phase into OBJECT_FILES and LINKER sub-phases,
...
to be able to measure lcc/lto time separately from ld time.
2017-03-22 16:53:15 +04:00
Nikolay Igotti
e197573e3e
Raspberry Pi target ( #365 )
2017-03-22 15:43:19 +03:00
Konstantin Anisimov
bfc4e1106a
Noinline support
...
Bug fix
2017-03-22 19:22:59 +07:00
Konstantin Anisimov
26f4271906
Type propagation on call sites
2017-03-22 19:22:59 +07:00
Alexander Gorshenev
c06eeb096a
Removed -compile_as_stdlib mode, as it is not needed anymore.
...
Moved "compiler hacker" options to use double dash. Like "--verbose linker".
2017-03-22 16:16:50 +04:00
Alexander Gorshenev
3189d1d8bc
Two aliases for konanc: kotlinc, kotlinc-native.
2017-03-22 16:15:54 +04:00
Alexander Gorshenev
1942b0eb04
Produce .tgz on './gradlew bundle'.
2017-03-22 16:15:54 +04:00
Igor Chevdar
dc5edfeda3
Fixed type of callable reference to property with private setter
...
The actual type of callable reference is presented in IR, take it
from there.
2017-03-22 13:15:45 +03:00
Igor Chevdar
e133e3379b
Added COMPILER_OPTS to build script
...
Option -nomain is needed only for iphone target.
2017-03-22 12:43:22 +03:00
Igor Chevdar
1577938f53
Added assertion
2017-03-21 19:47:41 +03:00
Igor Chevdar
a1061246c9
Added tests on lateinit properties
2017-03-21 19:47:41 +03:00
Igor Chevdar
55d3b23cfe
Implemented 'lateinit' properties
...
If property is lateinit, then on each access we need to test its value
and throw UninitializedPropertyAccessException if it is null.
2017-03-21 19:47:41 +03:00
Igor Chevdar
e170edac17
Added option to build script for tetris
2017-03-21 17:24:55 +03:00
Alexander Gorshenev
2d0aa9dcbb
Introduced -nomain flag to disable generation of main(),
...
in assumption that it is provided by one of the libraries.
2017-03-21 18:05:03 +04:00
Svyatoslav Scherbina
b5441f7470
Exclude _cvtsh_ss when interoping with SDL2
...
This function requires some target features to be enabled.
2017-03-21 20:33:03 +07:00
Svyatoslav Scherbina
49f1873efd
Generate C interop adapters for functions defined in headers
2017-03-21 20:33:03 +07:00
Konstantin Anisimov
edd8489f6b
Evaluation of lambda arguments
...
DeepCopyIrTree with IrInlineFunctionBody support
2017-03-21 19:23:35 +07:00
Igor Chevdar
1be913de63
Review fixes
2017-03-21 14:04:30 +03:00
Igor Chevdar
02878f14c0
Fixes in build scripts & tools.
...
Tetris: fixes for full screen mode.
2017-03-21 14:04:30 +03:00
Igor Chevdar
c8493eb2a9
Added panel to control tetris with mouse
2017-03-21 14:04:30 +03:00
Nikolay Igotti
73b1b18036
Provide entry point customization
2017-03-21 14:04:30 +03:00
Nikolay Igotti
c6845cf929
Implement on-load helper ( #364 )
2017-03-21 11:44:34 +03:00
Nikolay Igotti
a15be29519
More of stdlib ( #363 )
2017-03-21 09:36:11 +03:00
Igor Chevdar
3820ea0724
Fix in handling of nested vararg parameters
2017-03-20 19:18:03 +03:00
Igor Chevdar
9c180ff4e1
Implemented equals(), hashCode(), toString() for K*Property<>
2017-03-20 16:21:58 +03:00
Igor Chevdar
3d233db3b0
Removed creation of descriptors for Enum.valueOf() & values()
...
Those descriptors are already presented in enum's declaration and
are perfectly fine. We just need to replace their synthetic bodies
with real implementations.
2017-03-20 12:52:05 +03:00
Nikolay Igotti
80041e6559
Sequences support improved ( #358 )
2017-03-20 11:52:52 +03:00
Svyatoslav Scherbina
c9d8d4d57d
Implement CValuesRef in interop
...
* Represent pointer parameters of C functions as `CValuesRef`.
* Represent struct value parameters as `CValue`.
* Implement some helper methods to make the new approach more useful.
* Migrate some code to new interop approach for pointers and values.
Also do not map to `String?`:
- pointers to 8-bit integers;
- pointers to non-const chars.
2017-03-20 15:52:23 +07:00
Nikolay Igotti
7a876a3ccd
Provide entry point customization ( #352 )
2017-03-17 17:40:24 +03:00
Svyatoslav Scherbina
47dfe122fc
Handle String constructor call in code generator
2017-03-17 21:05:24 +07:00
Svyatoslav Scherbina
bb1c52c23b
Fix launcher for external box tests with one-letter package
2017-03-17 20:08:36 +07:00
Konstantin Anisimov
864bd9a212
Support cast type operations in inline
2017-03-17 19:29:35 +07:00
Konstantin Anisimov
ba8621389e
Output formatting
2017-03-17 19:29:35 +07:00
Konstantin Anisimov
bf9cd488ef
Turn inlining in inline functions on
2017-03-17 19:29:35 +07:00