Commit Graph

57 Commits

Author SHA1 Message Date
Igor Chevdar c1c363b81e Freezing: bug fix 2018-03-28 17:33:09 +03:00
Igor Chevdar 7a8220ea36 Memory.cpp: refactoring 2018-03-28 17:33:09 +03:00
Igor Chevdar 7227c5d100 Supported shared access to enums 2018-03-28 17:33:09 +03:00
Nikolay Igotti 8a06dbfb28 Fix memory leak with frozen objects hanging from cycles. 2018-03-22 15:33:31 +03:00
Nikolay Igotti a6fa19a7fd Object freezing API (#1390) 2018-03-14 11:51:48 +03:00
Nikolay Igotti 19cc8c6bee API for object passing between platform threads. (#1270) 2018-01-30 13:19:56 +03:00
Nikolay Igotti 12d3346c36 Minor code cleanup. (#1264) 2018-01-26 20:48:21 +03:00
Nikolay Igotti 155618c7dd Simple GC ergonomics. 2018-01-25 12:54:42 +03:00
Nikolay Igotti 4231441e81 Fix workers sample (#1196) 2017-12-27 21:31:21 +03:00
Sergey Bogolepov 9d14a29f49 Added a little hack that allows to enable runtime optimizations (#1147) 2017-12-15 16:46:31 +03:00
Svyatoslav Scherbina d745e80135 Implement -produce framework option
It compiles Kotlin code to Objective-C framework
(also importable to Swift)
2017-11-29 12:12:02 +03:00
Vasily Levchenko fea734ec83 [codegen][debug] generation debug info for vals. 2017-10-26 15:45:03 +03:00
KonstantinAnisimov 7782195201 Memory statistic (#817) 2017-08-31 18:54:05 +03:00
Igor Chevdar 8605c01255 Implemented workers TODO about subrgaph transfer
Implemented check that subgraph of objects can be safely transferred
from one worker to another by running trial deletion on the subgraph.
2017-08-29 16:39:49 +03:00
Nikolay Igotti 7d72beb27c Improve memory tracing, fix 32-bit platforms (#815) 2017-08-29 10:21:47 +03:00
Igor Chevdar 7e666f2d90 Implemented Bacon's algorithm for cycle collection 2017-08-24 19:48:55 +05:00
Igor Chevdar 3522627ce3 Added FrameOverlay struct 2017-08-24 19:48:55 +05:00
Nikolay Igotti 9402a9c6a2 Finalizer queue (#801) 2017-08-21 18:57:46 +03:00
Svyatoslav Scherbina d3185e3e19 Implement very basic Objective-C interop
Also refactor StubGenerator
2017-08-16 10:04:23 +03:00
Igor Chevdar df754c0215 Removed debug code 2017-08-03 13:44:42 +03:00
Igor Chevdar eabe2435bf Rewrote escape analysis 2017-08-02 18:44:04 +03:00
Nikolay Igotti 06e31939dd WebAssembly effort (#721) 2017-07-14 16:44:46 +03:00
Nikolay Igotti dae273099a Centralized memory allocation (#736) 2017-07-13 14:10:26 +03:00
Nikolay Igotti c1d65ffede Fix warnings (#690) 2017-06-22 13:53:03 +03:00
Nikolay Igotti 1ad50bc33f Workers draft (#655) 2017-06-21 11:26:09 +03:00
Nikolay Igotti bc2d635ce7 Optimize memory management (#480) 2017-04-13 15:26:51 +03:00
Nikolay Igotti 2227415448 Remove remnants of concurrent memory model (#467) 2017-04-10 16:49:46 +03:00
Nikolay Igotti 100e4df05d Concurrency prototype (#453)
* Concurrent executors

* Review feedback
2017-04-07 15:16:04 +03:00
Nikolay Igotti 0cbd34086e Added JB copyright (#417) 2017-03-30 09:51:58 +03:00
Nikolay Igotti 45bb2fdb8b Add some string operations, refactor runtime. (#249) 2017-02-17 14:31:28 +03:00
Nikolay Igotti 57c899763d Switch runtime to UTF16 strings, sigh. (#236) 2017-02-14 11:03:20 +03:00
Nikolay Igotti f0950a92c3 Various small fixes. (#208) 2017-01-30 18:36:12 +03:00
Nikolay Igotti b06f5d0d5b More preparations for escape analysis. (#201) 2017-01-30 11:10:32 +03:00
Nikolay Igotti 66293cb89f Frame-local allocations. (#193) 2017-01-24 17:16:54 +03:00
Nikolay Igotti 1c878e4843 Improve object init order. (#187) 2017-01-20 13:31:01 +03:00
Nikolay Igotti 239a573142 GC interface. (#178) 2017-01-13 12:03:38 +03:00
Nikolay Igotti b1101ba43e Cycle collector. (#175) 2017-01-11 17:38:03 +03:00
Nikolay Igotti 7ba096b169 Group slots together. (#166) 2016-12-29 09:00:01 +03:00
Svyatoslav Scherbina 361bb7a101 runtime, backend: simplify static objects layout:
mark static objects with container_offset_negative_ == 0
2016-12-29 12:18:15 +07:00
Nikolay Igotti e65b86ab21 Memory management design and implementation. (#148) 2016-12-27 15:01:18 +02:00
Nikolay Igotti f49c6133f3 Return objects to slot. (#161) 2016-12-26 18:31:50 +02:00
Nikolay Igotti dbc1cb1919 Switch to unrelated ObjHeader and ArrayHeader. (#160) 2016-12-26 11:27:27 +02:00
Konstantin Anisimov de493313f8 RUNTIME: fix of InitInstance constructor parameter 2016-12-06 13:53:07 +03:00
Nikolay Igotti 1fc4ce32d3 Mostly avoid using ArrayHeader* in generated code. (#116) 2016-12-05 15:04:34 +03:00
Nikolay Igotti 1197b8453f Create C++ static initializer for use in global objects. (#115) 2016-12-05 14:01:24 +03:00
Alexander Gorshenev 0e7b13027e Changed AllocStringInstance to accept data and length. 2016-12-01 19:20:12 +04:00
Alexander Gorshenev 2c89fee837 Simplified launcher to utilize some ready made functionality. 2016-12-01 19:20:12 +04:00
Vasily Levchenko b62536f807 RUNTIME: AllocArrayInstance and AllocInstance return ArrayHeader * and ObjHeader * respectively 2016-11-30 14:49:23 +03:00
Konstantin Anisimov dfd486a9ea RUNTIME: Code rearranged between Memory.* and Types.* 2016-11-18 16:22:27 +03:00
Nikolay Igotti cc1b2b9684 Add CheckCast(). 2016-11-16 18:41:36 +03:00