Necessary Conditions for Constraint-based Register Allocation and Instruction Scheduling

Compilers translate code from a source language to a target language. Generating optimal code is thereby considered as infeasible due to the runtime overhead. A rather new approach is the implementation of a compiler by using Constraint Programming: in a constraint-based system, a problem is modeled...

Full description

Bibliographic Details
Main Author: Tran, Kim-Anh
Format: Others
Language:English
Published: Uppsala universitet, Institutionen för informationsteknologi 2013
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-209267
id ndltd-UPSALLA1-oai-DiVA.org-uu-209267
record_format oai_dc
spelling ndltd-UPSALLA1-oai-DiVA.org-uu-2092672013-12-03T04:38:57ZNecessary Conditions for Constraint-based Register Allocation and Instruction SchedulingengTran, Kim-AnhUppsala universitet, Institutionen för informationsteknologi2013Compilers translate code from a source language to a target language. Generating optimal code is thereby considered as infeasible due to the runtime overhead. A rather new approach is the implementation of a compiler by using Constraint Programming: in a constraint-based system, a problem is modeled by defining variables and relations among these variables (that is, constraints) that have to be satisfied. The application of a constraint-based compiler offers the potential of generating robust and optimal code. The performance of the system depends on the modeling choices and constraints that are enforced. One way of refining a constraint model is the addition of implied constraints. Implied constraints model logically redundant relations among variables, but provide distinct perspectives on the problem that might help to cut down the search effort. The actual impact of implied constraints is difficult to foresee, as they are tightly connected with the modeling choices made otherwise.This thesis investigates and evaluates a set of implied constraints that address register allocation (decision where to store data) and instruction scheduling (decision when to execute instructions) within an existing constraint-based compiler back-end. It provides insights into the impact on the code generation problem and discusses assets and drawbacks of the set of introduced constraints Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-209267IT ; 13 073application/pdfinfo:eu-repo/semantics/openAccess
collection NDLTD
language English
format Others
sources NDLTD
description Compilers translate code from a source language to a target language. Generating optimal code is thereby considered as infeasible due to the runtime overhead. A rather new approach is the implementation of a compiler by using Constraint Programming: in a constraint-based system, a problem is modeled by defining variables and relations among these variables (that is, constraints) that have to be satisfied. The application of a constraint-based compiler offers the potential of generating robust and optimal code. The performance of the system depends on the modeling choices and constraints that are enforced. One way of refining a constraint model is the addition of implied constraints. Implied constraints model logically redundant relations among variables, but provide distinct perspectives on the problem that might help to cut down the search effort. The actual impact of implied constraints is difficult to foresee, as they are tightly connected with the modeling choices made otherwise.This thesis investigates and evaluates a set of implied constraints that address register allocation (decision where to store data) and instruction scheduling (decision when to execute instructions) within an existing constraint-based compiler back-end. It provides insights into the impact on the code generation problem and discusses assets and drawbacks of the set of introduced constraints
author Tran, Kim-Anh
spellingShingle Tran, Kim-Anh
Necessary Conditions for Constraint-based Register Allocation and Instruction Scheduling
author_facet Tran, Kim-Anh
author_sort Tran, Kim-Anh
title Necessary Conditions for Constraint-based Register Allocation and Instruction Scheduling
title_short Necessary Conditions for Constraint-based Register Allocation and Instruction Scheduling
title_full Necessary Conditions for Constraint-based Register Allocation and Instruction Scheduling
title_fullStr Necessary Conditions for Constraint-based Register Allocation and Instruction Scheduling
title_full_unstemmed Necessary Conditions for Constraint-based Register Allocation and Instruction Scheduling
title_sort necessary conditions for constraint-based register allocation and instruction scheduling
publisher Uppsala universitet, Institutionen för informationsteknologi
publishDate 2013
url http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-209267
work_keys_str_mv AT trankimanh necessaryconditionsforconstraintbasedregisterallocationandinstructionscheduling
_version_ 1716616687197880320