|need some insights (dynamic code genration on DSP's) email@example.com (Nils Pipenbrinck) (2007-08-07)|
|Re: need some insights (dynamic code genration on DSP's) firstname.lastname@example.org (Eliot Miranda) (2007-08-09)|
|From:||Eliot Miranda <email@example.com>|
|Date:||Thu, 09 Aug 2007 13:56:52 -0700|
|Posted-Date:||09 Aug 2007 17:07:34 EDT|
I have no expertise here but I have worked with Smalltalk JITs
for many years. Since no one else has said anything I'll risk making
a fool of myself...
Assuming you can deal with a loop as a sequence of instructions, then
to deal with modified registers I imagine you'd separate the read side
of the register from the write side and add the ability to represent
the constraint that the read side of the register is only valid some
number of cycles after the last access to the write side.
If you're familiar with the use of PHI nodes in Static Single
Assignment then within a loop containing a register modification (loop
counter or pointer) there would be three variables
rNr identifier for reading the register rN on entry to the loop
rNw identifier for writing teh register rN within the loop
rNr' identifier for reading the register rN after writing it via rNw
M the number of cycles it takes for the value written to rNw to
propagate to rNr'
Then the constraints are that within the loop
rNr can only be read before rNw
rNr' can only be used M cycles before rNw
rNw can only be used M cycles before the end of the loop
or rNr can only be used M cycles after the start of the loop
or the sum of the cycles between the start of the loop and the first
read of rNr and the cycles between the last use of rNw and the end of
the loop must be at least M
Nils Pipenbrinck wrote:
> My goal is to write a dynamic code generator for multi-media
> applications running on a DSP (TI C64Plus). Just simple rendering
> loops - two times nested will be the most complex thing I'll ever have
> to deal with. ...
The surest sign that intelligent life exists elsewhere in Calvin &
the universe is that none of it has tried to contact us. Hobbes.
Eliot ,,,^..^,,, Smalltalk - scene not herd
Return to the
Search the comp.compilers archives again.