Pavel Punegov
cc89dc2754
Fix floating point conversions to match Kotlin/JVM
...
(cherry picked from commit de078d6)
2018-01-26 11:56:56 +03:00
SvyatoslavScherbina
7567c96bc9
Add basic support for multi-platform projects to the compiler ( #1254 )
...
Add compiler pass removing `expect` declarations
Thus support multi-platform projects in the compiler.
Also
* Add some trivial checks to ensure that `expect` declarations
are not generated to bitcode.
* Add minor improvement to exported symbol name clash detection.
* Don't create LLVM declarations for Obj-C-interop fake functions.
2018-01-25 12:55:06 +03:00
Igor Chevdar
e75a39fdd1
Fixed evaluation of lambda arguments of inline call + test
...
A lambda argument should be inlined only if it is declared as a functional type.
2018-01-22 19:07:36 +03:00
Igor Chevdar
295f71a29c
Fixed inline call arguments evaluation + test
2018-01-22 19:07:36 +03:00
Svyatoslav Scherbina
4abca13b73
Fix .dSYM bundle location for produced frameworks
2018-01-19 19:45:33 +03:00
Svyatoslav Scherbina
90e6ab07c3
Disable binary stripping on mac targets on -produce framework/dynamic
...
Fixes debug in these cases.
2018-01-19 19:45:33 +03:00
Alexander Gorshenev
f703877160
Introduced support for javascript Math and Kotlin Double to WASM32.
...
Implemented jsinterop tool for interaction with js math.
2018-01-19 13:46:53 +03:00
Nikolay Igotti
1599eddfe1
Allow passing interop types to C API, refactoring.
2018-01-18 18:27:58 +03:00
Kyle Kauffman
7b97916656
Resolve name conflicts when present (dyn lib generation) ( #1204 )
2018-01-18 16:25:24 +03:00
Igor Chevdar
f218e2676e
Fixed bug in LocalDeclarationsLowering + test
...
Bug was in determining whether a function was locally defined
2018-01-18 15:33:47 +03:00
Igor Chevdar
b2098088ec
Fixed bug with type projection building + test
...
Bug could be seen on fake overridden functions calls
2018-01-18 12:50:32 +03:00
Nikolay Igotti
77f220f335
Support @CName annotation for reverse C interop, similar to @JvmName. ( #1237 )
2018-01-17 19:34:00 +03:00
Ilya Matveev
9eb00ddb94
[build] Use gradle plugin in backend.native tests
2018-01-17 16:58:44 +07:00
Ilya Matveev
aed28a3e2d
[tests] Make tests using platform libs depending on distPlatformLibs
2018-01-17 16:58:44 +07:00
Ilya Matveev
32972af5bd
[build] Fix 'shared' jar copying
2018-01-17 16:58:44 +07:00
Ilya Matveev
a2b6c71f73
[build] Move shared and gradle-plugin into separate gradle builds
...
Platform libs build will be changed by a separate commit
2018-01-17 16:58:44 +07:00
Svyatoslav Scherbina
45cd41ce81
Replace some libstdc++ functions by simpler implementations
...
This helps to avoid linking large libstdc++ parts,
thus reducing the binary size.
2018-01-16 14:43:10 +03:00
Nikolay Igotti
1aa2e26344
Fix enum entries processing in C reverse interop. ( #1232 )
2018-01-15 20:16:30 +03:00
Vasily Levchenko
56d1881f18
[codegen][debug info] debug info generation do not touch llvm builder in the most cases.
2018-01-12 23:39:58 +03:00
Alexander Gorshenev
e64c2f5990
Further refactored external utility execution.
2018-01-12 18:17:46 +03:00
Svyatoslav Scherbina
e1b507f998
Fix fixed NSString* parameters in variadic functions
2018-01-11 12:28:40 +03:00
Vasily Levchenko
c7a126a6b0
[kotlin compiler][update] 1.2-20180108.142832-109
...
kotlinScriptRuntimeVersion=1.2-20180108.142855-109
kotlinStdLibVersion=1.2-20180108.142900-109
kotlinReflectVersion=1.2-20180108.142850-109
kotlinStdLibJdk8Version=1.2-20180108.142908-109
kotlinGradlePluginVersion=1.2-20180108.142845-109
2018-01-11 09:48:49 +03:00
Pavel Punegov
a6367f759b
Expect test to fail on wasm32 due to exceptions
2018-01-10 18:58:48 +03:00
Pavel Punegov
902519a26b
Check all whitespace characters according to Unicode standard
2018-01-10 18:58:48 +03:00
Svyatoslav Scherbina
8d4bedfef6
Enable missing checkers for frontend:
...
* Forbid super-calls with default arguments as in JVM;
* Forbid passing incorrect types for reified parameters.
Also suppress revealed errors with passing non-reified type to
array constructor
2018-01-10 18:42:28 +03:00
Svyatoslav Scherbina
7bebb8d960
Expose object instances and enum entries to produced framework
...
#KT-21892 Fixed.
Fix #1165
Also handle some clashes with NSObject method names.
2018-01-10 17:37:25 +03:00
Svyatoslav Scherbina
f986a0cb10
Move singleton support from IR visitor to code generator
2018-01-10 17:37:25 +03:00
Svyatoslav Scherbina
d4f39f8142
Apply minor refactoring to exception handling
2018-01-10 17:37:25 +03:00
Svyatoslav Scherbina
b700f96e0c
Rework stubs for interop globals passed by value
...
#KT-21855 Fixed
2018-01-09 17:51:50 +03:00
Pavel Punegov
670d05a4f3
Update stdlib and tests ( #1194 )
2018-01-09 13:17:55 +03:00
Nikolay Igotti
2e07b3f52f
Fix potential parameter name clashes in C generator.
2017-12-29 10:19:10 +03:00
Nikolay Igotti
82ad179998
More fixes to C generator. ( #1197 )
2017-12-28 16:11:44 +03:00
Nikolay Igotti
c2d067924d
Rework C bindings generator to pure descriptor-based system. ( #1193 )
2017-12-27 13:30:12 +03:00
Igor Chevdar
6315dff4a8
Fixed bug in recursive inline
2017-12-26 18:15:38 +03:00
Igor Chevdar
3bec5b58e8
DeepCopyIrTree fix:
...
Proper containing declaration for local functions
2017-12-26 18:15:38 +03:00
Nikolay Igotti
a05688351a
Fix C API generation. ( #1182 )
2017-12-25 16:24:16 +03:00
Pavel Punegov
0fc1fb27e1
Get verbose key other way
2017-12-22 18:07:45 +03:00
Pavel Punegov
17ead04c00
Beautify code a little
2017-12-22 18:07:45 +03:00
Pavel Punegov
d5fcf23629
Add version and output kind
2017-12-22 18:07:45 +03:00
Pavel Punegov
6b2257792c
Show message in case of compilation error caused by exception
2017-12-22 18:07:45 +03:00
Igor Chevdar
552344e17e
Moved EscapeAnalysis to optimizations package
...
+ added JB copyright
2017-12-21 14:12:58 +03:00
Igor Chevdar
83b02ea5d0
Rewrote escape analysis to use DFG
2017-12-21 14:12:58 +03:00
Igor Chevdar
888cd58bf7
Fixed bug in DFG with global fields initializers
2017-12-21 14:12:58 +03:00
Igor Chevdar
78a07fc8b9
DFG: Added reference back to Ir for all calls
2017-12-21 14:12:58 +03:00
Igor Chevdar
cd02040d3f
Refactoring of DFGSerializer
2017-12-21 14:12:58 +03:00
Igor Chevdar
07a7968869
DFG: Added number of parameters to a function’s symbol
2017-12-21 14:12:58 +03:00
Igor Chevdar
013a4abba3
Added <throws> node for a function’s DFG
2017-12-21 14:12:58 +03:00
Vasily Levchenko
3e949b4047
[cli] make -version more usable
2017-12-21 06:22:13 +03:00
max-kammerer
6ee6f5907d
Enable multi-platform checker ( #1163 )
2017-12-18 16:47:02 +03:00
Alexander Gorshenev
eae130e246
He says make it an extension property.
2017-12-18 15:04:02 +03:00