Commit Graph

1520 Commits

Author SHA1 Message Date
Volodymyr Melnychuk
40e3b5798a Fix undefined reference with MinGw (#7175)
* fix undefined reference with mingw
* use fseek, ftell for x86 and _fseeki64, _ftelli64 for amd64
2018-02-09 09:34:26 +01:00
pqflx3
8d8df5807b Fixes #7121 (#7148)
* Replace ftell and fseek with (windows) _ftelli64, _fseeki64 and (posix) ftello, fseeko

* disable large file test
2018-01-31 16:38:37 +01:00
Andreas Rumpf
4f08ed63cf M&S GC: collect earlier under memory pressure 2018-01-30 10:30:43 +01:00
Andreas Rumpf
8fdc291936 fixes the tracking of 'occupied memory' 2018-01-30 10:30:18 +01:00
Yuriy Glukhov
0b9c1da1c0 Fixes #6741 (#7131) 2018-01-25 04:26:40 +01:00
Andreas Rumpf
0dd1811344 make C++ tests green again 2018-01-22 14:06:53 +01:00
Andreas Rumpf
6e145d4269 GC: also report total GC'ed heap size ignoring losses due to fragmentation 2018-01-21 23:51:54 +01:00
Andreas Rumpf
6266c68ab6 writeStackTrace now officially has no IO effect anymore for more convenient debugging 2018-01-21 21:08:51 +01:00
Andreas Rumpf
8c98277d5a M&S GC: minor code cleanup 2018-01-21 21:06:31 +01:00
Andreas Rumpf
5f603144b2 GC: fixes size computation for leak detection 2018-01-21 20:59:25 +01:00
Andreas Rumpf
e5af08cc12 GC add 'string' to dumpNumberOfInstances 2018-01-21 10:59:09 +01:00
Andreas Rumpf
7adf3bf476 Mark&Sweep GC: introduce nimTracing define for debugging 2018-01-19 18:11:46 +01:00
Andreas Rumpf
00295366b5 fixes size computations for 'dumpNumberOfInstances' 2018-01-19 16:32:48 +01:00
Andreas Rumpf
0b52466bb8 bugfix: do not call memcmp for nil strings 2018-01-19 09:26:11 +01:00
Andreas Rumpf
6f6551d77d leak detector: sort type based entries by total used bytes 2018-01-18 11:11:16 +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
f1089db175 GC: enable precise global/thread local storage tracing 2018-01-15 17:41:05 +01:00
Araq
f71f9f83c2 GC improvements; distinguish between thread local and globals in the marking step 2018-01-14 17:34:27 +01:00
Araq
f1bf65f66e gc.nim: Add a gcAssert to enforce the no heap sharing restrictions 2018-01-12 15:08:02 +01:00
cooldome
2aebb8ed7e Fix for isssue in parseBiggestFloat #7060 (#7061) 2018-01-11 01:57:20 +01:00
rrenderr
a1016245cc - fixed lock of a program when proc echo is called on Android 5.x.x (#7054) 2018-01-10 12:41:29 +01:00
Mathias Stearn
9f943dbc8e Don't zeroMem result of boehmAlloc() (#7029)
From the man page: "Unlike the standard implementations of malloc, GC_malloc
clears the newly allocated storage. GC_malloc_atomic does not."
2018-01-05 08:58:42 +01:00
Yuriy Glukhov
d1e10f9aa3 Fixed mutex usage in SharedList and SharedTable. Closes #6988 (#6990) 2017-12-31 09:28:51 +01:00
cooldome
2b3ec0a7c6 Implement language feature #6885 (#6954) 2017-12-24 22:22:03 +01:00
Mathias Stearn
6bd3a2826f cmp(x, y: string) now uses memcmp rather than strcmp (#6869) (#6968) 2017-12-24 15:23:17 +01:00
Araq
ee67a67ac4 first steps in adding template/macro calls to stack traces 2017-12-21 10:03:33 +01:00
Emery Hemingway
9e87531f04 Genode: constrain osTryAllocPages to RAM quota (#6883)
Genode software components all start with an explicit RAM resource quota
which may or may not be upgraded during runtime by the parent process.
With this patch `osTryAllocPages` will fail if allocation exceeds quotas
set by the parent and the `osAllocPages` procedure will trigger a
blocking request to the parent to increase quotas. The previous behavior
could potentially block both procedures indefinitely for a quota upgrade
rather than fail and trigger garbage collection.

This patch also adds tracking of Genode dataspace mappings into the
component address space so they can be detached and freed.
2017-12-14 10:23:47 +01:00
Andreas Rumpf
e24a3bd0ab allocator: minor fix for deallocOsPages 2017-12-11 09:18:11 +01:00
Araq
b0c682de4d Merge branch 'devel' into araq-new-mm2 2017-12-08 10:06:56 +01:00
Araq
4be45f5913 Merge branch 'devel' of github.com:nim-lang/Nim into devel 2017-12-08 10:06:36 +01:00
Brent Pedersen
e016c9253e optimize setLen (#6816)
inline the call to setLengthSeq and avoid decref for types if ntfNoRefs

closes #6721 and speeds setLen when newLen < len for non reference
types.
2017-12-07 14:25:39 -05:00
Araq
226532f8f3 cleanup todo.txt 2017-12-07 15:58:46 +01:00
Araq
7c9a3161da make the new allocator work 2017-12-07 13:24:18 +01:00
Araq
dc7a69cb66 Threading: increase TLS size for new allocator 2017-12-07 13:15:00 +01:00
Araq
ede38a70fc make allocator use the TLSF algorithm; work in progress 2017-12-07 10:54:46 +01:00
Araq
a0699870e3 osalloc: improve error message when virtualFree fails 2017-12-03 15:20:13 +01:00
Araq
d27c0b2192 make asyncdispatch compile with the foreign GCs 2017-12-01 11:20:50 +01:00
Ștefan Talpalaru
908677a313 remove goFree() (#6808)
__go_free() was removed from gcc-7.2.0 so we stop trying to help the
garbage collector by marking no longer used memory regions
2017-11-25 16:08:27 +01:00
Andreas Rumpf
fe18769fe1 fixes #6753 2017-11-22 12:58:03 +01:00
Arne Döring
a11be5f21f added when statement (#6759) 2017-11-17 10:53:15 +01:00
Andreas Rumpf
661ce8b8cb added system.getStackTraceEntries 2017-11-16 22:57:27 +01:00
Lynn C. Rees
0ab373115c Trim remaining expr/stmt from stdlib (#6742) 2017-11-15 17:34:48 +01:00
Jörg Wollenschläger
eab7c88ce9 Fix cas when using vcc/cpp and use the correct interlocked exchange for bool (#6735) 2017-11-14 17:21:56 +01:00
Erwan Ameil
6a6a2b7d76 Fix missing stacktraces when using -d:useNimRtl (#6716) 2017-11-10 05:39:11 +01:00
Andreas Rumpf
617ba1a209 Merge branch 'devel' into araq 2017-11-07 11:17:20 +01:00
Araq
742f43e572 fixes #6609; 'if' expressions support multiple statements; minor breaking change 2017-11-05 01:26:04 +01:00
Andreas Rumpf
17ccb7f6b6 Merge branch 'devel' into araq 2017-11-02 18:24:33 +01:00
Andreas Rumpf
762ade1177 'ord' does not produce a range type anymore 2017-11-02 18:23:21 +01:00
Andreas Rumpf
1eaeccc15d Merge branch 'devel' into araq 2017-11-02 10:46:30 +01:00
Fabian Keller
7c03c882f5 Remove more usages of unary lt (fixes #6634) (#6641)
* fixes #6634

* remove more usages of unary <
2017-10-31 19:48:01 +01:00