mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-23 13:30:06 +00:00
5d9b7b9fa7
The patch is straighforward: - The sparc32 v8 implementations are moved as the generic ones. - A configure test is added to check for either __sparc_v8__ or __sparc_v9__. - The triple names are simplified and sparc implies sparcv8. The idea is to keep support on sparcv8 architectures that does support CAS instructions, such as LEON3/LEON4. Checked on a sparcv9-linux-gnu and sparc64-linux-gnu. Tested-by: Andreas Larsson <andreas@gaisler.com>
22 lines
226 B
ArmAsm
22 lines
226 B
ArmAsm
/*
|
|
* Sparc v8 has divide.
|
|
*/
|
|
|
|
#include <sysdep.h>
|
|
|
|
ENTRY(.rem)
|
|
|
|
sra %o0, 31, %o2
|
|
wr %o2, 0, %y
|
|
nop
|
|
nop
|
|
nop
|
|
sdivcc %o0, %o1, %o2
|
|
bvs,a 1f
|
|
xnor %o2, %g0, %o2
|
|
1: smul %o2, %o1, %o2
|
|
retl
|
|
sub %o0, %o2, %o0
|
|
|
|
END(.rem)
|