diff options
| author | Eugen Wissner <belka@caraus.de> | 2024-09-08 02:08:13 +0200 |
|---|---|---|
| committer | Eugen Wissner <belka@caraus.de> | 2024-09-08 02:08:13 +0200 |
| commit | 1cbbef19afcf997315431e3aa45f824fe8a8a0e7 (patch) | |
| tree | 8813df9aab3185a9c2b778499ecb041a6c58cead /lib/Language/Elna/CodeGenerator.hs | |
| parent | a625bbff505c912f8a19f62bcb92313a63c60ed4 (diff) | |
| download | elna-1cbbef19afcf997315431e3aa45f824fe8a8a0e7.tar.gz | |
Stub the implementation for all phases
Diffstat (limited to 'lib/Language/Elna/CodeGenerator.hs')
| -rw-r--r-- | lib/Language/Elna/CodeGenerator.hs | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/Language/Elna/CodeGenerator.hs b/lib/Language/Elna/CodeGenerator.hs index cdbfc01..6097843 100644 --- a/lib/Language/Elna/CodeGenerator.hs +++ b/lib/Language/Elna/CodeGenerator.hs @@ -1,3 +1,16 @@ module Language.Elna.CodeGenerator - ( + ( generateCode ) where + +import Data.Vector (Vector) +import qualified Data.Vector as Vector +import Language.Elna.Intermediate (Quadruple(..)) +import qualified Language.Elna.Architecture.RiscV as RiscV +import Language.Elna.SymbolTable (SymbolTable) + +generateCode :: SymbolTable -> Vector Quadruple -> Vector RiscV.Instruction +generateCode _ _ = Vector.fromList + [ RiscV.Instruction RiscV.OpImm $ RiscV.I RiscV.A0 RiscV.ADDI RiscV.Zero 0 + , RiscV.Instruction RiscV.OpImm $ RiscV.I RiscV.A7 RiscV.ADDI RiscV.Zero 93 + , RiscV.Instruction RiscV.System $ RiscV.Type RiscV.Zero RiscV.PRIV RiscV.Zero RiscV.ECALL + ] |
