[jruby-joni] 187/194: specialize CCLASS_MIX_NOT for singlebyte

Hideki Yamane henrich at moszumanska.debian.org
Thu Feb 1 12:04:40 UTC 2018


This is an automated email from the git hooks/post-receive script.

henrich pushed a commit to branch debian/sid
in repository jruby-joni.

commit d7424d5ba100db9e2f56cff6f6d30ed113ff57e7
Author: Marcin Mielzynski <lopx at gazeta.pl>
Date:   Thu Jan 25 18:53:34 2018 +0100

    specialize CCLASS_MIX_NOT for singlebyte
---
 src/org/joni/ByteCodeMachine.java | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/org/joni/ByteCodeMachine.java b/src/org/joni/ByteCodeMachine.java
index f3cb802..a64c712 100644
--- a/src/org/joni/ByteCodeMachine.java
+++ b/src/org/joni/ByteCodeMachine.java
@@ -359,7 +359,7 @@ class ByteCodeMachine extends StackMachine {
                 case OPCode.CCLASS_MIX:                 opCClassMIXSb();           break;
                 case OPCode.CCLASS_NOT:                 opCClassNotSb();           break;
                 case OPCode.CCLASS_MB_NOT:              opCClassMBNotSb();         break;
-                case OPCode.CCLASS_MIX_NOT:             opCClassMIXNot();          break;
+                case OPCode.CCLASS_MIX_NOT:             opCClassMIXNotSb();        break;
 
                 case OPCode.ANYCHAR:                    opAnyCharSb();               break;
                 case OPCode.ANYCHAR_ML:                 opAnyCharMLSb();             break;
@@ -923,6 +923,15 @@ class ByteCodeMachine extends StackMachine {
         sprev = sbegin; // break;
     }
 
+    private void opCClassMIXNotSb() {
+        if (s >= range || isInBitSet()) {opFail(); return;}
+        ip += BitSet.BITSET_SIZE;
+        s++;
+        int tlen = code[ip++];
+        ip += tlen;
+        sprev = sbegin; // break;
+    }
+
     private void opAnyChar() {
         final int n;
         if (s >= range || s + (n = enc.length(bytes, s, end)) > range || enc.isNewLine(bytes, s, end)) {opFail(); return;}

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jruby-joni.git



More information about the pkg-java-commits mailing list