Summary Files Commits Branches @commit @diff @stats
path: root / Year 2 / Implementation of Programming Languages / Transpiler / src / main.cpp
diff options
context:
space:
mode:
Commit7cc99d560d3f36996dde0f73becd57445fc54d11 (patch)
Author
 Syndamia <kamen@syndamia.com>
2023-02-08 12:34:27 +0200
Committer
 Syndamia <kamen@syndamia.com>
2023-02-08 12:34:27 +0200
Files8284219e1186a554cf5050194e72a18708c6cdee /Year 2/Implementation of Programming Languages/Transpiler/src/main.cpp
uni-projects-7cc99d560d3f36996dde0f73becd57445fc54d11.tar
uni-projects-7cc99d560d3f36996dde0f73becd57445fc54d11.tar.gz
uni-projects-7cc99d560d3f36996dde0f73becd57445fc54d11.zip
Parent90d86e8072e7246374076961a26cfd1024ac67f7 (diff)
[IPL/T] Added unfinished makefile and frontend
1 files changed, 2 insertions, 23 deletions
-rw-r--r--Year 2/Implementation of Programming Languages/Transpiler/src/main.cpp25
diff --git a/Year 2/Implementation of Programming Languages/Transpiler/src/main.cpp b/Year 2/Implementation of Programming Languages/Transpiler/src/main.cpp
index bc651e6..e382161 100644
--- a/Year 2/Implementation of Programming Languages/Transpiler/src/main.cpp
+++ b/Year 2/Implementation of Programming Languages/Transpiler/src/main.cpp
@@ -17,33 +17,12 @@ void freeNodes(Value* v) {
int main() {
LLVMVisitor visitor("testout.ll");
std::deque<Value*> nodes = {
- new Funcall("defvar", {
- new Name("myvar"),
- new Integer(19)
- }),
- new Funcall("+", {
- new Float(1),
- new Funcall("-", { new Float(5), new Float(10) }),
- new Float(2),
- new Float(123) }),
- new Funcall("defun", {
- new Name("notfun"),
- new List({new Name("a"), new Name("b")}),
- new Funcall("+", {
- new Integer(7),
- new Name("a"),
- new Name("b")
- }),
- new Funcall("if", {
- new Funcall(">=", { new Integer(5), new Integer(6) }),
- new Funcall("+", { new Integer(1), new Integer(2) }),
- new Funcall("-", { new Integer(3), new Integer(4) })
- })})
+ new Funcall("defvar", { new Name("myvar"), new Float(4.956) })
};
for (Value* n : nodes) {
n->Visit(visitor);
}
- visitor.insertMain();
+ // visitor.insertMain();
for (Value* n : nodes)
freeNodes(n);