master: Copy the changes from utf8-strlen to utf8-to-character-string
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 3cc8aa4c51d78423beb596fdc20b9a104e544a31 (commit)
from ade839f1e4a48fdfb476ff52cdde8507c9b839a1 (commit)
- Log -----------------------------------------------------------------
commit 3cc8aa4c51d78423beb596fdc20b9a104e544a31
Author: Stas Boukarev <[email protected]>
Date: Tue Aug 11 23:40:44 2026 +0300
Copy the changes from utf8-strlen to utf8-to-character-string
---
src/code/arm64-simd.lisp | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/src/code/arm64-simd.lisp b/src/code/arm64-simd.lisp
index 89643980a..969f7b0ae 100644
--- a/src/code/arm64-simd.lisp
+++ b/src/code/arm64-simd.lisp
@@ -661,6 +661,7 @@
(inst and temp3 temp1 nibble-mask :16b)
(inst ushr temp4 bytes 4 :16b)
+ (inst tbl temp1 (list tbl4) temp4 :16b)
(inst tbl temp2 (list tbl1) temp2 :16b)
(inst tbl temp3 (list tbl2) temp3 :16b)
(inst tbl temp4 (list tbl3) temp4 :16b)
@@ -668,19 +669,15 @@
(inst and temp2 temp2 temp3 :16b)
(inst and s1 temp2 temp4 :16b)
- (inst ushr temp1 bytes 4 :16b)
- (inst tbl temp1 (list tbl4) temp1 :16b)
-
+ ;; Check that the leading bytes are followed by
+ ;; the correct amount of continuations
(inst ext temp2 prev-len temp1 15 :16b)
(inst ext temp3 prev-len temp1 14 :16b)
(inst ext temp4 prev-len temp1 13 :16b)
(inst ushr temp2 temp2 1 :16b)
- (inst ushr temp3 temp3 2 :16b)
- (inst ushr temp4 temp4 3 :16b)
-
- (inst orr temp2 temp2 temp3 :16b)
- (inst orr temp2 temp2 temp4 :16b)
+ (inst usra temp2 temp3 2 :16b)
+ (inst usra temp2 temp4 3 :16b)
(inst cmgt temp3 c-c0 bytes :16b) ;; continuations
@@ -2023,6 +2020,8 @@
(inst and tmp2 tmp2 tmp4 :16b)
(inst orr errors errors tmp2 :16b)
+ ;; Check that the leading bytes are followed by the
+ ;; correct amount of continuations
(inst ext tmp2 prev-len tmp1 15 :16b)
(inst ext tmp3 prev-len tmp1 14 :16b)
(inst ext tmp4 prev-len tmp1 13 :16b)
-----------------------------------------------------------------------
hooks/post-receive
--
SBCL