diff options
Diffstat (limited to 'string/aarch64/strncmp-mte.S')
-rw-r--r-- | string/aarch64/strncmp-mte.S | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/string/aarch64/strncmp-mte.S b/string/aarch64/strncmp-mte.S index b7e3914..46765d6 100644 --- a/string/aarch64/strncmp-mte.S +++ b/string/aarch64/strncmp-mte.S @@ -167,10 +167,10 @@ L(mutual_align): neg tmp3, count, lsl #3 /* 64 - bits(bytes beyond align). */ ldr data2, [src2], #8 mov tmp2, #~0 - and count, count, #0x3f LS_FW tmp2, tmp2, tmp3 /* Shift (count & 63). */ - /* Adjust the limit. Only low 3 bits used, so overflow irrelevant. */ - add limit, limit, count + /* Adjust the limit and ensure it doesn't overflow. */ + adds limit, limit, count + csinv limit, limit, xzr, lo orr data1, data1, tmp2 orr data2, data2, tmp2 b L(start_realigned) |