-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
a631da4
commit bee5e7f
Showing
12 changed files
with
162 additions
and
39 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
# libattrs.map | ||
# | ||
# This file defines the mapping from library names to the | ||
# attributes assumed for that library by the linker. It is for | ||
# internal use only. Modification by users is likely to produce | ||
# unanticipated results. | ||
# | ||
# Copyright 2004 ARM Limited. All rights reserved. | ||
# | ||
# RCS $Revision$ | ||
# Checkin $Date$ | ||
# Revising $Author$ | ||
|
||
# Attributes in the library suffix. | ||
*_4*.* $IEEE1$ARM_ISAv4 | ||
*_t*.* $IEEE1$ARM_ISAv4$THUMB_ISAv1 | ||
*_5*.* $IEEE1$ARM_ISAv5$THUMB_ISAv1 | ||
*_w*.* $IEEE1$THUMB_ISAv4$D | ||
*_p*.* $IEEE1$THM_ISAv3M | ||
*_2*.* $IEEE1$THUMB_ISAv4$ARM_ISAv7 | ||
*_8*.* $IEEE1$ARM_ISAv8$THUMB_ISAv5$DE$MPE$B$J$K | ||
*_o*.* $IEEE1$A64_ISAv8 | ||
*_*e*.* $IEEE1$RWPI | ||
*_*f*.* $IEEE1$~SHL$FPIC | ||
*_*s*.* $IEEE1$PE | ||
*_*v*.* $IEEE1$VFPv1 | ||
*_*m*.* $IEEE1$VFPi1$EXTD16$VFPS | ||
*_*n*.* $IEEE1$ENUMINT | ||
*_*u*.* $IEEE1$WCHAR32 | ||
*_r*.* $IEEE1$A64_ISAv8$SIGN_RET_ADDR | ||
*_a*.* $IEEE1$A64_ISAv8$SIGN_RET_ADDR$TAGGED_STACK | ||
|
||
# Sets of library prefixes which denote the same library set and | ||
# vary the attributes. | ||
fz_* $IEEE1$STANDARDLIB | ||
g_* $IEEE1$STANDARDLIB$IEEEX fz | ||
f_* $IEEE1$STANDARDLIB$IEEEF fz | ||
fj_* $IEEE1$STANDARDLIB$IEEEJ fz | ||
mf_* $IEEE1$MICROLIB fz | ||
|
||
c2_* $IEEE1$STANDARDLIB | ||
c_* $IEEE1$STANDARDLIB | ||
mc_* $IEEE1$MICROLIB c | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
; /***************************************************************************** | ||
; * | ||
; * Replacement for aeabi standard division functions | ||
; * Using the NUC126 hardware divider | ||
; * | ||
; *****************************************************************************/ | ||
|
||
AREA |.text|, CODE, READONLY | ||
|
||
HDIV EQU 0x50014000 | ||
|
||
|
||
; Signed division using the hardware divider. | ||
; ~20 cycles | ||
|
||
ALIGN | ||
__aeabi_idivmod PROC | ||
ROUT | ||
EXPORT __aeabi_idivmod | ||
|
||
LDR R2, = HDIV | ||
STR R0, [ R2, #0 ] | ||
STR R1, [ R2, #4 ] | ||
LDR R0, [ R2, #8 ] | ||
LDR R1, [ R2, #12 ] | ||
BX LR | ||
|
||
ENDP | ||
|
||
ALIGN | ||
__aeabi_idiv PROC | ||
ROUT | ||
EXPORT __aeabi_idiv | ||
|
||
LDR R2, = HDIV | ||
STR R0, [ R2, #0 ] | ||
STR R1, [ R2, #4 ] | ||
LDR R0, [ R2, #8 ] | ||
BX LR | ||
|
||
ENDP | ||
|
||
|
||
; Unsigned divisions are just signed divisions, | ||
; assuming that divisor and dividend never exceed 2^31-1. | ||
; That's lazy but good enough. | ||
|
||
__aeabi_uidivmod EQU __aeabi_idivmod | ||
EXPORT __aeabi_uidivmod | ||
|
||
__aeabi_uidiv EQU __aeabi_idiv | ||
EXPORT __aeabi_uidiv | ||
|
||
|
||
; Just in case | ||
|
||
IF {FALSE} | ||
ALIGN | ||
__aeabi_uidivmod PROC | ||
ROUT | ||
EXPORT __aeabi_uidivmod | ||
|
||
B __aeabi_idivmod | ||
|
||
ENDP | ||
|
||
ALIGN | ||
__aeabi_uidiv PROC | ||
ROUT | ||
EXPORT __aeabi_uidiv | ||
|
||
B __aeabi_idiv | ||
|
||
ENDP | ||
ENDIF | ||
|
||
ALIGN | ||
|
||
END |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters