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
87e3e0c1
Commit
87e3e0c1
authored
May 05, 1994
by
Richard Kenner
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(simplify_rtx, case SUBREG): Don't call force_to_mode.
(simplify_set): Call force_to_mode here. From-SVN: r7216
parent
83a24b1d
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
10 additions
and
9 deletions
+10
-9
gcc/combine.c
+10
-9
No files found.
gcc/combine.c
View file @
87e3e0c1
...
@@ -3260,16 +3260,10 @@ simplify_rtx (x, op0_mode, last, in_dest)
...
@@ -3260,16 +3260,10 @@ simplify_rtx (x, op0_mode, last, in_dest)
&&
GET_MODE_SIZE
(
mode
)
>
GET_MODE_SIZE
(
op0_mode
))
&&
GET_MODE_SIZE
(
mode
)
>
GET_MODE_SIZE
(
op0_mode
))
return
SUBREG_REG
(
x
);
return
SUBREG_REG
(
x
);
/*
If we are narrowing an integral object, we need to see if we can
/*
Note that we cannot do any narrowing for non-constants since
simplify the expression for the object knowing that we only need th
e
we might have been counting on using the fact that some bits wer
e
low-order bits
. */
zero. We now do this in the SET
. */
if
(
GET_MODE_CLASS
(
mode
)
==
MODE_INT
&&
GET_MODE_CLASS
(
GET_MODE
(
SUBREG_REG
(
x
)))
==
MODE_INT
&&
GET_MODE_SIZE
(
mode
)
<
GET_MODE_SIZE
(
GET_MODE
(
SUBREG_REG
(
x
)))
&&
subreg_lowpart_p
(
x
))
return
force_to_mode
(
SUBREG_REG
(
x
),
mode
,
GET_MODE_MASK
(
mode
),
NULL_RTX
,
0
);
break
;
break
;
case
NOT
:
case
NOT
:
...
@@ -4201,6 +4195,13 @@ simplify_set (x)
...
@@ -4201,6 +4195,13 @@ simplify_set (x)
if
(
GET_CODE
(
dest
)
==
PC
&&
GET_CODE
(
src
)
==
RETURN
)
if
(
GET_CODE
(
dest
)
==
PC
&&
GET_CODE
(
src
)
==
RETURN
)
return
src
;
return
src
;
/* Now that we know for sure which bits of SRC we are using, see if we can
simplify the expression for the object knowing that we only need the
low-order bits. */
if
(
GET_MODE_CLASS
(
mode
)
==
MODE_INT
)
src
=
force_to_mode
(
src
,
mode
,
GET_MODE_MASK
(
mode
),
NULL_RTX
,
0
);
/* Convert this into a field assignment operation, if possible. */
/* Convert this into a field assignment operation, if possible. */
x
=
make_field_assignment
(
x
);
x
=
make_field_assignment
(
x
);
...
...
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