Andreas Rumpf
|
d8746398c4
|
allow macros to produce nnkGotoState and nkState
|
2017-10-09 21:12:40 +02:00 |
|
Andreas Rumpf
|
1a61c4d46d
|
first implementation of the 'func' keyword
|
2017-09-23 23:22:53 +02:00 |
|
Andreas Rumpf
|
405b9c8a85
|
refactoring: TLoc knows the node it originated from; it is planned to use this to produce better C code (move optimizations)
|
2017-09-21 14:38:45 +02:00 |
|
Andreas Rumpf
|
a04c7d8b38
|
introduce OnHeapNew and rename TLoc.s to TLoc.storage
|
2017-09-21 11:38:04 +02:00 |
|
Andreas Rumpf
|
ad608838bf
|
closures have an object type field so that we can perform correct deepCopy() for the BoehmGC target
|
2017-07-22 11:10:52 +02:00 |
|
Jacek Sieka
|
ba4cc4bf35
|
a few tiny cleanups (#5712)
exposes emitLazily (for nlvm) and simplifies some conditionals
|
2017-05-29 09:42:26 +02:00 |
|
Ruslan Mustakov
|
29507d2491
|
Consider optNoCppExceptions in blockLeaveActions (#5801)
|
2017-05-11 22:30:48 +02:00 |
|
Araq
|
46b672a6c4
|
minor codegen bugfix: don't use names for closures that are also mangled Nim names
|
2017-02-26 17:41:00 +01:00 |
|
Andreas Rumpf
|
2d546ca0ac
|
fixes #5417
|
2017-02-24 00:32:14 +01:00 |
|
Arne Döring
|
92c2a51bf7
|
removed compiler internal list implementation (#5371)
|
2017-02-22 17:33:12 +01:00 |
|
Araq
|
804b0ff99c
|
fixes #5400
|
2017-02-16 22:50:21 +01:00 |
|
Andreas Rumpf
|
848676cec6
|
name mangling bugfixes; ndi file generation for debugger support
|
2017-02-03 09:49:36 +01:00 |
|
Andreas Rumpf
|
fab69661ad
|
new name mangling rules for easier debugging
|
2017-02-02 16:27:48 +01:00 |
|
Andreas Rumpf
|
d651012688
|
template+emit supports volatileRead and volatileWrite ops
|
2017-01-23 11:22:19 +01:00 |
|
Araq
|
24239c2361
|
Merge branch 'devel' into sighashes
|
2016-12-17 23:04:34 +01:00 |
|
Andreas Rumpf
|
b013430929
|
reworked emit pragma; fixes #4730
|
2016-12-17 14:20:57 +01:00 |
|
Araq
|
ba38b83dd5
|
refactoring: C codegen with fewer global variables
|
2016-12-05 12:14:24 +01:00 |
|
Araq
|
1c20046f28
|
sighashes: make more tests green
|
2016-11-29 10:37:32 +01:00 |
|
Araq
|
3b43cff0f8
|
C codegen: first version of signature hashing for better incremental builds
|
2016-11-08 08:37:11 +01:00 |
|
Andreas Rumpf
|
08a6f3fc67
|
fixes #4721
|
2016-09-07 08:29:45 +02:00 |
|
Andreas Rumpf
|
dfa0699e73
|
C++ backend: use .noInit pragma for non-public default constructors; refs #4687
|
2016-09-04 22:36:29 +02:00 |
|
Andreas Rumpf
|
10f445da89
|
Merge pull request #4592 from arnetheduck/compiler-cleanup
Compiler cleanup
|
2016-08-25 16:50:54 +02:00 |
|
andri lim
|
21120a3e6c
|
fixed #4459 -- VS2010 error C2275
|
2016-08-13 20:26:25 +07:00 |
|
Jacek Sieka
|
3cd4cf4320
|
remove unused stuff
|
2016-08-09 22:54:27 +08:00 |
|
Jacek Sieka
|
7d62f031f6
|
remove sfFakeConst
|
2016-07-30 16:19:53 +08:00 |
|
Andreas Rumpf
|
60b187513e
|
stdlib and compiler don't use .immediate anymore
|
2016-07-29 23:51:01 +02:00 |
|
Andreas Rumpf
|
4b0ba5e3f1
|
C code generation now deterministic; fixes #4364
|
2016-06-22 02:50:50 +02:00 |
|
Ruslan Mustakov
|
a648d06ba8
|
Fixed rethrowing not to generate C++ throw with noCppExceptions switch
|
2016-06-14 13:05:28 +06:00 |
|
Andreas Rumpf
|
d8bce8b83d
|
GC with primitive MS
|
2016-05-16 00:28:00 +02:00 |
|
Andreas Rumpf
|
1ae95310ad
|
fixes #3992
|
2016-05-11 21:34:54 +02:00 |
|
Ruslan Mustakov
|
040d4864a4
|
Fixed try statement generation with --noCppExceptions switch
|
2016-02-29 21:09:19 +06:00 |
|
Andreas Rumpf
|
dfe01bbe69
|
fixes #603
|
2016-01-06 02:29:27 +01:00 |
|
Andreas Rumpf
|
c1627354d1
|
first implementation of the new lambda-lifting pass; barely anything works
|
2015-12-26 00:42:30 +01:00 |
|
Araq
|
6361f6b76d
|
--gc:v2 requires global root tracking
|
2015-12-01 00:53:30 +01:00 |
|
Yuriy Glukhov
|
c42b05adb4
|
Fixed --debugger:on option. Removed c_line from termios.
|
2015-08-12 12:04:26 +03:00 |
|
Araq
|
862ee8d1d3
|
fixes #2963
|
2015-07-22 01:21:42 +02:00 |
|
Araq
|
ace9299a32
|
added /*INCLUDESECTION*/ section for .emit pragma
|
2015-06-29 02:48:30 +02:00 |
|
Araq
|
c6398d408d
|
fixes #1888
|
2015-04-27 23:11:59 +02:00 |
|
Araq
|
ecc0090939
|
fixes #2551; fixes #2212; breaks bootstrapping in debug mode; bootstrap with -d:release
|
2015-04-25 23:16:57 +02:00 |
|
Araq
|
c1730e1ead
|
fixes #2335
|
2015-04-24 12:35:13 +02:00 |
|
Araq
|
751232dc7c
|
implements .goto support for variables
|
2015-04-19 02:42:40 +02:00 |
|
def
|
39049e151f
|
Get rid of deprecation warnings
|
2015-04-07 15:47:18 +02:00 |
|
Jacek Sieka
|
c40249cd43
|
compiler_ropes: ropeToStr -> $
|
2015-04-01 22:32:15 +08:00 |
|
Araq
|
5641be51c1
|
codegen doesn't produce line tracing commands anymore; fixes #1344
|
2015-03-21 20:38:27 +01:00 |
|
Araq
|
910ef7b2d1
|
'constructor' pragma for C++ support
|
2015-03-18 11:42:37 +01:00 |
|
Araq
|
1fc590b6ea
|
don't generate memset calls for C++ objects
|
2015-03-18 11:42:36 +01:00 |
|
Araq
|
f4a0400de2
|
fixes #2199, fixes #2197
|
2015-02-24 19:19:08 +01:00 |
|
Araq
|
df2fdaf3c5
|
fixes #2121
|
2015-02-14 14:45:49 +01:00 |
|
Araq
|
ecd0dea091
|
tables work in 'const' sections; echo supports 'nil' strings; minor cleanups
|
2015-02-09 00:08:55 +01:00 |
|
Araq
|
e84834db79
|
lots of C++ codegen improvements
|
2015-02-07 10:48:07 +01:00 |
|