Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
aba62944
Commit
aba62944
authored
Jan 05, 1996
by
Michael Meissner
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add -mcpu={505,821,860} support; Fixup common mode support; Make eabi not rely on GLD
From-SVN: r10943
parent
cf27b467
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
92 additions
and
9 deletions
+92
-9
gcc/config/rs6000/eabi.asm
+92
-9
No files found.
gcc/config/rs6000/eabi.asm
View file @
aba62944
/*
*
special
support
for
eabi
*
*
Copyright
(
C
)
1995
,
1996
Free
Software
Foundation
,
Inc
.
*
Written
By
Michael
Meissner
*
*
This
file
is
free
software
; you can redistribute it and/or modify it
*
under
the
terms
of
the
GNU
General
Public
License
as
published
by
the
*
Free
Software
Foundation
; either version 2, or (at your option) any
*
later
version
.
*
*
In
addition
to
the
permissions
in
the
GNU
General
Public
License
,
the
*
Free
Software
Foundation
gives
you
unlimited
permission
to
link
the
*
compiled
version
of
this
file
with
other
programs
,
and
to
distribute
*
those
programs
without
any
restriction
coming
from
the
use
of
this
*
file
.
(
The
General
Public
License
restrictions
do
apply
in
other
*
respects
; for example, they cover modification of the file, and
*
distribution
when
not
linked
into
another
program
.)
*
*
This
file
is
distributed
in
the
hope
that
it
will
be
useful
,
but
*
WITHOUT
ANY
WARRANTY
; without even the implied warranty of
*
MERCHANTABILITY
or
FITNESS
FOR
A
PARTICULAR
PURPOSE
.
See
the
GNU
*
General
Public
License
for
more
details
.
*
*
You
should
have
received
a
copy
of
the
GNU
General
Public
License
*
along
with
this
program
; see the file COPYING. If not, write to
*
the
Free
Software
Foundation
,
59
Temple
Place
-
Suite
330
,
*
Boston
,
MA
02111
-
1307
,
USA
.
*
*
As
a
special
exception
,
if
you
link
this
library
with
files
*
compiled
with
GCC
to
produce
an
executable
,
this
does
not
cause
*
the
resulting
executable
to
be
covered
by
the
GNU
General
Public
License
.
*
This
exception
does
not
however
invalidate
any
other
reasons
why
*
the
executable
file
might
be
covered
by
the
GNU
General
Public
License
.
*/
/*
Do
any
initializations
needed
for
the
eabi
environment
*/
.
file
"eabi.asm"
...
...
@@ -15,22 +51,34 @@
.
long
_GLOBAL_OFFSET_TABLE_
/*
normal
GOT
address
*/
.
Lgots
=
.
-
.
LCTOC1
.
long
_
GOT_START
_
/*
start
of
.
got
section
*/
.
long
_
_GOT_START_
_
/*
start
of
.
got
section
*/
.
Lgote
=
.
-
.
LCTOC1
.
long
_
GOT_END
_
/*
end
of
.
got
section
*/
.
long
_
_GOT_END_
_
/*
end
of
.
got
section
*/
.
Lgot2s
=
.
-
.
LCTOC1
.
long
_
GOT2_START
_
/*
-
mrelocatable
GOT
pointers
start
*/
.
long
_
_GOT2_START_
_
/*
-
mrelocatable
GOT
pointers
start
*/
.
Lgot2e
=
.
-
.
LCTOC1
.
long
_
GOT2_END
_
/*
-
mrelocatable
GOT
pointers
end
*/
.
long
_
_GOT2_END_
_
/*
-
mrelocatable
GOT
pointers
end
*/
.
Lfixups
=
.
-
.
LCTOC1
.
long
_
FIXUP_START
_
/*
start
of
.
fixup
section
*/
.
long
_
_FIXUP_START_
_
/*
start
of
.
fixup
section
*/
.
Lfixupe
=
.
-
.
LCTOC1
.
long
_FIXUP_END_
/*
end
of
.
fixup
section
*/
.
long
__FIXUP_END__
/*
end
of
.
fixup
section
*/
.
Lctors
=
.
-
.
LCTOC1
.
long
__CTOR_LIST__
/*
start
of
.
ctor
section
*/
.
Lctore
=
.
-
.
LCTOC1
.
long
__CTOR_END__
/*
end
of
.
ctor
section
*/
.
Ldtors
=
.
-
.
LCTOC1
.
long
__DTOR_LIST__
/*
start
of
.
dtor
section
*/
.
Ldtore
=
.
-
.
LCTOC1
.
long
__DTOR_END__
/*
end
of
.
dtor
section
*/
.
text
.
Lptr
:
...
...
@@ -70,7 +118,7 @@ FUNC_START(__eabi)
add
4
,
12
,
4
cmpw
1
,
3
,
4
/*
any
pointers
to
adjust
*/
bc
12
,
6
,.
L
fix
bc
12
,
6
,.
L
ctor
.
Lloop
:
lwz
5
,
0
(
3
)
/*
next
pointer
*/
...
...
@@ -80,9 +128,42 @@ FUNC_START(__eabi)
cmpw
1
,
3
,
4
/*
more
pointers
to
adjust
?
*/
bc
4
,
6
,.
Lloop
/*
Fixup
the
.
ctor
section
for
static
constructors
*/
.
Lctor
:
lwz
3
,.
Lctors
(
11
)
/*
constructors
pointers
start
*/
lwz
4
,.
Lctore
(
11
)
/*
constructors
pointers
end
*/
cmpw
1
,
3
,
4
/*
any
pointers
to
adjust
*/
bc
12
,
6
,.
Ldtor
.
Lcloop
:
lwz
5
,
0
(
3
)
/*
next
pointer
*/
add
5
,
5
,
12
/*
adjust
*/
stw
5
,
0
(
3
)
addi
3
,
3
,
4
/*
bump
to
next
word
*/
cmpw
1
,
3
,
4
/*
more
pointers
to
adjust
?
*/
bc
4
,
6
,.
Lcloop
/*
Fixup
the
.
dtor
section
for
static
destructors
*/
.
Ldtor
:
lwz
3
,.
Ldtors
(
11
)
/*
destructors
pointers
start
*/
lwz
4
,.
Ldtore
(
11
)
/*
destructors
pointers
end
*/
cmpw
1
,
3
,
4
/*
any
pointers
to
adjust
*/
bc
12
,
6
,.
Lfix
.
Ldloop
:
lwz
5
,
0
(
3
)
/*
next
pointer
*/
add
5
,
5
,
12
/*
adjust
*/
stw
5
,
0
(
3
)
addi
3
,
3
,
4
/*
bump
to
next
word
*/
cmpw
1
,
3
,
4
/*
more
pointers
to
adjust
?
*/
bc
4
,
6
,.
Ldloop
/*
Fixup
any
user
initialized
pointers
now
(
the
compiler
drops
pointers
to
*/
/*
each
of
the
relocs
that
it
does
in
the
.
fixup
section
).
Note
,
the
pointers
*/
/*
themselves
have
already
been
fixed
up
by
the
previous
loop
.
*/
/*
each
of
the
relocs
that
it
does
in
the
.
fixup
section
).
*/
.
Lfix
:
lwz
3
,.
Lfixups
(
11
)
/*
fixup
pointers
start
*/
...
...
@@ -93,7 +174,9 @@ FUNC_START(__eabi)
.
Lfloop
:
lwz
5
,
0
(
3
)
/*
next
pointer
*/
add
5
,
5
,
12
/*
adjust
pointer
*/
lwz
6
,
0
(
5
)
/*
get
the
pointer
it
points
to
*/
stw
5
,
0
(
3
)
/*
store
adjusted
pointer
*/
add
6
,
6
,
12
/*
adjust
*/
stw
6
,
0
(
5
)
addi
3
,
3
,
4
/*
bump
to
next
word
*/
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment