This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Selective scheduling pass - target changes (ia64 & rs6000) [3/3]
- From: Andrey Belevantsev <abel at ispras dot ru>
- To: Steve Ellcey <sje at cup dot hp dot com>
- Cc: gcc-patches at gcc dot gnu dot org, wilson at tuliptree dot org, vmakarov at redhat dot com, Alexander Monakov <amonakov at ispras dot ru>
- Date: Fri, 26 Sep 2008 17:05:26 +0400
- Subject: Re: Selective scheduling pass - target changes (ia64 & rs6000) [3/3]
- References: <1222379001.869560.14444.nullmailer@hpsje.cup.hp.com>
sje@cup.hp.com wrote:
I have started looking at the IA64 specific parts of the selective
scheduling branch. I still need some more time but I was wondering if you
could update it so that it is up-to-date with respect to the main trunk.
I tried to apply the patch so I could look at some of the changes with
more context and ia64.c would not apply cleanly.
We (Alexander and myself) just did it, so current sel-sched branch has
the version of config/ia64/* files that we'd like to see on trunk.
There are some places where lines start with spaces instead of tabs even
though they are indented enough to use tabs and a couple of functions
(ia64_sched_init and ia64_sched_final) had lines where the only change
was from tabs to spaces.
This is fixed on the branch.
In ia64_clear_sched_context we free _sc->prev_cycle_state, I was
wondering if we should set it to NULL after freeing it. Or are
we going to free _sc right after this so that it doesn't matter?
Sometimes we free it and sometimes we don't, but I agree with you that
it would be clearer to set it to NULL. I will prepare a patch and check
it in the branch.
Is the mflag_sched_spec_verbose flag really needed? It looks like
all it does is dump output to stderr intead of the normal dump file.
No, it is not needed, but it is also not present on the branch. We have
reviewed the other introduced flags. We will remove -msel-sched* flags
related to speculation, as we can use the existing flags, and we will
remove mstop-bit-before-check flag, as it doesn't improve performance in
average.
In get_mode_no_for_insn, there is a check:
(AR_CCV_REGNUM <= REGNO (reg) && REGNO (reg) <= AR_EC_REGNUM)
I think this should be replaced with AR_REGNO_P ().
Fixed on the branch. Thanks a lot for your efforts!
Andrey