Commit Graph

2389 Commits

Author SHA1 Message Date
Alexander Gorshenev 9d6846947e Don't expect local libraries to be in 'klib' directory. 2017-05-24 00:47:10 +03:00
Nikolay Igotti 42197a2bec Android NDK support and build system refactoring (#585) 2017-05-24 00:20:19 +03:00
Alexander Gorshenev 48742b7f3f Library search path resolution. 2017-05-23 16:40:48 +03:00
Alexander Gorshenev 1b30f0988b Renamed SplitScheme to SplitLibraryScheme. 2017-05-23 16:40:48 +03:00
Alexander Gorshenev ff86c16fc9 Don't skip empty packges of the current module when serializing. 2017-05-23 16:40:29 +03:00
Aleksey Kladov 57b1800354 Gradle plugin: groundwork for tooling API support 2017-05-23 19:16:32 +07:00
Igor Chevdar 63e5aaecba Added type checks for special bridges (Collection, Map, List) 2017-05-23 12:25:10 +03:00
Igor Chevdar d1e248b8c3 Added String.repeat() 2017-05-23 11:44:09 +03:00
Igor Chevdar 67f37bad8d Fixed bug in strings comparison 2017-05-23 11:44:09 +03:00
Igor Chevdar 0d0e652709 Fixed toString() KFunction 2017-05-23 11:44:09 +03:00
Igor Chevdar c3b7d5a8c9 Inliner: fixed bug with leaking descriptors
An inline function might return an object, internal of which are leaked
to the outside, we need to substitute those descriptors as well
2017-05-23 11:44:09 +03:00
Igor Chevdar 889e0e5078 Fixed annotation 2017-05-23 11:44:09 +03:00
Igor Chevdar 072da99ba3 Coroutines bug fix: correct handling of returnIfSuspended intrinsic 2017-05-23 11:44:09 +03:00
Igor Chevdar e834218183 Inliner: fixed bug with default lambda arguments 2017-05-23 11:44:09 +03:00
Igor Chevdar 7f012fabc2 Ignored/enabled/fixed some external tests 2017-05-23 11:44:09 +03:00
Igor Chevdar 8599ac065f Fixed order of arguments for inline function
Default arguments are evaluated inside callee as opposed to other
arguments computed at callsite.
2017-05-23 11:44:09 +03:00
Miquel Beltran dfc179e2b9 Support armv6 devices (Pi Zero) (#588) 2017-05-21 10:56:40 +03:00
Ilya Matveev cdec464b29 Update compiler (1.1-20170519.065155-538) 2017-05-19 19:07:26 +07:00
Ilya Matveev 49cc820afb build: Upload kotlin-compiler sources to bintray mirror 2017-05-19 19:07:26 +07:00
Alexander Gorshenev 85ecce2a9e Don't use a golden value for a test that don;t run. 2017-05-19 13:52:35 +03:00
Alexander Gorshenev 2283a941b7 Simple sanity check of cross compilation build and compiler execution. 2017-05-19 13:52:35 +03:00
Alexander Gorshenev 7b2f3923a6 Eliminated dependency of library reader interface on compiler configuration. 2017-05-19 12:42:13 +03:00
Alexander Gorshenev b0d27820c8 Minor tweaks to KonanLibrary. 2017-05-19 12:42:13 +03:00
Alexander Gorshenev 6c00815968 Updated the klib scheme a little.
Renamed 'module' to 'manifest'.
And placed module header protobuf to linkdata/<module> file rather
as another line in the manifest.
2017-05-19 12:42:13 +03:00
Alexander Gorshenev 53473fc0dd Collected klib scheme to a single interface. 2017-05-19 12:42:13 +03:00
Alexander Gorshenev bca34894d3 A stray println removed. 2017-05-19 12:42:13 +03:00
Alexander Gorshenev fc1c5cac09 A minor typo in a file name construction. 2017-05-19 12:42:13 +03:00
Alexander Gorshenev b42916b08e Shuffle some library classes around. 2017-05-19 12:42:13 +03:00
Vasily Levchenko c8badb0a38 DEBUGINFO: generate forward declaraion of the type instead of kotlin.Any
Previously in case type wasn't resolved in codegen (debug info wasn't constructed from IR),
we'd use reference to kotlin.Any? as type, from now we're using forward declaration. What next?
- type parameters... how to deal with?

(cherry picked from commit 579acba659fe52afec638fc00e07a320560bd5fa)
2017-05-18 18:39:31 +03:00
SvyatoslavScherbina c9d7f976a5 Update compiler to IR with symbols, part 2 (#581)
The symbols produced by first lowering phases are now bound
2017-05-18 17:54:53 +03:00
Konstantin Anisimov 3000b1ec41 One more lateinit 2017-05-18 19:30:50 +07:00
Konstantin Anisimov cfe78ad05c One more lateinit 2017-05-18 19:30:50 +07:00
Konstantin Anisimov 3ee1e114c9 Establish dependency LOWER_INLINE -> LOWER_INLINE_CONSTRUCTORS 2017-05-18 19:30:50 +07:00
Konstantin Anisimov 8f1073cab8 Inliner searches function declaration using descriptor.original 2017-05-18 19:30:50 +07:00
Konstantin Anisimov de5ff23a2b Move inline constructor transformation to separate compilation pass 2017-05-18 19:30:50 +07:00
Igor Chevdar daa302e233 Enabled some tests on coroutines 2017-05-18 11:56:32 +03:00
Igor Chevdar 3e2fccc3f4 Implemented inheritance of lambdas from SuspendFunction 2017-05-18 11:56:32 +03:00
Igor Chevdar c048fcecce Rewrote coroutines lowering to use symbols 2017-05-18 11:56:32 +03:00
Igor Chevdar 827f92305c Rewrote CallableReferenceLowering to use symbols 2017-05-18 11:56:32 +03:00
Igor Chevdar 9120e0b998 Moved common code for IR building to IrBuildUtils 2017-05-18 11:56:32 +03:00
Igor Chevdar a41552b3c8 Rewrote callable reference lowering
For each callable reference a class inherited from KFunctionImpl is built.
2017-05-18 11:56:32 +03:00
Alexander Gorshenev dc80ba3492 Moved KonanLibrary to org.jetbrains.kotlin.backend.konan.util.File
instead of java.io.File.
2017-05-18 04:13:35 +03:00
Alexander Gorshenev 3b5ce031f8 Initial checkin of klib support.
The libraries exist in two incarnations:
    packed foo.klib and unpacked foo/ .
The compiler when given '-library foo' expects to find either
a foo.klib file and unpack it, or an already unpacked foo/ directory.

The stdlib is always unpacked in dist/klib .

The semantics of -o has changed slightly.
It now accepts '-o foo' and the compiler
either produces foo.kexe or foo.klib .
2017-05-18 04:13:35 +03:00
Alexander Gorshenev 77e093354f Squash me more. 2017-05-17 22:04:32 +03:00
Alexander Gorshenev bb40d015d0 Fix up after the code review. Squash me. 2017-05-17 22:04:32 +03:00
Alexander Gorshenev d4c34b29c1 Added support for inline class members.
Inline constructors in particular.
2017-05-17 22:04:32 +03:00
Alexander Gorshenev 2a246a9a3a Some tests for inline members. 2017-05-17 22:04:32 +03:00
Nikolay Igotti c6d13abddc Small cleanup in demos (#572) 2017-05-17 01:00:03 +03:00
Igor Chevdar 8a789a9ac4 Added test on function overriding return type with Unit 2017-05-16 16:30:29 +03:00
Igor Chevdar bdb185ee93 Added bridge for functions overriding return type with Unit 2017-05-16 16:30:29 +03:00