Igor Chevdar
136c62a62c
Added test on workers with invalid transfer attempt
2017-08-29 16:39:49 +03:00
Nikolay Igotti
f74265126e
Fix performance bug, review feedback on indexer changes ( #818 )
2017-08-29 16:12:44 +03:00
Nikolay Igotti
7d72beb27c
Improve memory tracing, fix 32-bit platforms ( #815 )
2017-08-29 10:21:47 +03:00
Igor Chevdar
1d434899cb
Fixed bug with globals deinitialization
2017-08-28 14:51:14 +05:00
Ilya Matveev
f218d36aa9
build: Fix javaArgs in stdlib build
2017-08-28 10:55:53 +07:00
Igor Chevdar
3522627ce3
Added FrameOverlay struct
2017-08-24 19:48:55 +05:00
Nikolay Igotti
69bf28cc23
v0.3.1 preparations. ( #806 )
2017-08-24 15:03:19 +03:00
Ilya Matveev
d2c3e320c6
[SQUASHME] Review fixes
2017-08-23 19:42:06 +07:00
Ilya Matveev
7116801dc6
dependencies: Track downloading in a separate thread
2017-08-23 19:42:06 +07:00
Ilya Matveev
24a87415d7
dependencies: Use HTTPS for bintray repo
2017-08-23 19:42:06 +07:00
Ilya Matveev
60ed6f6871
dependencies: Move dependency downloader into shared project
2017-08-23 19:42:06 +07:00
Ilya Matveev
fb15992546
build: Distribute 'shared' as a separate jar
2017-08-23 19:42:06 +07:00
Nikolay Igotti
109f84f9af
Immutable data prototype. ( #799 )
2017-08-22 16:21:10 +03:00
Nikolay Igotti
87f2bed5c8
Move Kotlin version to 1.1.4, fix some warnings. ( #802 )
2017-08-22 14:50:05 +03:00
Svyatoslav Scherbina
99dd7227dc
Support Boolean in interop varargs and function pointers invocation
2017-08-18 17:45:41 +03:00
Svyatoslav Scherbina
5586d29764
Add basic support for calling C function pointers
...
Fix #739
2017-08-18 17:45:41 +03:00
Vasily Levchenko
db1a1b029a
[codegen][debug info][dwarf] (var) variable inspection in debugger support
...
- debug location metainformation attached to stack allcated slots.
- python bindings to work such variables.
2017-08-17 14:00:18 +03:00
Ilya Matveev
4931b2f05b
build: Refactor dependencies updating
2017-08-17 10:27:40 +07:00
Svyatoslav Scherbina
5c3e8d63d4
Support bit fields in interop
...
Fix #728
2017-08-16 15:03:58 +03:00
Svyatoslav Scherbina
d3185e3e19
Implement very basic Objective-C interop
...
Also refactor StubGenerator
2017-08-16 10:04:23 +03:00
Svyatoslav Scherbina
ab41017e58
Cache deserialized inline function bodies
2017-08-16 10:04:23 +03:00
Ilya Matveev
266047118e
dependencies: Set downloading retry parameters in konan.properties
2017-08-16 10:33:07 +07:00
Vasily Levchenko
8296c65aeb
Migrate native to moved common lowers
...
(cherry picked from commit 6665d48017540afd8b8cb2fa0f104cab93e73473)
2017-08-10 06:19:51 +03:00
Mikhael Bogdanov
d9c04eaaf5
Move platform specific symbols to KonanSymbols
...
(cherry picked from commit 40df6da2d78420497c6c2cd3a229ab00fb0d8f36)
2017-08-10 06:19:51 +03:00
Mikhael Bogdanov
d33e8c78d1
Move StringConcatenationLowering and VarargLowering to common lowers
...
(cherry picked from commit 79422eef4ddbde3c17adc19417b9412a59d5da7b)
2017-08-10 06:19:51 +03:00
Mikhael Bogdanov
4a2d4b932b
Specify source for default impl
...
(cherry picked from commit b37fd90128cea61df9c53a5b48bea6092ea9ec57)
2017-08-10 06:19:51 +03:00
Vasily Levchenko
a24c5232cd
[kotlin compiler][update] 1.1-20170809.024631-765
2017-08-10 06:19:51 +03:00
Alexander Gorshenev
c7d5d6851d
Classified the rest of the wasm32 expected failures.
2017-08-09 17:34:26 +03:00
Alexander Gorshenev
77cbd39907
Global initializers for wasm32.
2017-08-09 17:34:26 +03:00
Alexander Gorshenev
26d383c8be
Support grow() operation for wasm32 memory.
2017-08-09 17:23:40 +03:00
Igor Chevdar
e615b08ab7
Set escape analysis to analyze all types including value types.
...
Since a value type might be boxed and this information is missing in IR
the analysis cannot distinguish value types and boxes, so let it analyze
all for now.
2017-08-08 13:45:46 +03:00
Igor Chevdar
56e08e40e8
Added some corner tests on escape analysis
2017-08-07 16:45:51 +03:00
Igor Chevdar
31d2618b9c
Made escape analysis a bit more conservative for now
2017-08-07 16:45:51 +03:00
Robert Hencke
72ca603d71
Reduce boilerplate for applying kotlin-gradle-plugin.
2017-08-07 17:25:52 +07:00
Alexander Gorshenev
a0e15a7776
Eliminated some warnings.
2017-08-07 12:36:32 +03:00
Igor Chevdar
9eb2bb7fbc
Fixed some bugs in escape analysis
2017-08-04 17:48:50 +03:00
Alexander Gorshenev
21ad2d97e6
Fix broken build.
...
The fix for d8 readline() broke hello1 and hello2 tests.
2017-08-04 15:50:27 +03:00
Alexander Gorshenev
b4660d03a1
Initial .wasm file generation for the wasm32 target.
...
Some basic launcher.js and runtime.
2017-08-03 17:51:48 +03:00
igotti-google
5e55a75d59
Work around 32-bit build problem (struct merging by LLVM)
2017-08-03 00:39:09 +03:00
Nikolay Igotti
beb10306dd
Add Kotlin object inspection to simplify debugging ( #763 )
2017-08-02 18:55:52 +03:00
Igor Chevdar
eabe2435bf
Rewrote escape analysis
2017-08-02 18:44:04 +03:00
Ilya Matveev
effe54d470
stdlib: Add also function
2017-08-02 20:20:09 +07:00
Vasily Levchenko
d0ec24a5f2
[kotlin compiler][update] 1.1-20170729.003925-731
2017-07-31 12:56:29 +03:00
Vasily Levchenko
f07273d55f
[debug][test] build fix
2017-07-28 17:52:58 +03:00
Ilya Matveev
12f815eabb
backend: Add a call lowering pass before inlining
...
Some inlined calls may require additional processing before the
inlining pass. E.g. assert() calls must be removed if assertions are
disabled by compiler flags. This patch adds an additional pass
before inlining and uses it for assertions removal.
2017-07-27 11:49:54 +07:00
Ilya Matveev
0e67fbb7ad
tests: Add assert tests
2017-07-27 11:49:54 +07:00
Ilya Matveev
a2e9fa324b
backend: Use symbols for assertions processing
2017-07-27 11:49:54 +07:00
Ilya Matveev
de5bc71ffc
backend: Correct assertion in 'for' loop lowering
...
The frontend uses one of two origins for loop variables:
LOOP_VARIABLE and IMPLICIT_LOOP_VARIABLE. This patch takes
this into account.
2017-07-25 22:26:17 +07:00
Ilya Matveev
bef8d6bef1
backend: Set 'origin' property for generated variables in 'for' loops
2017-07-25 22:26:17 +07:00
Ilya Matveev
42c4391654
backend: Process 'until MIN_VALUE' in for loops
...
This patch takes into account a corner case available for loops
over a progression (see backend.native/tests/external/codegen/box/
ranges/forInUntil/forInUntilMinint.kt test):
for (i in 0 until Int.MIN_VALUE) { ... }
Here we cannot use subtraction to obtain a right bound of the loop
due to an overflow. Instead we consider any loop with MIN_VALUE in
it's right bound as empty loop. Such behaviour is similar to the one
of 'until' method.
So now the empty check for a loops with 'until' call:
for (i in first until bound) { ... }
is as follows:
val last = getProgressionLast(first, bound, step) // Only if step==1
if (first <= last && bound > <Int|Long|Char>.MIN_VALUE) {
do { ... } while(i != last)
}
Further improvements: We can generate a simpler IR for some simple
frequent cases (e.g. for until calls without steps) and eliminate
loops if we can prove that they are empty.
2017-07-25 22:26:17 +07:00