Commit Graph

105 Commits

Author SHA1 Message Date
Araq
694d57c899 styleCheck: make the compiler and large parts of the stdlib compatible with --styleCheck:error
(cherry picked from commit c94647aeca)
2019-07-15 07:58:45 +02:00
Arne Döring
5b27b263fd Remove immediate pragma (#11308)
* remove immediate from tests
* remove immediate from the compiler
2019-05-29 22:21:51 +02:00
Arne Döring
88b5dd3362 right shift is now by default sign preserving (#11322)
* right shift is now by default sign preserving
* fix hashString and semfold
* enable arithmetic shift right globally for CI
* fix typo
* remove xxx
* use oldShiftRight as flag
* apply feedback
* add changelog entry
2019-05-29 16:48:00 +02:00
Andreas Rumpf
e263702688 --newruntime: progress 2019-03-14 19:53:27 +01:00
Andreas Rumpf
f7c0360aba allocators: introduce --define:nimMinHeapPages for tuning mmap calls (omg they are slow on OSX...) 2019-01-19 12:48:39 +01:00
Christopher Dunn
cc1fd50b27 Try to let memTracker compile (#8502) 2018-08-05 09:53:10 +02:00
jcosborn
8f4c5a8955 fixed #7894 (#8496)
make system tests run properly
2018-08-01 10:57:35 +02:00
Dominik Picheta
5ea3b4d581 Implements alloc/dealloc counters for better leak debugging. (#8384) 2018-07-21 01:43:13 +02:00
Yuriy Glukhov
dfe3f16022 Don't depend on string.h in codegen (#8299) 2018-07-13 17:41:59 +02:00
jcosborn
e39f2a9283 fix allocator corruption for large sizes (#7338)
* fix allocator corruption for large sizes
* allow large chunks to coalesce and added test case
* use correct constants in MaxBigChunkSize
2018-03-17 23:59:04 +01:00
Araq
6d4107b783 make the allocator take a special path for allocations bigger than 2GB; fixes #7120 2018-02-27 01:46:52 +01:00
Andreas Rumpf
8fdc291936 fixes the tracking of 'occupied memory' 2018-01-30 10:30:18 +01:00
Andreas Rumpf
03b7df74a9 alloc.nim: Make 'logAlloc' produce a toy Nim program for easier memory tracing 2018-01-18 10:46:23 +01:00
Araq
f71f9f83c2 GC improvements; distinguish between thread local and globals in the marking step 2018-01-14 17:34:27 +01:00
Andreas Rumpf
e24a3bd0ab allocator: minor fix for deallocOsPages 2017-12-11 09:18:11 +01:00
Araq
7c9a3161da make the new allocator work 2017-12-07 13:24:18 +01:00
Araq
ede38a70fc make allocator use the TLSF algorithm; work in progress 2017-12-07 10:54:46 +01:00
Araq
4a7266e1c1 fixes #3558 2017-10-16 12:29:40 +02:00
Andreas Rumpf
8db37455dd fixes withRegion for --gc:stack 2017-06-19 17:43:12 +02:00
Andreas Rumpf
c785066ee3 memory manager: use less memory; corruption prevention 2017-04-02 21:06:10 +02:00
Eugene Kabanov
254fbcc548 Fixes #4719. (#5585) 2017-03-23 16:13:38 +01:00
Araq
518696f3a7 hotfix: allocator: don't set origSize to 0 2017-03-15 17:51:26 +01:00
Araq
98c7bab8ea make memory tracker work without onThreadCreation 2017-03-14 15:45:35 +01:00
Andreas Rumpf
0bb18d1821 introduce nimMaxHeap define to fight memory overcommit 2017-02-10 09:22:28 +01:00
Araq
346ea6d171 system.nim: don't use deprecated symbols/constructs 2017-02-08 14:55:30 +01:00
Andreas Rumpf
04c4d3d77f critical realloc bugfix; refs #4818 2017-02-03 09:48:52 +01:00
Araq
b3e55e532b allocator: fixes regression: get alignment right for small objects 2017-01-31 21:21:08 +01:00
Araq
d59dd577f8 make AVL tree node part of the memory regions; fixes hard to reproduce channel crashes 2017-01-31 13:08:23 +01:00
Andreas Rumpf
51c764e048 fix the racy allocator properly 2017-01-31 08:55:18 +01:00
Araq
79f4b37d3b added test case; threadex example crashes now 2017-01-30 21:11:37 +01:00
Araq
b26e6e3589 fixes #5301 2017-01-30 19:01:03 +01:00
Andreas Rumpf
05a3c1b10a improvements to memtracking 2017-01-26 11:26:02 +01:00
Andreas Rumpf
9753782f96 memory allocator hotfix: do not allocate tremendous amounts of memory 2017-01-13 12:07:37 +01:00
Andreas Rumpf
847210b799 disable new alloctor behaviour for emscripten 2016-12-27 17:54:09 +01:00
Araq
39ca8b8c8e fixes #4818 2016-12-18 23:11:53 +01:00
Andreas Rumpf
249fd5e56b further memtracking improvements 2016-11-24 08:27:19 +01:00
Andreas Rumpf
bc53d2c9de bugfix: bottom of AVL tree is now threadsafe 2016-09-24 02:27:12 +02:00
Jacek Sieka
b3846124e6 clean up a few stray c_stdout's in gc debug code 2016-07-31 08:34:42 +08:00
Jacek Sieka
64b0485207 fix types of ansi_c/sysio to more closely match C ABI
also fixes some instances of using C library functions when there are
nim alternatives available
2016-06-05 12:03:20 +08:00
Andreas Rumpf
dcf830bba9 fixes #3184 2016-05-22 14:28:53 +02:00
Andreas Rumpf
75b03188d0 beginnings of --gc:stack 2016-03-12 13:29:27 +01:00
Andreas Rumpf
8ec5c01cae further progress on --gc:v2 2016-02-17 14:52:02 +01:00
def
4e0f8cf595 Use ByteAddress instead of deprecated TAddress 2016-01-24 14:02:20 +01:00
Araq
217e0ab6e9 lambda lifting support for iterToProc plugin 2015-12-01 00:53:30 +01:00
Andrey Sobolev
4c53a3a7a5 Merge remote-tracking branch 'nim-lang/devel' into emscripten-support 2015-10-01 22:08:29 +06:00
Reimer Behrends
9ea99dbf36 Add option to disable munmap() use in the allocator.
When compiling with '-d:nimAllocNoUnmap', the allocator will not
attempt to return large chunks to the OS. For certain allocation
behaviors, this can be a significant speedup.
2015-09-18 14:05:04 +02:00
Andrey Sobolev
6b645c50d5 mmap non PageSize aligned support
mmap non PageSize aligned support
2015-09-10 12:53:36 +06:00
Araq
a1caef474b proper distinction between --gc:none and --os:standalone 2015-06-29 02:48:33 +02:00
def
e7132767a1 Fix typos in comments 2015-06-21 21:25:38 +02:00
pdw
ff5b446dfc lib/system/a-e - Dropped 'T' from types 2015-06-04 13:18:37 +02:00