[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/beardbolt 9c56c62993 247/323: Update texi docs
From: |
ELPA Syncer |
Subject: |
[elpa] externals/beardbolt 9c56c62993 247/323: Update texi docs |
Date: |
Thu, 9 Mar 2023 10:58:35 -0500 (EST) |
branch: externals/beardbolt
commit 9c56c62993b9644a3c8bf6fc0a3a6599c0956707
Author: Jay Kamat <jaygkamat@gmail.com>
Commit: Jay Kamat <jaygkamat@gmail.com>
Update texi docs
---
doc/rmsbolt.texi | 44 +++++++++++++++++++++++++-------------------
1 file changed, 25 insertions(+), 19 deletions(-)
diff --git a/doc/rmsbolt.texi b/doc/rmsbolt.texi
index 5f4788effe..dcbc119dd5 100644
--- a/doc/rmsbolt.texi
+++ b/doc/rmsbolt.texi
@@ -67,10 +67,11 @@ Languages
* Common Lisp::
* Zig::
* Go::
+* Nim::
Integrations
-* C/C++: C/C++ 1.
+* C/C++: C/C++ (1).
C/C++
@@ -110,15 +111,10 @@ This is a quelpa formula for RMSbolt
@node Running
@chapter Running
-Once installed, run @code{rmsbolt} to compile the current buffer.
-This enables @code{rmsbolt-mode} for code region highlighting and
-automatic recompilation on buffer changes.
-
-@code{rmsbolt-mode} also adds the key binding @code{C-c C-c} to run a
compilation.
-
-Run @code{rmsbolt-starter} to generate an example source file for one of the
supported languages.
-
-Run @code{rmsbolt-compile} to start a compilation without enabling
@code{rmsbolt-mode}.
+Once installed, use the @code{rmsbolt-starter} command to generate starter
files, or
+enable @code{rmsbolt-mode} in a supported language. Then run
@code{rmsbolt-compile} or use
+the default @code{C-c C-c} binding to pop open a disassembly buffer. After the
first
+run, the buffer should automatically update.
@node Configuring
@chapter Configuring
@@ -221,6 +217,7 @@ This section covers languages-specific quirks and features.
* Common Lisp::
* Zig::
* Go::
+* Nim::
@end menu
@node C/C++
@@ -315,15 +312,14 @@ supported at the moment, with @code{sbcl} giving much
better results.
Assembly is generated through the @code{zig} compiler. Due to large binary
sizes,
disassembly is discouraged.
-In some cases, Zig embeds a panic handler which inflates the size of binaries.
-In order to reduce this to a manageable level, you can add the following
snippet to
-your file:
+Zig embeds a panic handler which inflates the size of binaries. In order to
+reduce this to a manageable level, you can add the following snippet to your
+file:
@example
-pub fn panic(msg: []const u8, error_return_trace: ?*std.builtin.StackTrace)
noreturn @{
- _ = msg;
- _ = error_return_trace;
- while (true) @{@}
+pub fn panic(msg: []const u8, error_return_trace:
?*@@import("builtin").StackTrace) noreturn @{
+ while (true) @{
+ @}
@}
@end example
@@ -332,6 +328,16 @@ pub fn panic(msg: []const u8, error_return_trace:
?*std.builtin.StackTrace) nore
Uses Go's objdump tool to produce viewing-only bytecode. Go must be on the
path.
+@node Nim
+@section Nim
+
+Builds into object files into a temporary @code{nim-cache} directory generated
by
+rmsbolt, which will then be copied and dissassembled.
+C++ backend is also possible to either with @code{nim cpp} or @code{nim c
+--passC:-std=gnu++14} and uses @code{c++filt} demangler.
+
+Use the @code{@{.exportc.@}} pragma for at least the main procedure that will
be dissassembled.
+
@node Integrations
@chapter Integrations
@@ -346,10 +352,10 @@ Most integrations only take effect when
@code{rmsbolt-command} and
attempt at using the integration system.
@menu
-* C/C++: C/C++ 1.
+* C/C++: C/C++ (1).
@end menu
-@node C/C++ 1
+@node C/C++ (1)
@section C/C++
C/C++ will look for a @code{compile_commands.json} file in any directory
higher than
- [elpa] externals/beardbolt 4f6ffdd254 226/323: Rename rmsbolt-move-overlays -> rmsbolt-update-overlays, (continued)
- [elpa] externals/beardbolt 4f6ffdd254 226/323: Rename rmsbolt-move-overlays -> rmsbolt-update-overlays, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 464b524e49 221/323: Remove redundant `and`, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 51ff24b3b1 217/323: Fix native-comp docstring warnings, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 0bc89903f1 231/323: on-kill-buffer: Fix error on missing output-buffer, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt d09d72f463 215/323: Add after-parse-hook, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt af37266681 227/323: Rename rmsbolt--cleanup-overlays -> rmsbolt--remove-overlays, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt f3fe3d24db 230/323: Don't use a timer for updating overlays, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 6d0d799d44 233/323: Fix docstring warnings, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt b4f31813dc 240/323: Auto stop an existing compilation, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 50cd4c6d0c 234/323: Use setq for `rmsbolt-dir`, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 9c56c62993 247/323: Update texi docs,
ELPA Syncer <=
- [elpa] externals/beardbolt 3baf531b55 238/323: Refactor: Move let binding closer to point of usage, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 24ac775643 246/323: Support Nim 1.6.6, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt e634757395 235/323: Remove unneeded lambda, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 3514e6f288 237/323: rmsbolt-compile: Only ask to save the current buffer, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt ea22302660 258/323: Delete beardbolt-split.el, doesn't justify separate file, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 7619539a86 243/323: starters/elisp: Fix compiler warning, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt d37371b088 249/323: Fix byte-compilation warnings, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 1873e605ab 256/323: Remove unused test/test-helper.el, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt ce91938102 261/323: Simplify management of bb--temp-dir, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 264b614805 264/323: * beardbolt.el (bb-compile): Better handling of hack-local-variables., ELPA Syncer, 2023/03/09