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
b565a316
Commit
b565a316
authored
Jun 18, 1992
by
Richard Kenner
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
*** empty log message ***
From-SVN: r1213
parent
7c0891a1
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
33 additions
and
23 deletions
+33
-23
gcc/config/i386/i386.h
+1
-1
gcc/config/pa/pa.c
+1
-1
gcc/config/pa/pa.h
+1
-1
gcc/config/rs6000/rs6000.h
+1
-1
gcc/integrate.c
+5
-0
gcc/loop.c
+24
-10
gcc/protoize.c
+0
-9
No files found.
gcc/config/i386/i386.h
View file @
b565a316
...
...
@@ -1170,7 +1170,7 @@ while (0)
For floating-point equality comparisons, CCFPEQmode should be used.
VOIDmode should be used in all other cases. */
#define SELECT_CC_MODE(OP,X) \
#define SELECT_CC_MODE(OP,X
,Y
) \
(GET_MODE_CLASS (GET_MODE (X)) == MODE_FLOAT \
&& ((OP) == EQ || (OP) == NE) ? CCFPEQmode : CCmode)
...
...
gcc/config/pa/pa.c
View file @
b565a316
...
...
@@ -1631,7 +1631,7 @@ gen_compare_reg (code, x, y)
enum
rtx_code
code
;
rtx
x
,
y
;
{
enum
machine_mode
mode
=
SELECT_CC_MODE
(
code
,
x
);
enum
machine_mode
mode
=
SELECT_CC_MODE
(
code
,
x
,
y
);
rtx
cc_reg
=
gen_rtx
(
REG
,
mode
,
0
);
emit_insn
(
gen_rtx
(
SET
,
VOIDmode
,
cc_reg
,
...
...
gcc/config/pa/pa.h
View file @
b565a316
...
...
@@ -1288,7 +1288,7 @@ while (0)
should be used. CC_NOOVmode should be used when the first operand is a
PLUS, MINUS, or NEG. CCmode should be used when no special processing is
needed. */
#define SELECT_CC_MODE(OP,X) \
#define SELECT_CC_MODE(OP,X
,Y
) \
(GET_MODE_CLASS (GET_MODE (X)) == MODE_FLOAT ? CCFPmode : CCmode) \
/* A function address in a call instruction
...
...
gcc/config/rs6000/rs6000.h
View file @
b565a316
...
...
@@ -1268,7 +1268,7 @@ struct rs6000_args {int words, fregno, nargs_prototype; };
CCEQmode should be used when we are doing an inequality comparison on
the result of a comparison. CCmode should be used in all other cases. */
#define SELECT_CC_MODE(OP,X) \
#define SELECT_CC_MODE(OP,X
,Y
) \
(GET_MODE_CLASS (GET_MODE (X)) == MODE_FLOAT ? CCFPmode \
: (OP) == GTU || (OP) == LTU || (OP) == GEU || (OP) == LEU ? CCUNSmode \
: (((OP) == EQ || (OP) == NE) && GET_RTX_CLASS (GET_CODE (X)) == '<' \
...
...
gcc/integrate.c
View file @
b565a316
...
...
@@ -2376,6 +2376,11 @@ subst_constants (loc, insn, map)
op_mode
=
GET_MODE
(
XEXP
(
x
,
1
));
new
=
simplify_relational_operation
(
code
,
op_mode
,
XEXP
(
x
,
0
),
XEXP
(
x
,
1
));
#ifdef FLOAT_STORE_FLAG_VALUE
if
(
new
!=
0
&&
GET_MODE_CLASS
(
GET_MODE
(
x
))
==
MODE_FLOAT
)
new
=
((
new
==
const0_rtx
)
?
CONST0_RTX
(
GET_MODE
(
x
))
:
immed_real_const_1
(
FLOAT_STORE_FLAG_VALUE
,
GET_MODE
(
x
)));
#endif
break
;
}
...
...
gcc/loop.c
View file @
b565a316
...
...
@@ -6254,18 +6254,32 @@ get_condition (jump, earliest)
enum
machine_mode
inner_mode
=
GET_MODE
(
SET_SRC
(
set
));
if
((
GET_CODE
(
SET_SRC
(
set
))
==
COMPARE
||
((
code
==
NE
||
(
code
==
LT
&&
GET_MODE_BITSIZE
(
inner_mode
)
<=
HOST_BITS_PER_INT
&&
(
STORE_FLAG_VALUE
&
(
1
<<
(
GET_MODE_BITSIZE
(
inner_mode
)
-
1
)))))
||
(((
code
==
NE
||
(
code
==
LT
&&
GET_MODE_CLASS
(
inner_mode
)
==
MODE_INT
&&
GET_MODE_BITSIZE
(
inner_mode
)
<=
HOST_BITS_PER_INT
&&
(
STORE_FLAG_VALUE
&
(
1
<<
(
GET_MODE_BITSIZE
(
inner_mode
)
-
1
))))
#ifdef FLOAT_STORE_FLAG_VALUE
||
(
code
==
LT
&&
GET_MODE_CLASS
(
inner_mode
)
==
MODE_FLOAT
&&
FLOAT_STORE_FLAG_VALUE
<
0
)
#endif
))
&&
GET_RTX_CLASS
(
GET_CODE
(
SET_SRC
(
set
)))
==
'<'
)))
x
=
SET_SRC
(
set
);
else
if
((
code
==
EQ
||
(
code
==
GE
&&
GET_MODE_BITSIZE
(
inner_mode
)
<=
HOST_BITS_PER_INT
&&
(
STORE_FLAG_VALUE
&
(
1
<<
(
GET_MODE_BITSIZE
(
inner_mode
)
-
1
)))))
else
if
(((
code
==
EQ
||
(
code
==
GE
&&
GET_MODE_BITSIZE
(
inner_mode
)
<=
HOST_BITS_PER_INT
&&
GET_MODE_CLASS
(
inner_mode
)
==
MODE_INT
&&
(
STORE_FLAG_VALUE
&
(
1
<<
(
GET_MODE_BITSIZE
(
inner_mode
)
-
1
))))
#ifdef FLOAT_STORE_FLAG_VALUE
||
(
code
==
GE
&&
GET_MODE_CLASS
(
inner_mode
)
==
MODE_FLOAT
&&
FLOAT_STORE_FLAG_VALUE
<
0
)
#eneif
))
&&
GET_RTX_CLASS
(
GET_CODE
(
SET_SRC
(
set
)))
==
'<'
)
{
/* We might have reversed a LT to get a GE here. But this wasn't
...
...
gcc/protoize.c
View file @
b565a316
...
...
@@ -194,15 +194,6 @@ extern char * strrchr ();
#define STRINGIFY(STRING) "STRING"
#endif
/* POSIX systems will not have definitions for WIFEXITED or WEXITSTATUS.
Define them correctly and so that they work for all environments. */
#undef WIFEXITED
#define WIFEXITED(status_word) ((*((int *)&status_word) & 0xff) == 0x00)
#undef WEXITSTATUS
#define WEXITSTATUS(status_word) ((*((int *)&status_word) & 0xff00) >> 8)
/* Define a default place to find the SYSCALLS.X file. */
#ifndef STD_PROTO_DIR
...
...
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