< prev index next >

src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp

Print this page

        

@@ -4355,11 +4355,11 @@
   if (icnt1 == -1) {
     sub(result_tmp, cnt2, cnt1);
     cmp(cnt1, 8);             // Use Linear Scan if cnt1 < 8 || cnt1 >= 256
     br(LT, LINEARSEARCH);
     dup(v0, T16B, cnt1); // done in separate FPU pipeline. Almost no penalty
-    cmp(cnt1, 256);
+    subs(zr, cnt1, 256);
     lsr(tmp1, cnt2, 2);
     ccmp(cnt1, tmp1, 0b0000, LT); // Source must be 4 * pattern for BM
     br(GE, LINEARSTUB);
   }
 

@@ -4461,11 +4461,11 @@
       sub(ch2, cnt1, 1);
       mov(tmp3, str1);
     BIND(BCLOOP);
       (this->*str1_load_1chr)(ch1, Address(post(tmp3, str1_chr_size)));
       if (!str1_isL) {
-        cmp(ch1, ASIZE);
+        subs(zr, ch1, ASIZE);
         br(HS, BCSKIP);
       }
       strb(ch2, Address(sp, ch1));
     BIND(BCSKIP);
       subs(ch2, ch2, 1);

@@ -4525,11 +4525,11 @@
         if (str1_isL != str2_isL) {
           mov(result_tmp, cnt1);
         } else {
           mov(result_tmp, 1);
         }
-        cmp(skipch, ASIZE);
+        subs(zr, skipch, ASIZE);
         br(HS, BMADV);
       }
       ldrb(result_tmp, Address(sp, skipch)); // load skip distance
     BIND(BMADV);
       sub(cnt1tmp, cnt1, 1);
< prev index next >