diff options
-rw-r--r-- | arch/alpha/lib/ev6-stxncpy.S | 14 | ||||
-rw-r--r-- | arch/alpha/lib/strncpy.S | 2 | ||||
-rw-r--r-- | arch/alpha/lib/stxncpy.S | 14 |
3 files changed, 15 insertions, 15 deletions
diff --git a/arch/alpha/lib/ev6-stxncpy.S b/arch/alpha/lib/ev6-stxncpy.S index b581a7af2456..1aa6e97e04b5 100644 --- a/arch/alpha/lib/ev6-stxncpy.S +++ b/arch/alpha/lib/ev6-stxncpy.S | |||
@@ -362,10 +362,10 @@ $unaligned: | |||
362 | 362 | ||
363 | extql t2, a1, t2 # U : | 363 | extql t2, a1, t2 # U : |
364 | cmpbge zero, t1, t8 # E : is there a zero? | 364 | cmpbge zero, t1, t8 # E : is there a zero? |
365 | andnot t2, t6, t12 # E : dest mask for a single word copy | 365 | andnot t2, t6, t2 # E : dest mask for a single word copy |
366 | or t8, t10, t5 # E : test for end-of-count too | 366 | or t8, t10, t5 # E : test for end-of-count too |
367 | 367 | ||
368 | cmpbge zero, t12, t3 # E : | 368 | cmpbge zero, t2, t3 # E : |
369 | cmoveq a2, t5, t8 # E : Latency=2, extra map slot | 369 | cmoveq a2, t5, t8 # E : Latency=2, extra map slot |
370 | nop # E : keep with cmoveq | 370 | nop # E : keep with cmoveq |
371 | andnot t8, t3, t8 # E : (stall) | 371 | andnot t8, t3, t8 # E : (stall) |
@@ -379,13 +379,13 @@ $unaligned: | |||
379 | negq t8, t6 # E : build bitmask of bytes <= zero | 379 | negq t8, t6 # E : build bitmask of bytes <= zero |
380 | mskqh t1, t4, t1 # U : | 380 | mskqh t1, t4, t1 # U : |
381 | 381 | ||
382 | and t6, t8, t2 # E : | 382 | and t6, t8, t12 # E : |
383 | subq t2, 1, t6 # E : (stall) | 383 | subq t12, 1, t6 # E : (stall) |
384 | or t6, t2, t8 # E : (stall) | 384 | or t6, t12, t8 # E : (stall) |
385 | zapnot t12, t8, t12 # U : prepare source word; mirror changes (stall) | 385 | zapnot t2, t8, t2 # U : prepare source word; mirror changes (stall) |
386 | 386 | ||
387 | zapnot t1, t8, t1 # U : to source validity mask | 387 | zapnot t1, t8, t1 # U : to source validity mask |
388 | andnot t0, t12, t0 # E : zero place for source to reside | 388 | andnot t0, t2, t0 # E : zero place for source to reside |
389 | or t0, t1, t0 # E : and put it there (stall both t0, t1) | 389 | or t0, t1, t0 # E : and put it there (stall both t0, t1) |
390 | stq_u t0, 0(a0) # L : (stall) | 390 | stq_u t0, 0(a0) # L : (stall) |
391 | 391 | ||
diff --git a/arch/alpha/lib/strncpy.S b/arch/alpha/lib/strncpy.S index bbdef1be5f95..a46f7f3ad8c7 100644 --- a/arch/alpha/lib/strncpy.S +++ b/arch/alpha/lib/strncpy.S | |||
@@ -35,7 +35,7 @@ strncpy: | |||
35 | 35 | ||
36 | or $3, $24, $3 # clear the bits between the last | 36 | or $3, $24, $3 # clear the bits between the last |
37 | or $4, $27, $4 # written byte and the last byte in COUNT | 37 | or $4, $27, $4 # written byte and the last byte in COUNT |
38 | andnot $4, $3, $4 | 38 | andnot $3, $4, $4 |
39 | zap $1, $4, $1 | 39 | zap $1, $4, $1 |
40 | 40 | ||
41 | stq_u $1, 0($16) | 41 | stq_u $1, 0($16) |
diff --git a/arch/alpha/lib/stxncpy.S b/arch/alpha/lib/stxncpy.S index da1a72740d29..3dece25283a3 100644 --- a/arch/alpha/lib/stxncpy.S +++ b/arch/alpha/lib/stxncpy.S | |||
@@ -315,9 +315,9 @@ $unaligned: | |||
315 | 315 | ||
316 | extql t2, a1, t2 # e0 : | 316 | extql t2, a1, t2 # e0 : |
317 | cmpbge zero, t1, t8 # .. e1 : is there a zero? | 317 | cmpbge zero, t1, t8 # .. e1 : is there a zero? |
318 | andnot t2, t6, t12 # e0 : dest mask for a single word copy | 318 | andnot t2, t6, t2 # e0 : dest mask for a single word copy |
319 | or t8, t10, t5 # .. e1 : test for end-of-count too | 319 | or t8, t10, t5 # .. e1 : test for end-of-count too |
320 | cmpbge zero, t12, t3 # e0 : | 320 | cmpbge zero, t2, t3 # e0 : |
321 | cmoveq a2, t5, t8 # .. e1 : | 321 | cmoveq a2, t5, t8 # .. e1 : |
322 | andnot t8, t3, t8 # e0 : | 322 | andnot t8, t3, t8 # e0 : |
323 | beq t8, $u_head # .. e1 (zdb) | 323 | beq t8, $u_head # .. e1 (zdb) |
@@ -330,14 +330,14 @@ $unaligned: | |||
330 | ldq_u t0, 0(a0) # e0 : | 330 | ldq_u t0, 0(a0) # e0 : |
331 | negq t8, t6 # .. e1 : build bitmask of bytes <= zero | 331 | negq t8, t6 # .. e1 : build bitmask of bytes <= zero |
332 | mskqh t1, t4, t1 # e0 : | 332 | mskqh t1, t4, t1 # e0 : |
333 | and t6, t8, t2 # .. e1 : | 333 | and t6, t8, t12 # .. e1 : |
334 | subq t2, 1, t6 # e0 : | 334 | subq t12, 1, t6 # e0 : |
335 | or t6, t2, t8 # e1 : | 335 | or t6, t12, t8 # e1 : |
336 | 336 | ||
337 | zapnot t12, t8, t12 # e0 : prepare source word; mirror changes | 337 | zapnot t2, t8, t2 # e0 : prepare source word; mirror changes |
338 | zapnot t1, t8, t1 # .. e1 : to source validity mask | 338 | zapnot t1, t8, t1 # .. e1 : to source validity mask |
339 | 339 | ||
340 | andnot t0, t12, t0 # e0 : zero place for source to reside | 340 | andnot t0, t2, t0 # e0 : zero place for source to reside |
341 | or t0, t1, t0 # e1 : and put it there | 341 | or t0, t1, t0 # e1 : and put it there |
342 | stq_u t0, 0(a0) # e0 : | 342 | stq_u t0, 0(a0) # e0 : |
343 | ret (t9) # .. e1 : | 343 | ret (t9) # .. e1 : |