Commit Graph

1130 Commits

Author SHA1 Message Date
Alexander Gorshenev f04827cd57 Deserialization of IrSetField/IrGetField was missing. 2017-06-17 21:23:08 +03:00
Alexander Gorshenev a1ee247a7b Allow deserialization of IrVariable without initializer. 2017-06-17 21:23:08 +03:00
Vasily Levchenko 7ef5cbb52a [stage][link][debug] always produce code with debug info. 2017-06-15 10:53:22 -07:00
Ilya Matveev 07c8404a5e backend: Fix enum constructor default parameters
The problem was observed in the follwing code:

enum class A(one: Int, val two: Int = one) ...

The problem is in the `two` default value. Here the enum constructor
lowering used an old (not lowered) symbol for `one`. Also the lowering
didn't copy the default expression for DEFAULT class.
The patch fixes both problems.
2017-06-14 19:42:29 +07:00
Ilya Matveev e64a5f42f0 stdlib: Improve character API.
The patch adds methods for surrogate characters processing and Unicode
category support needed for regular expression library.
2017-06-14 10:33:45 +07:00
Ilya Matveev 96e807697a [Kotlin compiler][update] 1.1-20170611.100554-585 2017-06-13 16:16:09 +07:00
Mikhael Bogdanov f6d47aa93c Support handler parameter generation 2017-06-09 15:51:07 +03:00
Mikhael Bogdanov cd54f010e0 Move DefaultArgumentStubGenerator to common package 2017-06-09 15:51:07 +03:00
Mikhael Bogdanov 724710811d Rename DefaultArgumentMarker to DefaultConstructorMarker 2017-06-09 15:51:07 +03:00
Mikhael Bogdanov 890ccd96f0 Make TailrecLowering public 2017-06-09 15:51:07 +03:00
Mikhael Bogdanov 6b686735ee Move LateinitLowering to common package 2017-06-09 15:51:04 +03:00
Mikhael Bogdanov 5a1be2715f Add kFunctionImpl to ReflectionTypes 2017-06-09 15:49:03 +03:00
Mikhael Bogdanov f5c421d64b Move isFunctionOrKFunctionType to common package 2017-06-09 15:49:03 +03:00
Mikhael Bogdanov 03e9d7a701 Use KOTLIN_REFLECT_FQ_NAME from builtins 2017-06-09 15:49:03 +03:00
Mikhael Bogdanov 9ce0082ec0 Replace compilerConfiguration with messageCollector in CommonBackendContext 2017-06-09 15:49:02 +03:00
Mikhael Bogdanov a81b6731f8 Move DumpIrTreeWithDescriptorsVisitor to common package 2017-06-09 15:49:02 +03:00
Mikhael Bogdanov 10ca3dbeca Use isPrimitiveType instead of isValueType in LateinitLowering assertion 2017-06-09 15:48:58 +03:00
Ilya Matveev a18e9dbe0d backend: Don't process FAKE_OVERRIDE properties in lateinit lowering 2017-06-09 19:13:52 +07:00
Alexander Gorshenev a23c64012b A bit of infrastructure for the klib pretty printer. 2017-06-08 23:27:53 +03:00
Alexander Podkhalyuzin 9e8ca0fa8d Fixed tests. 2017-06-08 17:21:04 +03:00
Alexander Podkhalyuzin bc941269f0 Fixed samples for the latest changes in Gradle plugin.
- Smaller gradle scripts.
- More structure in sample projects.
- Simplified build/run.
- Added gradle to the rest two samples.
- Almost removed all sh scripts.
- Gradle now works only inside of build directory.
- Fixed READMEs according to the new changes.
2017-06-08 17:21:04 +03:00
Alexander Gorshenev 114010bbcd Make klib info report targets available. 2017-06-08 03:28:18 +03:00
Alexander Gorshenev 646117a60b Initial klib tool check in. 2017-06-08 03:28:18 +03:00
Igor Chevdar 242e1da191 Removed redundant main from tests 2017-06-07 12:29:22 +03:00
Ilya Matveev a70f170e80 [SQUASHME] bitset: fix logical operations. 2017-06-07 11:11:36 +07:00
Ilya Matveev 6ff43d690f stdlib: Add BitSet implementation. 2017-06-07 11:11:36 +07:00
vvlevchenko 00dc4524ca [Kotlin compiler][update] 1.1.4-dev-600 (#639) 2017-06-06 21:56:31 +03:00
Nikolay Igotti 4fcbeadab4 Fix build 2017-06-05 22:18:45 +03:00
Alexander Gorshenev 5192bd1313 Entry point selection.
$ kotlinc -entry foo.bar.qux ...

selects `qux(args: Array<String>):Unit` in the package `foo.bar` as an entry point.

The short flag is `-e`.
2017-06-05 20:56:10 +03:00
Nikolay Igotti a2fa4938f3 Fix Windows resource linking (#633) 2017-06-05 17:58:47 +03:00
Nikolay Igotti dd81d529ee Support for Android ARM64 on Mac (#627) 2017-06-02 15:05:15 +03:00
Alexander Gorshenev f9d0d6d563 Converted K2NativeCompilerArguments from Java to Kotlin. 2017-06-01 23:37:22 +03:00
Alexander Gorshenev fd26b7e156 Found some lost optimization flags. 2017-06-01 18:50:49 +03:00
Nikolay Igotti a5fe494ae3 Fix Windows tests (#622) 2017-06-01 11:46:14 +03:00
max-kammerer 9af223fb00 Extract common interfaces from native ir (#618)
* Move objects out of inner classes
* Extracted CommonBackendContext, common Ir and Symbols
* Switch some lowers to CommonBackendContext
* Move IrUtils to common package
* Move 'atMostOne' utils to common package
* Move DumpIrTreeWithDescriptorsVisitor to common package
2017-05-31 15:53:30 +03:00
Nikolay Igotti 74ffc479bb Add Windows i18n support (#617) 2017-05-31 10:01:49 +03:00
Igor Chevdar 111a5b0e34 Fixed some tests 2017-05-30 14:50:15 +03:00
Svyatoslav Scherbina d6b8b4fb0f Add basic support for Windows with mingw-w64 2017-05-29 19:13:55 +03:00
Svyatoslav Scherbina ed60732058 Fix Windows-specific klib bugs 2017-05-29 19:13:55 +03:00
Svyatoslav Scherbina d7adbfd221 Reconfigure interop with LLVM
Use more strict linking.
Also remove unused components.
2017-05-29 19:13:55 +03:00
Nikolay Igotti 79588716d6 Fix build 2017-05-29 15:42:11 +03:00
Nikolay Igotti ff8bce79d5 Uniform compiler/linker options treatment (#614) 2017-05-29 15:37:15 +03:00
Alexander Gorshenev c9ce175224 A bit simple file name suffix management. 2017-05-29 15:01:42 +03:00
Alexander Gorshenev 1970af042f Introduce '-p' as a short name for '-produce'.
-p program // The default.

    -p library

    -p bitcode
2017-05-29 15:01:42 +03:00
Alexander Gorshenev 380010d1ee -produce program|library|bitcode
'program' makes a kexe.

    'library' makes a klib.

    'bitcode' makes just a bare bitcode file.

    The default is 'program'.
2017-05-29 15:01:42 +03:00
Alexander Gorshenev 34491cfb01 Lexically sort compiler option definitions. 2017-05-29 15:01:42 +03:00
igotti-google 7ba6b6d2cc Revert "Interop test fix"
This reverts commit 09eee739f0.
2017-05-27 11:26:56 +03:00
Nikolay Igotti 09eee739f0 Interop test fix 2017-05-26 16:49:58 +03:00
Ilya Matveev f1256edb02 build: Use konan.properties values for some building constants.
This patch uses values provided by konan.properties to specify
build dependencies (libffi and sysroots) and the "target" parameter
for LLVM.
2017-05-26 15:52:42 +07:00
Igor Chevdar 2dcfdebd5a Optimized inliner: substitute leaking descriptors only once 2017-05-25 16:15:55 +03:00