aboutsummaryrefslogtreecommitdiff
path: root/libgloss/nds32
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2014-03-21 20:27:41 +0000
committerJeff Johnston <jjohnstn@redhat.com>2014-03-21 20:27:41 +0000
commit488d885bf3647634a94f9f95c6bcf3321073b2ac (patch)
treedbfcfcb2440c34a89587c3fe6cf1649962b045bc /libgloss/nds32
parentd35d103f08edf3fc552981f1d8136e358b9faece (diff)
downloadnewlib-488d885bf3647634a94f9f95c6bcf3321073b2ac.zip
newlib-488d885bf3647634a94f9f95c6bcf3321073b2ac.tar.gz
newlib-488d885bf3647634a94f9f95c6bcf3321073b2ac.tar.bz2
2014-03-21 Sabrini Ni <sabrinanitw@gmail.com>
* nds32/crt0.S: Use pseudo-instruction "bal frame" to replace "la + jral". * nds32/crt1.S: Ditto.
Diffstat (limited to 'libgloss/nds32')
-rw-r--r--libgloss/nds32/crt0.S6
-rw-r--r--libgloss/nds32/crt1.S7
2 files changed, 5 insertions, 8 deletions
diff --git a/libgloss/nds32/crt0.S b/libgloss/nds32/crt0.S
index 30092e0..5f56e9a 100644
--- a/libgloss/nds32/crt0.S
+++ b/libgloss/nds32/crt0.S
@@ -94,8 +94,7 @@ _start:
movi $r0, 0
movi $r1, 0
/* Call 'main'. */
- la $r15, main
- jral $r15
+ bal main
.L_terminate_program:
/* There are two ways to terminate program:
@@ -106,8 +105,7 @@ _start:
Currently, we use option 2 as a solution to follow C99 5.1.2.2.3,
but aware that general exit() will do some cleanup procedures
which may result in large-memory-footprints. */
- la $r15, exit
- jral $r15
+ bal exit
.L_forever_loop:
/* Should never return here. */
diff --git a/libgloss/nds32/crt1.S b/libgloss/nds32/crt1.S
index 0aca762..5ff4d96 100644
--- a/libgloss/nds32/crt1.S
+++ b/libgloss/nds32/crt1.S
@@ -100,8 +100,7 @@ _start:
movi $r1, 0
movi $r2, 0
/* Call 'main'. */
- la $r15, main
- jral $r15
+ bal main
.L_terminate_program:
/* There are two ways to terminate program:
@@ -112,8 +111,8 @@ _start:
Currently, we use option 2 as a solution to follow C99 5.1.2.2.3,
but aware that general exit() will do some cleanup procedures
which may result in large-memory-footprints. */
- la $r15, exit
- jral $r15
+
+ bal exit
.L_forever_loop:
/* Should never return here. */