From 8d19b099595561d42bf1206c5488cfeaa08ebadb Mon Sep 17 00:00:00 2001 From: EXetoC <exetoc@gmail.com> Date: Sun, 4 May 2014 16:07:37 +0200 Subject: noStackFrame -> asmNoStackFrame --- doc/nimrodc.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/nimrodc.txt') diff --git a/doc/nimrodc.txt b/doc/nimrodc.txt index 52e0a6eaf..bde950982 100644 --- a/doc/nimrodc.txt +++ b/doc/nimrodc.txt @@ -360,7 +360,7 @@ Example: static int cvariable = 420; """.} - proc embedsC() {.noStackFrame.} = + proc embedsC() {.asmNoStackFrame.} = var nimrodVar = 89 # use backticks to access Nimrod symbols within an emit section: {.emit: """fprintf(stdout, "%d\n", cvariable + (int)`nimrodVar`);""".} -- cgit 1.4.1-2-gfad0 From 0a0b74bc24f08c0c14712b2e445dfda11787f202 Mon Sep 17 00:00:00 2001 From: EXetoC <exetoc@gmail.com> Date: Sun, 4 May 2014 22:48:53 +0200 Subject: asmNoStackFrame -> stackTrace:off --- doc/manual.txt | 4 +++- doc/nimrodc.txt | 2 ++ lib/pure/osproc.nim | 4 ++-- 3 files changed, 7 insertions(+), 3 deletions(-) (limited to 'doc/nimrodc.txt') diff --git a/doc/manual.txt b/doc/manual.txt index 1af2a3117..b23ef4c0b 100644 --- a/doc/manual.txt +++ b/doc/manual.txt @@ -2335,7 +2335,8 @@ Nimrod identifiers shall be enclosed in a special character which can be specified in the statement's pragmas. The default special character is ``'`'``: .. code-block:: nimrod - proc addInt(a, b: int): int {.asmNoStackFrame.} = + {.push stackTrace:off.} + proc addInt(a, b: int): int = # a in eax, and b in edx asm """ mov eax, `a` @@ -2344,6 +2345,7 @@ specified in the statement's pragmas. The default special character is ``'`'``: call `raiseOverflow` theEnd: """ + {.pop.} If the GNU assembler is used, quotes and newlines are inserted automatically: diff --git a/doc/nimrodc.txt b/doc/nimrodc.txt index bde950982..b7b4c46e9 100644 --- a/doc/nimrodc.txt +++ b/doc/nimrodc.txt @@ -360,10 +360,12 @@ Example: static int cvariable = 420; """.} + {.push stackTrace:off.} proc embedsC() {.asmNoStackFrame.} = var nimrodVar = 89 # use backticks to access Nimrod symbols within an emit section: {.emit: """fprintf(stdout, "%d\n", cvariable + (int)`nimrodVar`);""".} + {.pop.} embedsC() diff --git a/lib/pure/osproc.nim b/lib/pure/osproc.nim index bab26bb45..c6281675e 100644 --- a/lib/pure/osproc.nim +++ b/lib/pure/osproc.nim @@ -800,8 +800,8 @@ elif not defined(useNimRtl): proc startProcessAfterFork(data: ptr TStartProcessData) = # Warning: no GC here! - # Or anythink that touches global structures - all called nimrod procs - # must be marked with asmNoStackFrame. Inspect C code after making changes. + # Or anything that touches global structures - all called nimrod procs + # must be marked with stackTrace:off. Inspect C code after making changes. if not data.optionPoParentStreams: discard close(data.pStdin[writeIdx]) if dup2(data.pStdin[readIdx], readIdx) < 0: -- cgit 1.4.1-2-gfad0 From f8b5133750bbfb80cd5949fdeb479e11b8bfc774 Mon Sep 17 00:00:00 2001 From: EXetoC <exetoc@gmail.com> Date: Sun, 4 May 2014 22:49:58 +0200 Subject: Typo. --- doc/nimrodc.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/nimrodc.txt') diff --git a/doc/nimrodc.txt b/doc/nimrodc.txt index b7b4c46e9..a910291bd 100644 --- a/doc/nimrodc.txt +++ b/doc/nimrodc.txt @@ -361,7 +361,7 @@ Example: """.} {.push stackTrace:off.} - proc embedsC() {.asmNoStackFrame.} = + proc embedsC() = var nimrodVar = 89 # use backticks to access Nimrod symbols within an emit section: {.emit: """fprintf(stdout, "%d\n", cvariable + (int)`nimrodVar`);""".} -- cgit 1.4.1-2-gfad0 From 19c73a5d0219f93858c188e15bdc4714941bc36e Mon Sep 17 00:00:00 2001 From: EXetoC <exetoc@gmail.com> Date: Sun, 4 May 2014 22:50:35 +0200 Subject: Forgot to remove that. --- doc/nimrodc.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/nimrodc.txt') diff --git a/doc/nimrodc.txt b/doc/nimrodc.txt index a910291bd..f079702ab 100644 --- a/doc/nimrodc.txt +++ b/doc/nimrodc.txt @@ -361,7 +361,7 @@ Example: """.} {.push stackTrace:off.} - proc embedsC() = + proc embedsC() = var nimrodVar = 89 # use backticks to access Nimrod symbols within an emit section: {.emit: """fprintf(stdout, "%d\n", cvariable + (int)`nimrodVar`);""".} -- cgit 1.4.1-2-gfad0