Commit Graph

819 Commits

Author SHA1 Message Date
Svyatoslav Scherbina 78a912f637 backend.native: tie compiler to runtime
to make compiler able to refer entities declared in runtime
2016-09-29 17:41:54 +07:00
Svyatoslav Scherbina 80ed5a2461 Interop: add minor improvements 2016-09-29 17:41:54 +07:00
Svyatoslav Scherbina 5dc871ec32 runtime: add TypeInfo struct definition
also add runtime as Gradle subproject producing bitcode
2016-09-29 17:41:54 +07:00
Vasily Levchenko 3b7af125f7 kotlin-ir: sync 2016-09-29 10:06:25 +03:00
Svyatoslav Scherbina 2ca6676674 backend.native: apply Interop and add LLVM bindings 2016-09-29 12:27:47 +07:00
Svyatoslav Scherbina a6f7500126 Interop: handle all main.kotlin.srcDirs in Gradle plugin
also fix minor bug with default package
2016-09-29 12:27:20 +07:00
Svyatoslav Scherbina d053fd9ed0 experiments/placer: fix hash bug
sizeof(array) is not equal to size of array
2016-09-29 11:45:18 +07:00
Nikolay Igotti 22bfd5ec27 Minor tweaks. 2016-09-28 19:19:52 +03:00
Nikolay Igotti 5aa2a44ccb More explicit assignments in placer test, cleaner refcounting delegation. 2016-09-28 18:56:39 +03:00
Nikolay Igotti fa838992e5 More explicit assignments in placer test. 2016-09-28 18:49:05 +03:00
Nikolay Igotti 5293abd3e9 Updated README.md 2016-09-28 18:42:43 +03:00
Nikolay Igotti 0db03c4025 Tweaks. 2016-09-28 18:42:43 +03:00
Vasily Levchenko 5304da3648 remove ant task 2016-09-28 18:11:40 +03:00
Vasily Levchenko f96884b60a build: llvmInstallPath becomes /opt/local/libexec/llvm-3.8
NOTE: if for some reasons you need to redefine this values,
please add it to local.property
2016-09-28 17:54:08 +03:00
Vasily Levchenko 3ca8133571 missed gradle.properties containing global configuration for otlin_version and so on 2016-09-28 17:17:38 +03:00
Nikolay Igotti cbdcd863d1 Modify placer to allow single object containers, use offset in container. 2016-09-28 16:39:48 +03:00
Vasily Levchenko 89d6c24f56 HEAD UP!
The gradle.property contains the version of the kotlin kotlin_version, previously it was used for holding llvmInstallPath, now this variable should be defined in local.property
2016-09-28 16:08:44 +03:00
Vasily Levchenko c6cf10b1e8 backend.native: use once initialized property (path to kotlin dist) to initialize dependencies 2016-09-28 16:06:05 +03:00
Vasily Levchenko 0eaaa58ed9 HEAD UPS! Global move: experiments -> kotlin-native 2016-09-28 13:22:36 +03:00
Vasily Levchenko 541f9ac1e7 g/c: .log 2016-09-27 17:56:53 +03:00
Vasily Levchenko 22823cad65 build backend.native: separated with source sets between frontend and backend 2016-09-27 17:56:53 +03:00
Nikolay Igotti b3935a8ee8 Added README 2016-09-27 17:36:57 +03:00
Vasily Levchenko ff6b3474d8 added run task to launch example kt file 2016-09-27 15:11:08 +03:00
Vasily Levchenko 68ce9cd549 added backend.native to world build 2016-09-27 14:49:56 +03:00
Vasily Levchenko 7db858edda native.backend: dummy one 2016-09-27 14:49:56 +03:00
Vasily Levchenko de28bfaa9c native.backend + native.frontend 2016-09-27 14:49:56 +03:00
Vasily Levchenko 291a805ae2 kotlin-ir: sync 2016-09-27 14:49:56 +03:00
Vasily Levchenko 3200c449ef kotlin-ir sync with origin 2016-09-27 14:49:56 +03:00
Vasily Levchenko 232607e419 makes translator compatible with student llvm frontend... What? :) 2016-09-27 14:49:56 +03:00
Vasily Levchenko d5f6c0e382 copy of org.jetbrains.kotlin.js.descriptorUtils.nameIfStandardType for translator needs 2016-09-27 14:49:56 +03:00
Svyatoslav Scherbina 1a83fce002 Interop: do not use hardcoded paths to LLVM
also use the defined LLVM toolchain to build JNI interop stub libs
2016-09-26 14:13:58 +03:00
Svyatoslav Scherbina f9f418c51b Interop: add minor code improvements 2016-09-26 10:34:50 +03:00
Vasily Levchenko 6572f84b31 translator-bc: bit more transfer to laptop 2016-09-23 18:32:43 +03:00
Vasily Levchenko f6c9a4ad6b translator-bc: takeplacers for bc/ir generators (to move from desktop to laptop) 2016-09-23 18:18:41 +03:00
Vasily Levchenko 8ed1b7b083 test run, test was done with following command:
for f in $(find . -name \*.kt) ; do java -jar ../../../../build/libs/translator-bc-1.0.jar ./while_break_1/while_break_1.kt > ./while_break_1/while_break_1.kt.out 2>./while_break_1/while_break_1.kt.err; [ 0 -ne 0 ] && echo ./while_break_1/while_break_1.kt failed ; done
after this, *.err files with zero bytes were removed, so some mean this is test data, for wheather modification are corrent and whether they were translated correctly

