diff options
author | Ralf Baechle <ralf@linux-mips.org> | 1997-12-06 23:51:34 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 1997-12-06 23:51:34 +0000 |
commit | 230e5ab6a084ed50470f101934782dbf54b0d06b (patch) | |
tree | 5dd821c8d33f450470588e7a543f74bf74306e9e /arch/alpha/lib/strrchr.S | |
parent | c9b1c8a64c6444d189856f1e26bdcb8b4cd0113a (diff) |
Merge with Linux 2.1.67.
Diffstat (limited to 'arch/alpha/lib/strrchr.S')
-rw-r--r-- | arch/alpha/lib/strrchr.S | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/arch/alpha/lib/strrchr.S b/arch/alpha/lib/strrchr.S index dbfedc504..88bca0ee9 100644 --- a/arch/alpha/lib/strrchr.S +++ b/arch/alpha/lib/strrchr.S @@ -21,7 +21,7 @@ strrchr: zapnot a1, 1, a1 # e0 : zero extend our test character mov zero, t6 # .. e1 : t6 is last match aligned addr sll a1, 8, t5 # e0 : replicate our test character - mov zero, t7 # .. e1 : t7 is last match byte compare mask + mov zero, t8 # .. e1 : t8 is last match byte compare mask or t5, a1, a1 # e0 : ldq_u t0, 0(a0) # .. e1 : load first quadword sll a1, 16, t5 # e0 : @@ -43,7 +43,7 @@ strrchr: $loop: ldq t0, 8(v0) # e0 : load next quadword cmovne t3, v0, t6 # .. e1 : save previous comparisons match - cmovne t3, t3, t7 # e0 : + cmovne t3, t3, t8 # e0 : addq v0, 8, v0 # .. e1 : xor t0, a1, t2 # e0 : cmpbge zero, t0, t1 # .. e1 : bits set iff byte == zero @@ -58,22 +58,22 @@ $eos: or t4, t5, t4 # e1 : ... and including the null and t3, t4, t3 # e0 : mask out char matches after null - cmovne t3, t3, t7 # .. e1 : save it, if match found + cmovne t3, t3, t8 # .. e1 : save it, if match found cmovne t3, v0, t6 # e0 : /* Locate the address of the last matched character */ /* Retain the early exit for the ev4 -- the ev5 mispredict penalty is 5 cycles -- the same as just falling through. */ - beq t7, $retnull # .. e1 : + beq t8, $retnull # .. e1 : - and t7, 0xf0, t2 # e0 : binary search for the high bit set - cmovne t2, t2, t7 # .. e1 (zdb) + and t8, 0xf0, t2 # e0 : binary search for the high bit set + cmovne t2, t2, t8 # .. e1 (zdb) cmovne t2, 4, t2 # e0 : - and t7, 0xcc, t1 # .. e1 : - cmovne t1, t1, t7 # e0 : + and t8, 0xcc, t1 # .. e1 : + cmovne t1, t1, t8 # e0 : cmovne t1, 2, t1 # .. e1 : - and t7, 0xaa, t0 # e0 : + and t8, 0xaa, t0 # e0 : cmovne t0, 1, t0 # .. e1 (zdb) addq t2, t1, t1 # e0 : addq t6, t0, v0 # .. e1 : add our aligned base ptr to the mix |