Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Improve setjmp()/longjmp() performance. | Reimer Behrends | 2014-09-25 | 1 | -1/+8 |
| | | | | | | | | | | | Exception handling for the C backend used setjmp()/longjmp() unconditionally. However, on POSIX systems, these functions save and restore the signal mask, adding considerable overhead to exception handling, even where no exceptions are involved. The compiler and library now try to use either _setjmp()/_longjmp() or sigsetjmp()/siglongjmp() where possible, marked by the defines "nimRawSetjmp" and "nimSigSetjmp", respectively. The define "nimStdSetjmp" can be used to revert to setjmp()/longjmp() instead. | ||||
* | Avoid unnecessary #include triggered by importc vars. | Reimer Behrends | 2014-09-19 | 1 | -0/+4 |
| | | | | | | | | | | | | | | | | | When a C variable or macro is imported via an {.importc.} var or let statement, but no definition is needed and the variable does not have an initializer part, then there is also no need to generate an #include for the associated header until and unless the variable is actually used. The header is already generated upon use, but unnecessarily also when the variable is defined. This is an issue with the posix module in particular, where a lot of unnecessary header files are being included because relevant constants are defined via importc vars, and those header files may not even be available on a given system. This patch omits the generation of the #include directive for those definitions where they aren't needed. | ||||
* | fixes #1067 | Araq | 2014-09-11 | 1 | -0/+10 |
| | |||||
* | fixes newly introduced bugs | Araq | 2014-08-14 | 1 | -5/+4 |
| | |||||
* | fixes #1434 | Araq | 2014-08-14 | 1 | -3/+13 |
| | |||||
* | compiler prepared for the new comment handling | Araq | 2014-04-30 | 1 | -0/+1 |
| | |||||
* | gensym'ed symbols work with lambda-lifting; closures produce objects instead ↵ | Araq | 2014-04-03 | 1 | -1/+1 |
| | | | | of tuples for easier debugging | ||||
* | split the inline and closure iterators into different symbol kinds for ↵ | Zahary Karadjov | 2014-03-06 | 1 | -1/+1 |
| | | | | easier discrimination between them | ||||
* | Fixed #688 : return in except statments. Also fixed return in finally ↵ | Audun Wilhelmsen | 2014-02-23 | 1 | -16/+25 |
| | | | | statements. | ||||
* | Fixed issue 391 (nested break in except-stmts) | Audun Wilhelmsen | 2014-02-16 | 1 | -9/+25 |
| | |||||
* | case consistency: cs:partial bootstraps on windows | Araq | 2013-12-29 | 1 | -8/+8 |
| | |||||
* | case consistency: next steps | Araq | 2013-12-29 | 1 | -2/+2 |
| | |||||
* | case consistency part 4 | Araq | 2013-12-27 | 1 | -27/+27 |
| | |||||
* | case consistency part 1 | Araq | 2013-12-27 | 1 | -16/+16 |
| | |||||
* | Merge branch 'master' of https://github.com/Araq/Nimrod into vm2 | Araq | 2013-12-23 | 1 | -1/+6 |
|\ | | | | | | | | | Conflicts: web/news.txt | ||||
| * | implemented 'injectStmt'; more debug support | Araq | 2013-12-16 | 1 | -1/+6 |
| | | |||||
* | | computed goto now works; some progress on the new VM | Araq | 2013-10-25 | 1 | -2/+17 |
|/ | |||||
* | implemented top level asm statements | Araq | 2013-10-07 | 1 | -1/+5 |
| | |||||
* | fixes #576 | Araq | 2013-09-18 | 1 | -2/+3 |
| | |||||
* | better support for GNU's assembler | Araq | 2013-09-03 | 1 | -9/+25 |
| | |||||
* | Merge branch 'master' of github.com:Araq/Nimrod | Araq | 2013-08-22 | 1 | -1/+1 |
|\ | |||||
| * | work-in-progress for compiling generics in their owner module | Zahary Karadjov | 2013-08-19 | 1 | -1/+1 |
| | | |||||
* | | fixed and documented computedGoto pragma | Araq | 2013-08-22 | 1 | -1/+4 |
|/ | |||||
* | implemented computed goto support | Araq | 2013-08-13 | 1 | -1/+60 |
| | |||||
* | fixes #532 | Araq | 2013-08-01 | 1 | -0/+1 |
| | |||||
* | fixes #501 | Araq | 2013-07-01 | 1 | -1/+1 |
| | |||||
* | fixed: typo | Araq | 2013-05-03 | 1 | -1/+1 |
| | |||||
* | completed expr/stmt unification | Araq | 2013-05-03 | 1 | -122/+76 |
| | |||||
* | revert new scope for 'if' | Araq | 2013-05-02 | 1 | -1/+2 |
| | |||||
* | tester should work again; documented (;) | Araq | 2013-04-30 | 1 | -5/+7 |
| | |||||
* | first steps to the expr/stmt unification | Araq | 2013-04-30 | 1 | -3/+2 |
| | |||||
* | Removes executable bit for text files. | Grzegorz Adam Hankiewicz | 2013-03-16 | 1 | -0/+0 |
| | |||||
* | documented object constrs; endb works again | Araq | 2013-03-09 | 1 | -17/+21 |
| | |||||
* | preparations for a generational GC | Araq | 2013-02-16 | 1 | -1/+2 |
| | |||||
* | code cleanup for mark&sweep GC | Araq | 2013-02-07 | 1 | -1/+1 |
| | |||||
* | first version of a simple mark&sweep GC; activate with --gc:markAndSweep | Araq | 2013-02-07 | 1 | -2/+11 |
| | |||||
* | merged upstream master | Zahary Karadjov | 2013-01-27 | 1 | -1/+6 |
|\ | |||||
| * | fixes #277; documentation improvements | Araq | 2012-12-17 | 1 | -0/+4 |
| | | |||||
| * | implemented 'import except' | Araq | 2012-11-28 | 1 | -1/+2 |
| | | |||||
* | | disables the compile-time rope formatting during bootstrapping | Zahary Karadjov | 2012-11-28 | 1 | -22/+22 |
| | | |||||
* | | first batch of rope code converted to `rfmt` | Zahary Karadjov | 2012-11-28 | 1 | -3/+1 |
|/ | | | | | | The results so far are inconclusive: The rope cache tries have been reduced by more than 125K (nearly 20%), but the bootstrap time seems to be ever slightly increasing (0.01s). | ||||
* | next steps for first class iterators | Araq | 2012-11-15 | 1 | -3/+5 |
| | |||||
* | improvements for first class iterators | Araq | 2012-11-15 | 1 | -1/+6 |
| | |||||
* | bugfix: stack traces; first class iterators almost working | Araq | 2012-11-15 | 1 | -1/+9 |
| | |||||
* | bugfix: closures as default param values | Zahary Karadjov | 2012-10-06 | 1 | -5/+0 |
| | |||||
* | improved support for typedesc values | Zahary Karadjov | 2012-09-25 | 1 | -0/+1 |
| | | | | | * can be stored in constants and variables (including in containers like sequences) * can be passed to and returned from macros | ||||
* | implemented a stack trace profiler | Araq | 2012-09-15 | 1 | -0/+4 |
| | |||||
* | first steps for overloading support of passing blocks; bugfix: test results ↵ | Araq | 2012-09-11 | 1 | -1/+1 |
| | | | | of 'compile' are not overwritten | ||||
* | first steps to deprecate 'nil' statement | Araq | 2012-09-09 | 1 | -3/+4 |
| | |||||
* | openarray/varargs split; breaks bootstrapping | Araq | 2012-08-16 | 1 | -1/+1 |
| |