NOTE:
for loop should be launched in experiments/translator-bc/src/test/kotlin/tests to avoid run of trunlator on other sources of the project.
2016-09-23 11:34:45 +03:00
Vasily Levchenko e8fe1dd5e4 interop: fix import 2016-09-22 17:30:09 +03:00
Vasily Levchenko 05eadb0031 translator-bc: added llvm module creation in state to get access at every place it's required (commited to move on my laptop) 2016-09-22 17:27:06 +03:00
Vasily Levchenko 13136a36af translator-bc: gradle build 2016-09-22 17:27:06 +03:00
Vasily Levchenko 4d6912a1d0 translator-bc: declarations for llvm-3.6 2016-09-22 17:27:06 +03:00
Vasily Levchenko 3b121f920b added interop integration to translator-bc 2016-09-22 17:27:06 +03:00
Vasily Levchenko d5a6c854dd translator-bc: is copy of translator, currently...
it was copied to inject byte code generation instead of llvm asm
via domestic interop library
2016-09-22 17:27:06 +03:00
Vasily Levchenko 6f0cfb989a buildSrc: added DYLD_LIBRARY_PATH to pass it to indexer, require fix someday for MS and Unix builds. 2016-09-22 17:25:58 +03:00
Svyatoslav Scherbina b3f554efc2 Interop/StubGenerator: do not use hard-coded path to JNI headers 2016-09-22 13:39:56 +03:00
Svyatoslav Scherbina 9e248a57b9 Interop: improve Gradle scripts
build Indexer native libs instead of distributing prebuilt ones
2016-09-21 17:38:45 +03:00
Svyatoslav Scherbina a45e557be1 Interop: gradlify
* move sources to meet gradle conventions
* create gradle scripts and plugin
2016-09-21 14:29:08 +03:00
Svyatoslav Scherbina 5107ebf56e Interop: prevent libclang from installing signal handlers
because it leads to JVM crashes
2016-09-20 17:18:50 +03:00
SvyatoslavScherbina 70c11b0098 Interop: update README.md 2016-09-20 00:08:23 +04:00
Nikolay Igotti 9fffcebc42 Split generic code and example. Add RTTI, arrays and such. 2016-09-19 19:36:55 +03:00
Svyatoslav Scherbina e031dffdd0 Interop: add generated indexer's bindings to clang
to workaround bootstrap issues
2016-09-19 18:53:59 +03:00
Svyatoslav Scherbina 5490ebe556 experiments: remove kni submodule 2016-09-19 18:53:59 +03:00