--- /dev/null
+int strncmp(const uint8_t *b1, const uint8_t *b2, size_t len)
+{
+ int diff=0;
+
+
+ for (;len && (*b1) && (*b2) && !(diff); --len) {
+ diff = b1[i] - b2[i];
+ }
+
+ return diff;
+}
+
+
+strncmp.s:
+
+ldis r5, 0 ;
+
+:strfor
+ldis r0, 0 ;
+ldb r0, r1 ; r0 = (*b1)
+ldb r5, r2 ; r5 = (*b2)
+addi r3, 0 ; len == 0
+addinq r0, 0 ; (*b1) == 0
+addinq r5, 0 ; (*b2) == 0
+
+ldiseq r0,0 ;
+reteq ;
+
+sub r0, r0, r5 ; diff = (*b1)-(*b2)
+addi r0,0 ; diff!=0
+retnq ;
+addi r1,1 ; ++b1
+addi r2,1 ; ++b2
+subi r3,1 ; ++len
+branch strfor ;