This is the mail archive of the
mailing list for the GCC project.
- From: "袁立威" <xzfkiller at gmail dot com>
- To: gcc at gcc dot gnu dot org
- Date: Mon, 8 Oct 2007 17:06:37 +0800
- Subject: Scheduling problem
I'm a guy working on IA64 with gcc version 4.1.1, and I need to do
some instrumentation to do information flow tracking.
Instrumentation is insert after register allocation and before the
second scheduling, I suppose gcc will automatic maintain data flow,
and it seems to be
except one situation:
consider the following code:
when I can't find dead predicate register, I find a general register
and save pr into the general reigster, now pr can be freely used,
after using, I restore
the previous pr.
This code is right, but after scheduling. It will change into:
now p7 is not the right value set by the cmp because it is restored to
the original value.
How this can be solve, or how to tell gcc that this 'mov pr'
instruction must after '(p7) something2'?