Skip to content

Conversation

@boki1
Copy link
Owner

@boki1 boki1 commented Jun 9, 2021

Description

This task is the key problem that has to be solved in order to implement the code generation stage. The base structure responsible for translating the IR is called an emitter. It is the abstraction of all algorithms related to the target machine code generation such as register allocation (#58) and instruction selection (#59).

Task

Design this infrastructure in such a way that it is most suited for the project. Following that, implement the first stage of the code generation stage which is translating the three-address IR into actual target machine native assembly.

Definition of Done

Coming up with a system that utilizes most of the language features (the implementing language - C++17) and most of the already written code. Additionally, it should be agreed upon as suiting and satisfying.

@boki1 boki1 added the enhancement New feature or request label Jun 9, 2021
@boki1 boki1 added this to the The Return milestone Jun 9, 2021
@vkabadzhova vkabadzhova force-pushed the KIVI-70-instruction-selection branch from e84ca77 to 6f4eae4 Compare June 10, 2021 06:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants