Some of the instructions used in latest additions are extension
ones. There is no real reason to limit ourselves to specific
processors, so [re-]adhere to base instruction set.
RT#4548
Reviewed-by: Rich Salz <rsalz@openssl.org>
.type ChaCha20_ctr32,\@function
.align 32
ChaCha20_ctr32:
.type ChaCha20_ctr32,\@function
.align 32
ChaCha20_ctr32:
- cl${g}ije $len,0,.Lno_data # $len==0?
+ lt${g}r $len,$len # $len==0?
+ bzr %r14
a${g}hi $len,-64
l${g}hi %r1,-$frame
stm${g} %r6,%r15,`6*$SIZE_T`($sp)
a${g}hi $len,-64
l${g}hi %r1,-$frame
stm${g} %r6,%r15,`6*$SIZE_T`($sp)
stmg %r0,%r3,$stdframe+4*12($sp)
lm${g} %r6,%r15,`$frame+6*$SIZE_T`($sp)
stmg %r0,%r3,$stdframe+4*12($sp)
lm${g} %r6,%r15,`$frame+6*$SIZE_T`($sp)
la %r3,1(%r3)
xr %r1,%r0
or %r5,%r1
la %r3,1(%r3)
xr %r1,%r0
or %r5,%r1