Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/47725
Registo completo
Campo DC | Valor | Idioma |
---|---|---|
dc.contributor.advisor | Frade, M. J. | por |
dc.contributor.advisor | Pinto, Luís F. | por |
dc.contributor.author | Azevedo, Marta Vasconcelos Castro | por |
dc.date.accessioned | 2017-11-23T16:09:14Z | - |
dc.date.available | 2017-11-23T16:09:14Z | - |
dc.date.issued | 2017 | - |
dc.date.submitted | 2017 | - |
dc.identifier.uri | https://hdl.handle.net/1822/47725 | - |
dc.description | Dissertação de mestrado em Computer Science | por |
dc.description.abstract | A common practice in compiler design is to have an intermediate representation of the source code in Static Single-Assignment (SSA) form in order to simplify the code optimization process and make it more efficient. Generally, one says that an imperative program is in SSA form if each variable is assigned exactly once. In this thesis we study the central ideas of SSA-programs in the context of a simple imperative language including jump instructions. The focus of this work is the proof of correctness of a translation from programs of the source imperative language into the SSA format. In particular, we formally introduce the syntax and the semantics of the source imperative language (GL) and the SSA language; we define and implement a function that translates from source imperative programs into SSA-programs; we develop an alternative operational semantics, in order to be able to relate the execution of a source program and of its SSA translation; we prove soundness and completeness results for the translation, relatively to the alternative operational semantics, and from these results we prove correctness of the translation relatively to the initial small-step semantics. | por |
dc.description.abstract | Uma prática comum no design de compiladores é ter uma representação intermédia do código fonte em formato Static Single Assigment (SSA), de modo a facilitar o processo subsequente de análise e optimização de código. Em termos gerais, diz-se que um programa imperativo está no formato SSA se cada variável do programa é atribuída exatamente uma vez. Nesta tese estudamos as ideias principais do SSA no contexto de uma linguagem imperativa simples com instruções de salto. O foco deste trabalho é a prova de correcção de uma tradução dos programas fonte para formato SSA. Concretamente, definimos formalmente a sintaxe e a semântica da linguagem fonte (GL) e da linguagem em formato SSA; definimos e implementamos a função de tradução; desenvolvemos semânticas operacionais alternativas de modo a permitir relacionar a execução do programa fonte com a sua tradução SSA; provamos a idoneidade e a completude do processo de tradução relativamente às semânticas alternativas definidas; e a partir destes resultados demonstramos a correção da tradução em ordem às semânticas operacionais estruturais definidas inicialmente. | por |
dc.language.iso | eng | por |
dc.rights | openAccess | por |
dc.title | Correct translation of imperative programs to single assignment form | por |
dc.title.alternative | Tradução correta de programas imperativos para a forma single assignment | por |
dc.type | masterThesis | eng |
dc.identifier.tid | 201616149 | por |
thesis.degree.grantor | Universidade do Minho | por |
sdum.degree.grade | 15 valores | por |
sdum.uoei | Escola de Engenharia | por |
dc.subject.fos | Engenharia e Tecnologia::Outras Engenharias e Tecnologias | por |
Aparece nas coleções: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
Marta Vasconcelos Castro Azevedo.pdf | 533,44 kB | Adobe PDF | Ver/Abrir |