summary refs log tree commit diff stats
path: root/compiler/cgen.nim
Commit message (Collapse)AuthorAgeFilesLines
* Nimrod renamed to NimAraq2014-08-281-4/+4
|
* big renameAraq2014-08-281-1/+1
|
* Merge pull request #1481 from rbehrends/fix-stackscan2Andreas Rumpf2014-08-141-7/+15
|\ | | | | Fix stack bottom initialization for non-main modules.
| * Fix stack bottom initialization for non-main modules.Reimer Behrends2014-08-141-7/+15
| | | | | | | | | | | | | | Because PreMain() was now called before the new stack bottom initialization, it still relied on the old version of initStackBottom(), which may not handle the top few words of the stack correctly. This patch also sets the stack bottom in PreMain() using the new approach.
* | Merge branch 'devel' of https://github.com/Araq/Nimrod into develAraq2014-08-141-1/+1
|\|
| * Fixed stack bottom initialization for DLLs.Reimer Behrends2014-08-141-1/+1
| |
* | Merge branch 'devel' of https://github.com/Araq/Nimrod into develAraq2014-08-141-8/+17
|\|
| * Merge pull request #1400 from rbehrends/fix-stackscanAndreas Rumpf2014-08-131-8/+17
| |\ | | | | | | More robust implementation for finding the beginning of the stack.
| | * More robust implementation for finding the beginning of the stack.Reimer Behrends2014-07-231-8/+17
| | | | | | | | | | | | | | | | | | This patch inserts an extra stack frame above the function that calls the actual Nimrod code and ensures that a reference to this frame is stored as the stack bottom.
* | | fixes #1434Araq2014-08-141-2/+2
|/ /
* / progress on deepCopyAraq2014-08-011-1/+1
|/
* Fix generation of package-dependent init names.Reimer Behrends2014-06-251-0/+1
| | | | | | | | | | | The code incorrectly used relative instead of absolute paths to see if *.babel files could be found, which could result in them not being located properly. Also added an underscore between the package and the module name for package_moduleInit() and package_moduleDatInit() so that there won't be spurious conflicts, e.g. for package A and module BC vs. package AB and module C.
* Merge pull request #1281 from Araq/new_spawnAndreas Rumpf2014-06-161-1/+2
|\ | | | | New spawn
| * Merge branch 'new_spawn' of https://github.com/Araq/Nimrod into new_spawnAraq2014-06-011-1/+2
| |\
| | * progress for the 'parallel' statementAraq2014-05-141-1/+2
| | |
* | | optimized method dispatchersAraq2014-06-121-0/+1
|/ /
* / Fix more 'undeclared identifier' errors.EXetoC2014-05-141-1/+2
|/
* fixes DLL generationAraq2014-04-211-1/+1
|
* first version of 'spawn'Araq2014-04-161-1/+1
|
* split the inline and closure iterators into different symbol kinds for ↵Zahary Karadjov2014-03-061-1/+1
| | | | easier discrimination between them
* iterators now return tyIter(T);Zahary Karadjov2014-03-051-1/+1
| | | | | | | | tyIter(T) represents an "iteration yielding values of type T" I'm planning to use that in the context of the `is` operator supporting predicates such as `C.items is iterator` and also in the upcoming support for higher-order inline iterators.
* the compiler is now aware of packagesAraq2014-03-021-1/+3
|
* make C backend more robust against compiler bugsAraq2014-02-271-0/+2
|
* some fixes for static params usage in macrosZahary Karadjov2014-02-251-8/+8
|
* nest PreMain inside NimMain for easier consumption of static libraries ↵Zahary Karadjov2014-01-231-57/+67
| | | | | | developed in Nimrod fixes many uses of $N instead of $n for new lines that don't affect #line directives
* 'nil' as a statement is deprecated, use an empty 'discard' insteadAraq2014-01-191-2/+2
|
* it's the year 2014Araq2014-01-191-4/+4
|
* Introduce a PreMain proc in the C codegenZahary Karadjov2013-12-301-38/+60
| | | | | | | | The rationale here is that it has become too hard to step into a program when #line directives are enabled. You have to skip over many lines of init code that doesn't have corresponding lines in the nimrod program. Now, you can just step-out of PreMain and go straight to the useful code in NimMain.
* Merge branch 'upstream' into develZahary Karadjov2013-12-291-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: compiler/ccgutils.nim compiler/msgs.nim compiler/sem.nim compiler/semexprs.nim compiler/seminst.nim compiler/semmagic.nim compiler/semstmts.nim compiler/semtypes.nim compiler/semtypinst.nim compiler/sigmatch.nim compiler/types.nim compiler/vmgen.nim lib/core/macros.nim lib/system.nim tests/reject/tenummix.nim web/news.txt
| * static params: expr[T] is now static[T]Zahary Karadjov2013-12-191-2/+2
| | | | | | | | | | | | | | This introduces tyStatic and successfully bootstraps and handles few simple test cases. Static params within macros are no longer treated as PNimrodNodes - they are now equivalent to constants of the designated type.
* | case consistency: cs:partial bootstraps on windowsAraq2013-12-291-22/+22
| |
* | case consistency: next stepsAraq2013-12-291-7/+7
| |
* | case consistency part 4Araq2013-12-271-34/+34
| |
* | case consistency part 1Araq2013-12-271-4/+4
| |
* | no stack tracing for the system module; fixes stack bottom detectionAraq2013-12-201-5/+13
| |
* | implemented 'injectStmt'; more debug supportAraq2013-12-161-0/+3
|/
* fix computed dynlib names; fixes #718Zahary Karadjov2013-12-091-1/+1
|
* don't use memset for temps unless necessaryAraq2013-12-031-7/+10
|
* fixes a regression where memset was used without including <string.h>Araq2013-12-031-0/+8
|
* 'noStackFrame' implies 'naked' in the generated C codeAraq2013-10-061-3/+9
|
* the compiler can now deal with multiple modules of the same nameAraq2013-09-261-6/+9
|
* support for multiple modules of the same name; niminst supports 'platforms'; ↵Araq2013-09-241-1/+1
| | | | minor bugfixes
* fixes #575Araq2013-09-101-7/+1
|
* hacky fix for generic constraints matchingZahary Karadjov2013-08-191-2/+2
|
* work-in-progress for compiling generics in their owner moduleZahary Karadjov2013-08-191-1/+11
|
* Revert "Revert "bugfix: emulated thread vars used in combination with the ↵Zahary Karadjov2013-08-191-0/+3
| | | | | | mark & sweep GC"" This reverts commit 75c586bbe1cc649b36fc00362ab40ebb1d163d9f.
* implements the 'codegenDecl' pragmaAraq2013-06-271-11/+20
|
* fixes #466Araq2013-06-061-1/+1
|
* better error message for subtle nil errorsAraq2013-05-311-0/+2
|
* Revert "bugfix: emulated thread vars used in combination with the mark & ↵Araq2013-05-271-3/+0
| | | | | | sweep GC" This reverts commit 420789c2782be7b969ad02448841d90bd0d17a1f.