master: arm64/utf8-strlen: remove redundant instructions
stassats via Sbcl-commits <[email protected]>
| Newsgroups | gmane.lisp.steel-bank.cvs |
|---|---|
| Message-ID | <[email protected]> |
The branch "master" has been updated in SBCL:
via ade839f1e4a48fdfb476ff52cdde8507c9b839a1 (commit)
from 28d0737865b59329bfcaab9f8ca92fda75bd8ceb (commit)
- Log -----------------------------------------------------------------
commit ade839f1e4a48fdfb476ff52cdde8507c9b839a1
Author: Stas Boukarev <[email protected]>
Date: Tue Aug 11 21:42:46 2026 +0300
arm64/utf8-strlen: remove redundant instructions
---
src/code/arm64-simd.lisp | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/src/code/arm64-simd.lisp b/src/code/arm64-simd.lisp
index 00759950b..89643980a 100644
--- a/src/code/arm64-simd.lisp
+++ b/src/code/arm64-simd.lisp
@@ -2014,6 +2014,7 @@
(inst and tmp3 tmp1 nibble-mask :16b)
(inst ushr tmp4 current 4 :16b)
+ (inst tbl tmp1 (list tbl4) tmp4 :16b)
(inst tbl tmp2 (list tbl1) tmp2 :16b)
(inst tbl tmp3 (list tbl2) tmp3 :16b)
(inst tbl tmp4 (list tbl3) tmp4 :16b)
@@ -2022,19 +2023,13 @@
(inst and tmp2 tmp2 tmp4 :16b)
(inst orr errors errors tmp2 :16b)
- (inst ushr tmp1 current 4 :16b)
- (inst tbl tmp1 (list tbl4) tmp1 :16b)
-
(inst ext tmp2 prev-len tmp1 15 :16b)
(inst ext tmp3 prev-len tmp1 14 :16b)
(inst ext tmp4 prev-len tmp1 13 :16b)
(inst ushr tmp2 tmp2 1 :16b)
- (inst ushr tmp3 tmp3 2 :16b)
- (inst ushr tmp4 tmp4 3 :16b)
-
- (inst orr tmp2 tmp2 tmp3 :16b)
- (inst orr tmp2 tmp2 tmp4 :16b)
+ (inst usra tmp2 tmp3 2 :16b)
+ (inst usra tmp2 tmp4 3 :16b)
(inst cmtst tmp4 tmp2 tmp2 :16b)
-----------------------------------------------------------------------
hooks/post-receive
--
SBCL