Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | fixes #178 | Araq | 2012-07-28 | 1 | -3/+3 |
| | |||||
* | no range checks for conversion to unsigned (but I may reconsider this) | Araq | 2012-07-25 | 1 | -1/+2 |
| | |||||
* | fixes #172 | Araq | 2012-07-25 | 1 | -1/+1 |
| | |||||
* | small bugfix: code generation for nil closures | Araq | 2012-07-25 | 1 | -17/+28 |
| | |||||
* | DLLs should work again; fixes #169 | Araq | 2012-07-24 | 1 | -0/+2 |
| | |||||
* | got rid of some mAddU64 etc. magics | Araq | 2012-07-20 | 1 | -5/+0 |
| | |||||
* | removed nimdat in favor of per-module dat init procs | Zahary Karadjov | 2012-07-19 | 1 | -6/+1 |
| | |||||
* | equality and hashing for closures | Araq | 2012-07-17 | 1 | -1/+8 |
| | |||||
* | make tests green again | Araq | 2012-07-17 | 1 | -1/+14 |
| | |||||
* | improved unsigned support | Araq | 2012-07-14 | 1 | -33/+35 |
| | |||||
* | fixes cast[int8] bug | Araq | 2012-07-12 | 1 | -6/+0 |
| | |||||
* | changed integer promotion rules; breaks bootstrapping and lots of code | Araq | 2012-07-08 | 1 | -2/+3 |
| | |||||
* | proper indentation in the generated C code | Zahary Karadjov | 2012-06-12 | 1 | -72/+72 |
| | |||||
* | better support for unsigned integers. | Zahary Karadjov | 2012-06-11 | 1 | -6/+6 |
| | |||||
* | fix compilation errors when bootstrapping with C++ | Zahary Karadjov | 2012-06-04 | 1 | -3/+12 |
| | |||||
* | Merge branch 'master' of github.com:Araq/Nimrod into upstream | Zahary Karadjov | 2012-06-02 | 1 | -18/+18 |
|\ | |||||
| * | bugfix: field names of tuples are treated consistently in the C backend | Araq | 2012-05-27 | 1 | -18/+18 |
| | | |||||
* | | Added system.staticExec proc for executing external command at compile-time | Zahary Karadjov | 2012-06-02 | 1 | -0/+2 |
|/ | |||||
* | C variables are created in their enclosing block instead of their enclosing ↵ | Zahary Karadjov | 2012-04-12 | 1 | -19/+19 |
| | | | | function | ||||
* | bugfix #100 again | Araq | 2012-03-28 | 1 | -4/+4 |
| | |||||
* | `do' keyword in the grammar for lambda blocks | Zahary Karadjov | 2012-02-10 | 1 | -1/+3 |
| | |||||
* | further steps for closure support | Araq | 2012-02-06 | 1 | -4/+7 |
| | |||||
* | further steps to closure support | Araq | 2012-02-06 | 1 | -4/+26 |
| | |||||
* | pragma on/off improvements; endb rewritten | Araq | 2012-01-28 | 1 | -2/+2 |
| | |||||
* | year 2012 for most copyright headers | Araq | 2012-01-02 | 1 | -1/+1 |
| | |||||
* | C code gen: generate even better code for the GC | Araq | 2011-12-12 | 1 | -6/+13 |
| | |||||
* | compiler takes advantage of 'new(Obj|New)RC1 | Araq | 2011-12-12 | 1 | -77/+84 |
| | |||||
* | compiler generates volatile temps to keep C compiler from optimizing away ↵ | Araq | 2011-12-12 | 1 | -16/+28 |
| | | | | stack roots | ||||
* | codegen uses alias analysis to generate better code | Araq | 2011-12-10 | 1 | -5/+0 |
| | |||||
* | alias analysis as required for the code gen and the HLO | Araq | 2011-12-08 | 1 | -7/+0 |
| | |||||
* | 'assert' is now implemented without compiler magic | Araq | 2011-12-04 | 1 | -2/+2 |
| | |||||
* | implemented 'let' statement | Araq | 2011-11-29 | 1 | -2/+2 |
| | |||||
* | fixes #31 | Araq | 2011-11-27 | 1 | -9/+3 |
| | |||||
* | C codegen: generate nimKeepAlive calls at strategic places to keep the C ↵ | Araq | 2011-11-24 | 1 | -163/+1 |
| | | | | compiler from optimizing away all stack roots | ||||
* | unused constants are optimized away | Araq | 2011-11-22 | 1 | -1/+1 |
| | |||||
* | bugfix: s[1..n] = @[] produced wrong C code | Araq | 2011-11-14 | 1 | -6/+8 |
| | |||||
* | bugfix: code gen for constant sequences | Araq | 2011-11-02 | 1 | -2/+7 |
| | |||||
* | better code generation for constant aggregates | Araq | 2011-11-02 | 1 | -6/+32 |
| | |||||
* | lazy loading of body ast implemented | Araq | 2011-10-30 | 1 | -1/+1 |
| | |||||
* | compilation cache: various bugfixes; works for the compiler itself | Araq | 2011-10-27 | 1 | -2/+1 |
| | |||||
* | much more efficient rod file generation | Araq | 2011-10-18 | 1 | -11/+11 |
| | |||||
* | code generator supports constant sequences; more consistent compile time ↵ | Araq | 2011-10-07 | 1 | -1/+24 |
| | | | | evaluation | ||||
* | implemented optional pragma for implicit discard | Araq | 2011-09-24 | 1 | -1/+1 |
| | |||||
* | l-values are preserved modulo type distinction | Araq | 2011-09-24 | 1 | -1/+5 |
| | |||||
* | Multiple C lines corresponding to a single nimrod line are joined together | Zahary Karadjov | 2011-09-20 | 1 | -8/+8 |
| | | | | | | | | | | | | | | | | | | | | | | This patch greatly improves the "step over" operation available in debuggers. In practice, there are often 4-8 lines of C code generated for each nimrod line Each such line will be responsible to a single step in the debugger that is a) not expected by the user b) taking the user to an incorrect line in the nimrod code To keep this working, all code generation should use the rope formatting facilities when producing new lines (i.e. $n and $N). New semantics for the format string are introduced: $n means "soft new line" that could be joined/broken when lineDir is enabled. $N means "hard new line" that will always appear as a new line. As an alternative to this approach, I also tested producing code like this: #line "code.nim" 154 foo = bar; \ foo(bar) \ This is better for readability of the final output, but unfortunately it didn't produce the desired result across all compilers/debuggers. | ||||
* | Nimrod can now compile itself with --lineDir enabled | Zahary Karadjov | 2011-09-20 | 1 | -3/+3 |
| | |||||
* | inlining of 'var openarray' iterators now work | Araq | 2011-08-18 | 1 | -1/+1 |
| | |||||
* | bugfix topenarrayrepr works again | Araq | 2011-08-16 | 1 | -1/+2 |
| | |||||
* | finally got rid of nkPassAsOpenArray | Araq | 2011-08-16 | 1 | -43/+35 |
| | |||||
* | added xmltree.innerText; fixes #49 | Araq | 2011-08-15 | 1 | -24/+17 |
| |