DocumentCode
2954031
Title
Compiling Esterel into sequential code
Author
Edwards, Stephen A.
Author_Institution
Synopsys Inc., Mountain View, CA, USA
fYear
1999
fDate
1999
Firstpage
147
Lastpage
151
Abstract
This paper presents a novel compiler for Esterel, a concurrent synchronous imperative language. It generates fast, small object code by compiling away concurrency, producing a single C function requiring no operating system support for threads. It translates an Esterel program into an acyclic concurrent control-flow graph from which code is synthesized that runs instructions in an order respecting inter-thread communication. Exceptions and preemption constructs become conditional branches. Variables save control state; conditional branches restore it. Although designed for Esterel, this approach could be applied to compiling other synchronous concurrent languages
Keywords
formal specification; program compilers; specification languages; Esterel compiling; acyclic concurrent control-flow graph; concurrent synchronous imperative language; conditional branches; inter-thread communication; object code; sequential code; single C function; synchronous concurrent languages; Circuit testing; Combinational circuits; Computer hacking; Concurrent computing; Sleep; Tin; Tree graphs; Wires; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Hardware/Software Codesign, 1999. (CODES '99) Proceedings of the Seventh International Workshop on
Conference_Location
Rome
ISSN
1092-6100
Print_ISBN
1-58113-132-1
Type
conf
DOI
10.1109/HSC.1999.777410
Filename
777410
Link To Document