[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/beardbolt 60fa7a3c05 280/323: Force asm output to be of
From: |
ELPA Syncer |
Subject: |
[elpa] externals/beardbolt 60fa7a3c05 280/323: Force asm output to be of a certain format |
Date: |
Thu, 9 Mar 2023 10:58:41 -0500 (EST) |
branch: externals/beardbolt
commit 60fa7a3c057c0be63cb78e0f5e926990f355737a
Author: João Távora <joaotavora@gmail.com>
Commit: João Távora <joaotavora@gmail.com>
Force asm output to be of a certain format
---
beardbolt.el | 36 ++++++++++++++++++++++--------------
1 file changed, 22 insertions(+), 14 deletions(-)
diff --git a/beardbolt.el b/beardbolt.el
index 29ecbb7868..54e2a1c4a4 100644
--- a/beardbolt.el
+++ b/beardbolt.el
@@ -361,6 +361,14 @@ Returns a list (SPEC ...) where SPEC looks like (WHAT FN
CMD)."
(cl-macrolet ((match (&rest res)
`(cl-loop for re in ,(cons 'list res)
thereis (re-search-forward re ,',lep t)))
+ (match-label (re)
+ `(and (not (eq (char-after) ?\t))
+ (re-search-forward ,re ,',lep t)))
+ (match-nolabel (&rest res)
+ `(and
+ (eq (char-after) ?\t)
+ (cl-loop for re in ,(cons 'list res)
+ thereis (re-search-forward re ,',lep t))))
(update-lep () `(setq ,',lep (line-end-position))))
(pcase (cond ,@forms)
(:preserve (forward-line 1))
@@ -430,19 +438,19 @@ Returns a list (SPEC ...) where SPEC looks like (WHAT FN
CMD)."
(push ov demangle-ovs)))))
;; first pass
(bb--sweeping
- ((match bb-data-defn) :preserve)
- ((match bb-label-start)
+ ((match-nolabel bb-data-defn) :preserve)
+ ((match-label bb-label-start)
(when (intern-soft (match-string 1) globals)
(setq global-label (match-string 1)))
:preserve)
- ((match bb-source-tag)
+ ((match-nolabel bb-source-tag)
(setq source-linum
(and (equal src-file-name
(gethash
(string-to-number (match-string 1))
source-file-map))
(string-to-number (match-string 2)))))
- ((match bb-has-opcode)
+ ((match-nolabel bb-has-opcode)
(when source-linum
(add-text-properties
(match-beginning 0) (match-end 0)
@@ -456,19 +464,19 @@ Returns a list (SPEC ...) where SPEC looks like (WHAT FN
CMD)."
(schedule-demangling-maybe (match-beginning 0) (match-end 0))
(update-lep)))
:preserve)
- ((and (not preserve-comments) (match bb-comment-only)) :kill)
- ((match bb-defines-global bb-defines-function-or-object)
+ ((and (not preserve-comments) (match-nolabel bb-comment-only)) :kill)
+ ((match-nolabel bb-defines-global bb-defines-function-or-object)
(intern (match-string 1) globals))
- ((and (not preserve-weak-symbols) (match bb-defines-weak))
+ ((and (not preserve-weak-symbols) (match-nolabel bb-defines-weak))
(intern (match-string 1) weaks))
- ((match bb-source-file-hint)
+ ((match-nolabel bb-source-file-hint)
(puthash (string-to-number (match-string 1))
(or (match-string 3) (match-string 2))
source-file-map))
- ((match bb-endblock) (setq global-label nil) :preserve)
- ((match bb-set-directive)
+ ((match-nolabel bb-endblock) (setq global-label nil) :preserve)
+ ((match-nolabel bb-set-directive)
(puthash (match-string 2) (match-string 1) synonyms))
- ((match bb-source-stab)
+ ((match-nolabel bb-source-stab)
(pcase (string-to-number (match-string 1))
;; http://www.math.utah.edu/docs/info/stabs_11.html
(68 (setq source-linum (match-string 2)))
@@ -476,9 +484,9 @@ Returns a list (SPEC ...) where SPEC looks like (WHAT FN
CMD)."
;; second pass
(setq reachable-label nil)
(bb--sweeping
- ((and (match bb-data-defn bb-has-opcode) reachable-label)
+ ((and (match-nolabel bb-data-defn bb-has-opcode) reachable-label)
:preserve)
- ((match bb-label-start)
+ ((match-label bb-label-start)
(cond
((bb--reachable-p (match-string 1) globals label-graph synonyms
(unless preserve-weak-symbols weaks))
@@ -487,7 +495,7 @@ Returns a list (SPEC ...) where SPEC looks like (WHAT FN
CMD)."
:preserve)
(t
(if preserve-labels :preserve :kill))))
- ((match bb-endblock) (setq reachable-label nil)))
+ ((match-nolabel bb-endblock) (setq reachable-label nil)))
(bb--demangle-overlays demangle-ovs))))
(cl-defun bb--rainbowize (src-buffer)
- [elpa] externals/beardbolt b348482d7f 091/323: Switch to imgur for image links, (continued)
- [elpa] externals/beardbolt b348482d7f 091/323: Switch to imgur for image links, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt d187b8b189 125/323: Optimize guide display when many line blocks found, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt de28f7903a 232/323: Merge branch 'fix-kill-buffer-error' into 'master', ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 3fe322e573 242/323: Merge branch 'improve-auto-compilation' into 'master', ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 194e7ea9dc 253/323: Dumb rename rmsbolt->bearbold, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 3870c30bbd 257/323: Move test/*test.el to beardbolt-tests.el, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 98f766bdfc 270/323: Add a README.md, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 28fc329861 262/323: Rework bb-compile a bit, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt f491a6adb2 278/323: Rework to use write-region, use a little less memory, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 2633e20e66 274/323: * beardbolt.el (bb--reachable-p): Rework for small speed gain., ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 60fa7a3c05 280/323: Force asm output to be of a certain format,
ELPA Syncer <=
- [elpa] externals/beardbolt b2dc0eb81d 284/323: Make beardbolt-disassemble work again, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 730ea84796 290/323: bb-compile-delay can be nil, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 2c798336b8 292/323: Tweak README.md, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt c05a0be490 297/323: Add useful beardbolt-preserve-library-functions, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 26c0b918e4 301/323: Tweak README.md again, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt e1e69080b7 303/323: Rename "output buffer" -> "asm buffer", ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt dbafc4a88c 304/323: Minor cleanup, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 68469cfb57 306/323: More misc minor rework to simplify code, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 02a0bfbcdb 313/323: Add `beardbolt-ccj-extra-flags` option, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 6a71a16619 319/323: Simplify rainbow-clearing logic, ELPA Syncer, 2023/03/09