TY - GEN
T1 - Typing assembly programs with explicit forwarding
AU - Beringer, Lennart
N1 - Publisher Copyright:
© Springer-Verlag Berlin Heidelberg 2001.
PY - 2001
Y1 - 2001
N2 - We consider processor architectures where communication of values is achieved through operand queues instead of registers. Explicit forwarding tags in an instruction's code denote the source of its operands and the destination of its result. We give operational models for sequential and distributed execution, where no assumptions are made about the relative speed of functional units. We introduce type systems which ensure that programs use the forwarding mechanism in a coordinated way, ruling out various run time hazards. Deadlocks due to operand starvation, operand queue mismatches, non-determinism due to race conditions and deadlock due to the finite length of operand queues are eliminated. Types are based on the shape of operand queue configurations, abstracting from the value of an operand and from the order of items in operand queues. Extending ideas from the literature relating program fragments adjacent in the control flow graph, the type system is generalised to forwarding across basic blocks.
AB - We consider processor architectures where communication of values is achieved through operand queues instead of registers. Explicit forwarding tags in an instruction's code denote the source of its operands and the destination of its result. We give operational models for sequential and distributed execution, where no assumptions are made about the relative speed of functional units. We introduce type systems which ensure that programs use the forwarding mechanism in a coordinated way, ruling out various run time hazards. Deadlocks due to operand starvation, operand queue mismatches, non-determinism due to race conditions and deadlock due to the finite length of operand queues are eliminated. Types are based on the shape of operand queue configurations, abstracting from the value of an operand and from the order of items in operand queues. Extending ideas from the literature relating program fragments adjacent in the control flow graph, the type system is generalised to forwarding across basic blocks.
UR - http://www.scopus.com/inward/record.url?scp=84979031640&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84979031640&partnerID=8YFLogxK
U2 - 10.1007/3-540-45500-0_26
DO - 10.1007/3-540-45500-0_26
M3 - Conference contribution
AN - SCOPUS:84979031640
SN - 3540427368
SN - 9783540427360
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 514
EP - 534
BT - Theoretical Aspects of Computer Software - 4th International Symposium, TACS 2001, Proceedings
A2 - Kobayashi, Naoki
A2 - Pierce, Benjamin C.
PB - Springer Verlag
T2 - 4th International Symposium on Theoretical Aspects of Computer Software, TACS 2001
Y2 - 29 October 2001 through 31 October 2001
ER -