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
d7e0324f
Commit
d7e0324f
authored
Aug 31, 1995
by
Richard Kenner
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(emit_reload_insn): Emit RELOAD_OTHER output reloads last.
From-SVN: r10295
parent
74347d76
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
3 deletions
+15
-3
gcc/reload1.c
+15
-3
No files found.
gcc/reload1.c
View file @
d7e0324f
...
@@ -5650,6 +5650,7 @@ emit_reload_insns (insn)
...
@@ -5650,6 +5650,7 @@ emit_reload_insns (insn)
rtx
output_address_reload_insns
[
MAX_RECOG_OPERANDS
];
rtx
output_address_reload_insns
[
MAX_RECOG_OPERANDS
];
rtx
operand_reload_insns
=
0
;
rtx
operand_reload_insns
=
0
;
rtx
other_operand_reload_insns
=
0
;
rtx
other_operand_reload_insns
=
0
;
rtx
other_output_reload_insns
=
0
;
rtx
following_insn
=
NEXT_INSN
(
insn
);
rtx
following_insn
=
NEXT_INSN
(
insn
);
rtx
before_insn
=
insn
;
rtx
before_insn
=
insn
;
int
special
;
int
special
;
...
@@ -6288,7 +6289,10 @@ emit_reload_insns (insn)
...
@@ -6288,7 +6289,10 @@ emit_reload_insns (insn)
if
(
GET_CODE
(
insn
)
==
JUMP_INSN
)
if
(
GET_CODE
(
insn
)
==
JUMP_INSN
)
abort
();
abort
();
push_to_sequence
(
output_reload_insns
[
reload_opnum
[
j
]]);
if
(
reload_when_needed
[
j
]
==
RELOAD_OTHER
)
push_to_sequence
(
other_output_reload_insns
);
else
push_to_sequence
(
output_reload_insns
[
reload_opnum
[
j
]]);
/* Determine the mode to reload in.
/* Determine the mode to reload in.
See comments above (for input reloading). */
See comments above (for input reloading). */
...
@@ -6432,7 +6436,11 @@ emit_reload_insns (insn)
...
@@ -6432,7 +6436,11 @@ emit_reload_insns (insn)
new_spill_reg_store
[
reload_spill_index
[
j
]]
=
p
;
new_spill_reg_store
[
reload_spill_index
[
j
]]
=
p
;
}
}
output_reload_insns
[
reload_opnum
[
j
]]
=
get_insns
();
if
(
reload_when_needed
[
j
]
==
RELOAD_OTHER
)
other_output_reload_insns
=
get_insns
();
else
output_reload_insns
[
reload_opnum
[
j
]]
=
get_insns
();
end_sequence
();
end_sequence
();
}
}
}
}
...
@@ -6455,7 +6463,9 @@ emit_reload_insns (insn)
...
@@ -6455,7 +6463,9 @@ emit_reload_insns (insn)
After the insn being reloaded, we write the following:
After the insn being reloaded, we write the following:
For each operand, any RELOAD_FOR_OUTPUT_ADDRESS reload followed by
For each operand, any RELOAD_FOR_OUTPUT_ADDRESS reload followed by
the RELOAD_FOR_OUTPUT reload for that operand. */
the RELOAD_FOR_OUTPUT reload for that operand.
Any RELOAD_OTHER output reloads. */
emit_insns_before
(
other_input_address_reload_insns
,
before_insn
);
emit_insns_before
(
other_input_address_reload_insns
,
before_insn
);
emit_insns_before
(
other_input_reload_insns
,
before_insn
);
emit_insns_before
(
other_input_reload_insns
,
before_insn
);
...
@@ -6475,6 +6485,8 @@ emit_reload_insns (insn)
...
@@ -6475,6 +6485,8 @@ emit_reload_insns (insn)
emit_insns_before
(
output_reload_insns
[
j
],
following_insn
);
emit_insns_before
(
output_reload_insns
[
j
],
following_insn
);
}
}
emit_insns_before
(
other_output_reload_insns
,
following_insn
);
/* Move death notes from INSN
/* Move death notes from INSN
to output-operand-address and output reload insns. */
to output-operand-address and output reload insns. */
#ifdef PRESERVE_DEATH_INFO_REGNO_P
#ifdef PRESERVE_DEATH_INFO_REGNO_P
...
...
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