Commit Graph

953 Commits

Author SHA1 Message Date
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
Andreas Rumpf
0895064983 getEnv now supports a 'default' parameter; refs #6019 2017-10-30 17:21:05 +01:00
Andreas Rumpf
c0433b0b6c make some system modules compile again 2017-10-29 19:42:33 +01:00
Andreas Rumpf
6a3288a60e more replacements for the deprecated '<' 2017-10-29 08:55:30 +01:00
Andreas Rumpf
dcfc2b0e5f sysstr: code formatting 2017-10-28 12:10:22 +02:00
Araq
7ee825a6e5 make the Windows build green again 2017-10-17 09:27:44 +02:00
Andreas Rumpf
527e20fd3a fixes the Windows build 2017-10-16 19:52:32 +02:00
Andreas Rumpf
7eeef4aae7 fixes #1137 2017-10-16 16:47:10 +02:00
Araq
b219fc74ad fixes #5143 2017-10-16 12:45:43 +02:00
Araq
4a7266e1c1 fixes #3558 2017-10-16 12:29:40 +02:00
Andreas Rumpf
13f974336e Merge branch 'araq-stringify-array' into devel 2017-10-10 13:18:32 +02:00
Andreas Rumpf
55cb959a68 make tests green again; closes #5861 2017-10-10 09:18:31 +02:00
Andreas Rumpf
3308d26581 breaking change: arrays of char do not convert to cstring; ptr to array of char does 2017-10-10 00:17:20 +02:00
Andreas Rumpf
db0d353281 Merge branch 'stringify-array' of https://github.com/krux02/Nim into krux02-stringify-array 2017-10-09 23:46:24 +02:00
Eduardo Bart
edefe4db21 Futher improve seq assingment speed by 2x factor (#6437) 2017-10-09 22:55:12 +02:00
Charlie Barto
d55e02ddf1 fixes to allow the usage of clang on windows with the msvc abi and ms headers (#6442) 2017-10-09 17:26:53 +02:00
Andreas Rumpf
e9243a1616 Merge branch 'devel' into araq 2017-10-02 08:31:38 +02:00
Andreas Rumpf
0314075639 revert the 'wasMoved' logic until the write barrier has been adapted 2017-09-29 11:33:40 +02:00