summary refs log tree commit diff stats
path: root/compiler/cgen.nim
Commit message (Collapse)AuthorAgeFilesLines
* Fixes #9154 (#9193)manterolat2018-10-101-0/+3
|
* Make the registered passes local to the ModuleGraph (#9259)LemonBoy2018-10-091-1/+1
| | | Closes #9068
* fixes #9222 (#9224)cooldome2018-10-091-1/+6
|
* Merge pull request #8983 from cooldome/codegen_crashAndreas Rumpf2018-09-181-1/+1
|\ | | | | Fixes 8979
| * Fixes 8979Andrii Riabushenko2018-09-161-1/+1
| |
* | Removed optUseNimNamespace, removed useless nil checkGiovanni2018-09-161-7/+7
| |
* | improve the compiler option "cppCompileToNamespace", a custom namespace can ↵Giovanni2018-09-151-7/+12
| | | | | | | | now be set
* | compiler refactoring; use typesafe path handing; docgen: render symbols ↵Andreas Rumpf2018-09-071-17/+18
|/ | | | between modules
* optimize away genericReset for result assignment; refs #8745Araq2018-08-271-3/+112
|
* fixes merge conflictAndreas Rumpf2018-08-191-14/+20
|\
| * Fixes 8535 (#8591)LemonBoy2018-08-171-14/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Goodbye postInitProc * Give preInitProc its own scope Avoid any conflict between the variables introduced by preInitProc and initProc since both are codegen'd in the same function body. * Fix codegen for global var init in emulated TLS Fixes #8535 * Add test for #8535 * Keep a bogus stack frame around * Remove more dead code
* | --gc:destructors: next steps; WIPAndreas Rumpf2018-07-211-1/+3
| |
* | fix merge conflictAndreas Rumpf2018-07-181-10/+4
|\|
| * Fix #8345 (#8350)Aaron Levine2018-07-181-0/+1
| |
| * Don't depend on string.h in codegen (#8299)Yuriy Glukhov2018-07-131-10/+3
| |
* | WIP: strings/seqs based on destructorsAndreas Rumpf2018-07-171-1/+4
| |
* | more progress on destructor based stringsAndreas Rumpf2018-07-131-5/+11
|/
* Generate dynlib strings as a single rope (#8247)LemonBoy2018-07-081-1/+3
| | | | | | In order not to trip the optimization in genInfixCall we have to do so. The same trick is also used in setExternName. Fixes #8241
* codgen refactoring: prepare for alternative string/seq implementationsAndreas Rumpf2018-06-291-3/+6
|
* Don't consider concept types as non-complex during codegen (#8119)LemonBoy2018-06-271-1/+1
| | | Fixes #7125
* Fixes #6803Yuriy Glukhov2018-06-111-13/+8
|
* fixes merge conflictAndreas Rumpf2018-06-111-2/+8
|\
| * Native access to Genode environmentEmery Hemingway2018-06-071-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a 'GenodeEnv' type and a 'componentConstructHook' to the system module. The 'componentConstructHook' allows for detection of POSIX style programs that exit implicitly or native Genode components that initialize to serve RPC requests and OS signals. This hook takes a 'GenodeEnv' argument so that the environment interface is passed cleanly to application code after globals are initialized. This is an typed pointer to a C++ object, procedures for accessing the environment will be available from a Nimble library and not included in the standard library. The standard library has an internal pointer to the environment object but this is not for external use, the undocumented global environment pointer has been removed.
* | fixed merge conflictAndreas Rumpf2018-06-041-1/+1
|\|
| * Support multi byte characters in module names (#7916)Oscar Nihlgård2018-05-311-1/+1
| |
* | incremental compilation: implemented basic replay logicAndreas Rumpf2018-06-021-7/+8
| |
* | baby steps for incremental compilationAndreas Rumpf2018-05-301-10/+7
| |
* | remove more global variables in the Nim compilerAndreas Rumpf2018-05-271-4/+4
| |
* | Merge branch 'devel' into araq-big-refactoringAndreas Rumpf2018-05-211-4/+4
|\|
| * Allow better optimisations by removing NOINLINE from module init procsYuriy Glukhov2018-05-161-4/+4
| |
* | platform.nim doesn't use globals anymore; prepare msgs.nim for not using globalsAndreas Rumpf2018-05-181-43/+44
| |
* | compiler/ropes.nim has no global error handler anymoreAndreas Rumpf2018-05-171-6/+12
| |
* | preparations of making compiler/msgs.nim free of global variablesAndreas Rumpf2018-05-171-10/+10
| |
* | extccomp: no globals anymoreAraq2018-05-161-6/+6
|/
* options.nim: no global variables anymoreAndreas Rumpf2018-05-131-51/+51
|
* move more globals into the config objectAndreas Rumpf2018-05-131-3/+3
|
* C code generator compiles againAndreas Rumpf2018-05-121-53/+57
|
* sem pass compiles againAndreas Rumpf2018-05-121-6/+4
|
* fixes #7743Andreas Rumpf2018-05-061-1/+1
|
* Disable setTerminate when noCppExceptions is defined (#7751)Emery Hemingway2018-05-041-1/+1
|
* remove dead code elimination option (#7669)Jacek Sieka2018-04-231-4/+0
|
* refactoring: make FileIndex a distinct type; make line information an ↵Andreas Rumpf2018-04-211-6/+6
| | | | uint16; fixes #7654
* Nim namespace for cpp (#7453)AdrianV2018-04-151-0/+15
| | | | | - new option --usenamespace to generate nim cpp code in its own namespace Nim - minor changes for compatibility with the new Embarcadero = Borland C++-Builder (bcc)
* Cleanups 20180401 (#7458)Jacek Sieka2018-04-121-4/+1
|
* C codegen: preparations for different seq and string implementationsAndreas Rumpf2018-04-031-5/+12
|
* make 'memset' calls more robust; refs #7341Andreas Rumpf2018-03-161-1/+1
|
* fixes #7332 (#7341)andri lim2018-03-161-1/+3
|
* genTryCpp to catch by Nim type, ready for first review (#7196)cooldome2018-02-121-0/+5
| | | | | | | | | | | | | | | | * Rewrite genTryCpp * correction * Implement polymorphic raise in cpp * revert backticks in emit * Cleanp a comment * revert test changes * better handling of <new> header
* fixes #6960Andreas Rumpf2018-02-111-0/+1
|
* move new sha1 module into the new 'std' namespaceAndreas Rumpf2018-02-061-1/+1
|