Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | fix #16752: threadvar now works with importcpp types; osx now uses native ↵ | Timothee Cour | 2021-01-27 | 1 | -3/+7 |
| | | | | | | | | | | | TLS (`--tlsEmulation:off`), which can be orders of magnitude faster (#16750) * osx now uses native TLS, which can be orders of magnitude faster * add {.cppNonPod.} * improve test * changelog, docs, disable part of windows test | ||||
* | fixes #14865 (#14937) | Andreas Rumpf | 2020-07-08 | 1 | -0/+1 |
| | |||||
* | `nim doc --backend:js`, `nim doc --doccmd:-d:foo`, `nim r --backend:js`, ↵ | Timothee Cour | 2020-05-11 | 1 | -1/+1 |
| | | | | | | | | | | `--doccmd:skip` + other improvements (#14278) * `nim doc --backend:js|cpp...` `nim doc --doccmd:'-d:foo --threads:on'` `nim r --backend:cpp...` (implies --run --usenimcache) * --usenimcache works with all targets * --docCmd:skip now skips compiling snippets; 50X speedup for doc/manual.rst | ||||
* | Unexport even more symbols (#13214) | alaviss | 2020-01-23 | 1 | -0/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * system/gc: don't export markStackAndRegisters * compiler/cgen: unexport internal symbols As these functions are Nim-specific walkaround against C's optimization schemes, they don't serve any purpose being exported. * compiler/cgen: don't export global var unless marked * compiler/ccgthreadvars: don't export threadvar unless marked * tests/dll/visibility: also check for exports This ensure that these changes don't break manual exports. * compiler/cgen: hide all variables created for constants * compiler/ccgtypes: don't export RTTI variables * compiler/ccgexprs: make all complex const static * nimbase.h: fix export for windows * compiler/cgen, ccgthreadvars: export variables correctly For C/C++ variables, `extern` means that the variable is defined in an another unit. Added a new N_LIB_EXPORT_VAR to correctly export variables. | ||||
* | --exception:goto switch for deterministic exception handling (#12977) | Andreas Rumpf | 2020-01-01 | 1 | -2/+2 |
| | | | | | This implements "deterministic" exception handling for Nim based on goto instead of setjmp. This means raising an exception is much cheaper than in C++'s table based implementations. Supports hard realtime systems. Default for --gc:arc and the C target because it's generally a good idea and arc is all about deterministic behavior. Note: This implies that fatal runtime traps are not catchable anymore! This needs to be documented. | ||||
* | Cosmetic compiler cleanup (#12718) | Clyybber | 2019-11-28 | 1 | -9/+9 |
| | | | | | | | | | | | | | | | | | | * Cleanup compiler code base * Unify add calls * Unify len invocations * Unify range operators * Fix oversight * Remove {.procvar.} pragma * initCandidate -> newCandidate where reasonable * Unify safeLen calls | ||||
* | Less ropes (#10979) | Arne Döring | 2019-04-11 | 1 | -1/+1 |
| | | | | | * convert ropecg to a macro * fewer intermediate ropes | ||||
* | remove the last global variables in the C code generator | Andreas Rumpf | 2018-05-28 | 1 | -20/+7 |
| | |||||
* | options.nim: no global variables anymore | Andreas Rumpf | 2018-05-13 | 1 | -3/+3 |
| | |||||
* | C code generator compiles again | Andreas Rumpf | 2018-05-12 | 1 | -3/+3 |
| | |||||
* | C++ codegen: emit 'extern C' for importc'ed functions that we declare a ↵ | Araq | 2017-02-14 | 1 | -2/+2 |
| | | | | prototype for | ||||
* | new name mangling rules for easier debugging | Andreas Rumpf | 2017-02-02 | 1 | -2/+2 |
| | |||||
* | refactoring: flags instead of bools | Andreas Rumpf | 2016-05-18 | 1 | -2/+2 |
| | |||||
* | nimrod -> nim | Erik Johansson Andersson | 2016-02-05 | 1 | -1/+1 |
| | |||||
* | Get rid of deprecation warnings | def | 2015-04-07 | 1 | -14/+14 |
| | |||||
* | bugfix: c++ support for 'NimThreadVarsSize' | Araq | 2014-10-08 | 1 | -3/+6 |
| | |||||
* | Nimrod renamed to Nim | Araq | 2014-08-28 | 1 | -1/+1 |
| | |||||
* | case consistency: cs:partial bootstraps on windows | Araq | 2013-12-29 | 1 | -1/+1 |
| | |||||
* | case consistency part 1 | Araq | 2013-12-27 | 1 | -2/+2 |
| | |||||
* | Revert "Revert "bugfix: emulated thread vars used in combination with the ↵ | Zahary Karadjov | 2013-08-19 | 1 | -2/+2 |
| | | | | | | mark & sweep GC"" This reverts commit 75c586bbe1cc649b36fc00362ab40ebb1d163d9f. | ||||
* | Revert "bugfix: emulated thread vars used in combination with the mark & ↵ | Araq | 2013-05-27 | 1 | -2/+2 |
| | | | | | | sweep GC" This reverts commit 420789c2782be7b969ad02448841d90bd0d17a1f. | ||||
* | bugfix: emulated thread vars used in combination with the mark & sweep GC | Zahary Karadjov | 2013-05-26 | 1 | -2/+2 |
| | | | | resulted in invalid code generation | ||||
* | Removes executable bit for text files. | Grzegorz Adam Hankiewicz | 2013-03-16 | 1 | -0/+0 |
| | |||||
* | more uint related fixes | Zahary Karadjov | 2012-06-14 | 1 | -3/+4 |
| | |||||
* | proper indentation in the generated C code | Zahary Karadjov | 2012-06-12 | 1 | -3/+2 |
| | |||||
* | fix threading tests | Zahary Karadjov | 2012-04-15 | 1 | -2/+3 |
| | |||||
* | C variables are created in their enclosing block instead of their enclosing ↵ | Zahary Karadjov | 2012-04-12 | 1 | -1/+3 |
| | | | | function | ||||
* | year 2012 for most copyright headers | Araq | 2012-01-02 | 1 | -1/+1 |
| | |||||
* | new compiler option tlsEmulation | Araq | 2011-10-27 | 1 | -3/+1 |
| | |||||
* | compilation cache: methods have a chance to work | Araq | 2011-10-23 | 1 | -4/+12 |
| | |||||
* | preparations for 0.8.12 | Araq | 2011-07-10 | 1 | -0/+0 |
| | |||||
* | bugfix: 'set' overloadable; further steps for multi threading support | Araq | 2011-07-08 | 1 | -11/+10 |
| | |||||
* | compiler can emulate thread local variables | Araq | 2011-06-15 | 1 | -0/+54 |