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
6d750308
Commit
6d750308
authored
Mar 23, 1992
by
Richard Stallman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
*** empty log message ***
From-SVN: r580
parent
5089e22e
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
54 additions
and
17 deletions
+54
-17
gcc/config/ns32k/ns32k.c
+49
-16
gcc/config/ns32k/pc532.h
+5
-1
No files found.
gcc/config/ns32k/ns32k.c
View file @
6d750308
...
...
@@ -211,7 +211,7 @@ secondary_reload_class (class, mode, in)
/* Generate the rtx that comes from an address expression in the md file */
/* The expression to be build is BASE[INDEX:SCALE]. To recognize this,
scale must be converted from an exponent (from ASHIFT) to a
muliplier (for MULT). */
mul
t
iplier (for MULT). */
rtx
gen_indexed_expr
(
base
,
index
,
scale
)
rtx
base
,
index
,
scale
;
...
...
@@ -380,22 +380,55 @@ print_operand (file, x, code)
else
if
(
GET_CODE
(
x
)
==
REG
)
fprintf
(
file
,
"%s"
,
reg_names
[
REGNO
(
x
)]);
else
if
(
GET_CODE
(
x
)
==
MEM
)
output_address
(
XEXP
(
x
,
0
));
{
rtx
tmp
=
XEXP
(
x
,
0
);
#ifndef PC_RELATIVE
if
(
GET_CODE
(
tmp
)
==
SYMBOL_REF
||
GET_CODE
(
tmp
)
==
LABEL_REF
)
{
char
*
out
=
XSTR
(
tmp
,
0
);
if
(
out
[
0
]
==
'*'
)
fprintf
(
file
,
"@%s"
,
&
out
[
1
]);
else
ASM_OUTPUT_LABELREF
(
file
,
out
);
}
else
#endif
output_address
(
XEXP
(
x
,
0
));
}
else
if
(
GET_CODE
(
x
)
==
CONST_DOUBLE
&&
GET_MODE
(
x
)
!=
DImode
)
if
(
GET_MODE
(
x
)
==
DFmode
)
{
union
{
double
d
;
int
i
[
2
];
}
u
;
u
.
i
[
0
]
=
CONST_DOUBLE_LOW
(
x
);
u
.
i
[
1
]
=
CONST_DOUBLE_HIGH
(
x
);
PUT_IMMEDIATE_PREFIX
(
file
);
fprintf
(
file
,
"0d%.20e"
,
u
.
d
);
}
else
{
union
{
double
d
;
int
i
[
2
];
}
u
;
u
.
i
[
0
]
=
CONST_DOUBLE_LOW
(
x
);
u
.
i
[
1
]
=
CONST_DOUBLE_HIGH
(
x
);
PUT_IMMEDIATE_PREFIX
(
file
);
fprintf
(
file
,
"0f%.20e"
,
u
.
d
);
}
{
if
(
GET_MODE
(
x
)
==
DFmode
)
{
union
{
double
d
;
int
i
[
2
];
}
u
;
u
.
i
[
0
]
=
CONST_DOUBLE_LOW
(
x
);
u
.
i
[
1
]
=
CONST_DOUBLE_HIGH
(
x
);
PUT_IMMEDIATE_PREFIX
(
file
);
#ifdef SEQUENT_ASM
/* Sequent likes it's floating point constants as integers */
fprintf
(
file
,
"0Dx%08x%08x"
,
u
.
i
[
1
],
u
.
i
[
0
])
l
#else
#ifdef ENCORE_ASM
fprintf
(
file
,
"0f%.20e"
,
u
.
d
);
#else
fprintf
(
file
,
"0d%.20e"
,
u
.
d
);
#endif
#endif
}
else
{
union
{
double
d
;
int
i
[
2
];
}
u
;
u
.
i
[
0
]
=
CONST_DOUBLE_LOW
(
x
);
u
.
i
[
1
]
=
CONST_DOUBLE_HIGH
(
x
);
PUT_IMMEDIATE_PREFIX
(
file
);
#ifdef SEQUENT_ASM
{
union
{
float
f
;
long
l
;
}
uu
;
uu
.
f
=
u
.
d
;
fprintf
(
file
,
"0Fx%08x"
,
uu
.
l
);
}
#else
fprintf
(
file
,
"0f%.20e"
,
u
.
d
);
#endif
}
}
else
{
PUT_IMMEDIATE_PREFIX
(
file
);
...
...
gcc/config/ns32k/pc532.h
View file @
6d750308
...
...
@@ -57,7 +57,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define CPP_PREDEFINES "-Dns32000 -Dns32532 -Dpc532 -Dunix"
/* Use pc relative addressing whenever possible,
it's more efficient than absolute (
out-
ns32k.c)
it's more efficient than absolute (ns32k.c)
You have to fix a bug in gas 1.38.1 to make this work with gas,
patch available from jkp@cs.hut.fi. */
...
...
@@ -66,3 +66,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
/* This machine appears to use GAS syntax. */
#define GAS_SYNTAX
/* Every address needs to use a base reg. */
#define BASE_REG_NEEDED
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