



Modifying Existing GCC Port to OpenRISC.
by Unknown on Apr 12, 2004 |
Not available! | ||
Dear all,
I am working on a project that involves using the
existing gcc port to OpenRISC.
However for our work we are modifying the definition
of the OpenRISC architecture to make it a 2-wide
EPIC-style(loose VLIW) machine. We are not modifying
the ISA or the functional units etc. at all since we
want to reuse the existing tools. However, in order to
get "correct" code generated for the 2-wide EPIC
version that we are defining I need to do the
following:
ENSURE that two instructions written next to each
other are always independent.
Essentially do this:
While scheduling make sure that two instructions next
to each other are independent, so the scheduler would
insert no-ops if it could not find an independent
instruction to co-schedule with this instruction.
At this point the scheduler also needs to make sure
that two instructions next to each other do not
contend for the same resources. So it needs to look
for both resource constraint and dependence
constraint.
These constraints are very similar to EPIC constraints
like in IA-64.
Note, however that I don't need to specify delays
betweeen instruction words (like in VLIW). I also
don't have a special encoding like the IA-64 does..
like bundles and groups.
I get a feeling that changes I need to make are very
simple and similar to already existing changes for
IA-64... I probably don't need to change machine
description much or the Instruction specification...my
only changes need to be related to the way the
scheduling is done...
Can someone please guide me as to how I can go about
making these modifications. Do I have to add/change
scheduler code or just modify the
description/configuration of the target architecture?
I did come across a variable that's called issue_rate
this is set to the value of "1" in the file
haifa-sched.c as follows:
/* Initialize issue_rate. */
if (targetm.sched.issue_rate)
issue_rate = (*targetm.sched.issue_rate) ();
else
issue_rate = 1;
Do I need to change this to 2 to make it work?
Any help will be appreciated.
Thanks,
LEARNER
__________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online by April 15th
http://taxes.yahoo.com/filing.html
|



