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
1ad72cef
Commit
1ad72cef
authored
Aug 05, 2001
by
Bernd Schmidt
Committed by
Bernd Schmidt
Aug 05, 2001
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix gen_nop_type abort
From-SVN: r44647
parent
703cf211
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
35 additions
and
14 deletions
+35
-14
gcc/ChangeLog
+3
-0
gcc/config/ia64/ia64.c
+32
-14
No files found.
gcc/ChangeLog
View file @
1ad72cef
...
...
@@ -12,6 +12,9 @@
(
do_spill
,
do_restore
)
:
Use
it
to
add
REG_INC
note
.
*
config
/
ia64
/
ia64
.
md
(
movti_internal
)
:
Add
REG_INC
notes
as
needed
.
*
config
/
ia64
/
ia64
.
c
(
ia64_sched_reorder
)
:
Defer
scheduling
of
asms
if
other
insns
are
available
.
2001
-
08
-
04
Hans
-
Peter
Nilsson
<
hp
@bitrange
.
com
>
*
config
/
sh
/
sh
.
c
(
sh_asm_named_section
)
:
Fix
typo
in
align
...
...
gcc/config/ia64/ia64.c
View file @
1ad72cef
...
...
@@ -5982,10 +5982,10 @@ ia64_sched_reorder (dump, sched_verbose, ready, pn_ready,
int
*
pn_ready
;
int
reorder_type
,
clock_var
;
{
int
n_asms
;
int
n_ready
=
*
pn_ready
;
rtx
*
e_ready
=
ready
+
n_ready
;
rtx
*
insnp
;
rtx
highest
;
if
(
sched_verbose
)
{
...
...
@@ -6029,7 +6029,7 @@ ia64_sched_reorder (dump, sched_verbose, ready, pn_ready,
maybe_rotate
(
sched_verbose
?
dump
:
NULL
);
/* First, move all USEs, CLOBBERs and other crud out of the way. */
highest
=
ready
[
n_ready
-
1
]
;
n_asms
=
0
;
for
(
insnp
=
ready
;
insnp
<
e_ready
;
insnp
++
)
if
(
insnp
<
e_ready
)
{
...
...
@@ -6037,24 +6037,42 @@ ia64_sched_reorder (dump, sched_verbose, ready, pn_ready,
enum
attr_type
t
=
ia64_safe_type
(
insn
);
if
(
t
==
TYPE_UNKNOWN
)
{
highest
=
ready
[
n_ready
-
1
];
ready
[
n_ready
-
1
]
=
insn
;
*
insnp
=
highest
;
if
(
ia64_final_schedule
&&
group_barrier_needed_p
(
insn
))
if
(
GET_CODE
(
PATTERN
(
insn
))
==
ASM_INPUT
||
asm_noperands
(
PATTERN
(
insn
))
>=
0
)
{
schedule_stop
(
sched_verbose
?
dump
:
NULL
);
sched_data
.
last_was_stop
=
1
;
maybe_rotate
(
sched_verbose
?
dump
:
NULL
);
rtx
lowest
=
ready
[
0
];
ready
[
0
]
=
insn
;
*
insnp
=
lowest
;
n_asms
++
;
}
else
if
(
GET_CODE
(
PATTERN
(
insn
))
==
ASM_INPUT
||
asm_noperands
(
PATTERN
(
insn
))
>=
0
)
else
{
/* It must be an asm of some kind. */
cycle_end_fill_slots
(
sched_verbose
?
dump
:
NULL
);
rtx
highest
=
ready
[
n_ready
-
1
];
ready
[
n_ready
-
1
]
=
insn
;
*
insnp
=
highest
;
if
(
ia64_final_schedule
&&
group_barrier_needed_p
(
insn
))
{
schedule_stop
(
sched_verbose
?
dump
:
NULL
);
sched_data
.
last_was_stop
=
1
;
maybe_rotate
(
sched_verbose
?
dump
:
NULL
);
}
return
1
;
}
return
1
;
}
}
if
(
n_asms
<
n_ready
)
{
/* Some normal insns to process. Skip the asms. */
ready
+=
n_asms
;
n_ready
-=
n_asms
;
}
else
if
(
n_ready
>
0
)
{
/* Only asm insns left. */
cycle_end_fill_slots
(
sched_verbose
?
dump
:
NULL
);
return
1
;
}
if
(
ia64_final_schedule
)
{
...
...
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