Commit Graph

2376 Commits

Author SHA1 Message Date
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
Konstantin Anisimov 3e35db5a51 Generate artificial return for inlined constructor 2017-05-16 19:24:52 +07:00
Igor Chevdar e15878bfe9 Fresh box tests 2017-05-15 15:24:58 +03:00
Ilya Matveev 12847428fa samples: Install Tensorflow in HOME directory 2017-05-15 18:31:30 +07:00
Ilya Matveev d28f8ce7f2 samples: Add scripts for samples building
This pach adds a root gradle project in the samples directory
which allows one to build all gradle samples using `./gradlew build`
command. It also adds a shell script in the samples directory which
can build all samples (excluding tensorflow one) using their build.sh
scripts.
2017-05-15 18:31:30 +07:00
Ilya Matveev 8ee788e6b5 gradle-plugin: Add dist target 2017-05-15 18:31:30 +07:00
Ilya Matveev 50ba283aaa gradle-plugin: Use a separate directory for compiled stubs
Two tasks (stub-generator and stub-compiler) used the same output
directory. It caused some problems with up-to-date checks: the
stub-generator task might rerun even if it's inputs isn't changed.
The patch uses separate directories for this tasks to fix this issue.
2017-05-15 18:31:30 +07:00
Ilya Matveev 43582acbf1 gradle-plugin: Don't set LIBRARY_PATH variables for stub-generator 2017-05-15 18:31:30 +07:00
SvyatoslavScherbina 5bd10dc112 Fix generating interop stubs for vararg functions with pointer retval (#569) 2017-05-11 18:54:31 +03:00
Alexander Gorshenev b5fcf0087b Print deserializer failure stack trace only if verbose mode is on. 2017-05-11 18:24:18 +03:00
Svyatoslav Scherbina 8c6718ab91 Always use at least register-sized buffer for return value in ffi_call
As required by the libffi docs.
2017-05-11 13:27:43 +03:00
Igor Chevdar 8f53018653 Disabled warning that coroutines are experimental 2017-05-11 12:51:05 +03:00
Igor Chevdar 29c30545e5 Coroutines lowering: fixed bug appeared after merging with IR symbols 2017-05-11 11:37:32 +03:00
Igor Chevdar 81a0aa1861 Coroutines: added SequenceBuilder 2017-05-11 11:37:32 +03:00