mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
128 lines
2.3 KiB
128 lines
2.3 KiB
/* SPDX-License-Identifier: GPL-2.0+ WITH GCC-exception-2.0 |
|
|
|
Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, |
|
2004, 2005, 2006 |
|
Free Software Foundation, Inc. |
|
*/ |
|
|
|
!! libgcc routines for the Renesas / SuperH SH CPUs. |
|
!! Contributed by Steve Chamberlain. |
|
!! sac@cygnus.com |
|
|
|
!! ashiftrt_r4_x, ___ashrsi3, ___ashlsi3, ___lshrsi3 routines |
|
!! recoded in assembly by Toshiyasu Morita |
|
!! tm@netcom.com |
|
|
|
/* SH2 optimizations for ___ashrsi3, ___ashlsi3, ___lshrsi3 and |
|
ELF local label prefixes by J"orn Rennecke |
|
amylaar@cygnus.com */ |
|
|
|
.global __ashiftrt_r4_0 |
|
.global __ashiftrt_r4_1 |
|
.global __ashiftrt_r4_2 |
|
.global __ashiftrt_r4_3 |
|
.global __ashiftrt_r4_4 |
|
.global __ashiftrt_r4_5 |
|
.global __ashiftrt_r4_6 |
|
.global __ashiftrt_r4_7 |
|
.global __ashiftrt_r4_8 |
|
.global __ashiftrt_r4_9 |
|
.global __ashiftrt_r4_10 |
|
.global __ashiftrt_r4_11 |
|
.global __ashiftrt_r4_12 |
|
.global __ashiftrt_r4_13 |
|
.global __ashiftrt_r4_14 |
|
.global __ashiftrt_r4_15 |
|
.global __ashiftrt_r4_16 |
|
.global __ashiftrt_r4_17 |
|
.global __ashiftrt_r4_18 |
|
.global __ashiftrt_r4_19 |
|
.global __ashiftrt_r4_20 |
|
.global __ashiftrt_r4_21 |
|
.global __ashiftrt_r4_22 |
|
.global __ashiftrt_r4_23 |
|
.global __ashiftrt_r4_24 |
|
.global __ashiftrt_r4_25 |
|
.global __ashiftrt_r4_26 |
|
.global __ashiftrt_r4_27 |
|
.global __ashiftrt_r4_28 |
|
.global __ashiftrt_r4_29 |
|
.global __ashiftrt_r4_30 |
|
.global __ashiftrt_r4_31 |
|
.global __ashiftrt_r4_32 |
|
|
|
.align 1 |
|
__ashiftrt_r4_32: |
|
__ashiftrt_r4_31: |
|
rotcl r4 |
|
rts |
|
subc r4,r4 |
|
__ashiftrt_r4_30: |
|
shar r4 |
|
__ashiftrt_r4_29: |
|
shar r4 |
|
__ashiftrt_r4_28: |
|
shar r4 |
|
__ashiftrt_r4_27: |
|
shar r4 |
|
__ashiftrt_r4_26: |
|
shar r4 |
|
__ashiftrt_r4_25: |
|
shar r4 |
|
__ashiftrt_r4_24: |
|
shlr16 r4 |
|
shlr8 r4 |
|
rts |
|
exts.b r4,r4 |
|
__ashiftrt_r4_23: |
|
shar r4 |
|
__ashiftrt_r4_22: |
|
shar r4 |
|
__ashiftrt_r4_21: |
|
shar r4 |
|
__ashiftrt_r4_20: |
|
shar r4 |
|
__ashiftrt_r4_19: |
|
shar r4 |
|
__ashiftrt_r4_18: |
|
shar r4 |
|
__ashiftrt_r4_17: |
|
shar r4 |
|
__ashiftrt_r4_16: |
|
shlr16 r4 |
|
rts |
|
exts.w r4,r4 |
|
__ashiftrt_r4_15: |
|
shar r4 |
|
__ashiftrt_r4_14: |
|
shar r4 |
|
__ashiftrt_r4_13: |
|
shar r4 |
|
__ashiftrt_r4_12: |
|
shar r4 |
|
__ashiftrt_r4_11: |
|
shar r4 |
|
__ashiftrt_r4_10: |
|
shar r4 |
|
__ashiftrt_r4_9: |
|
shar r4 |
|
__ashiftrt_r4_8: |
|
shar r4 |
|
__ashiftrt_r4_7: |
|
shar r4 |
|
__ashiftrt_r4_6: |
|
shar r4 |
|
__ashiftrt_r4_5: |
|
shar r4 |
|
__ashiftrt_r4_4: |
|
shar r4 |
|
__ashiftrt_r4_3: |
|
shar r4 |
|
__ashiftrt_r4_2: |
|
shar r4 |
|
__ashiftrt_r4_1: |
|
rts |
|
shar r4 |
|
__ashiftrt_r4_0: |
|
rts |
|
nop
|
|
|