Commit Graph

41 Commits

Author SHA1 Message Date
cfreksen
6398047e64
Try to solve the halting problem. 2017-10-29 22:31:07 +01:00
cfreksen
ce61eb151e
Handle load/store with null. 2017-10-29 22:03:31 +01:00
cfreksen
7deddce45d
Handle more types for Alloca. 2017-10-29 22:00:18 +01:00
cfreksen
5f7a5bf26c
Implement load. 2017-10-29 21:40:26 +01:00
cfreksen
f04d22c27e
Add size check to Store. 2017-10-29 21:34:12 +01:00
cfreksen
1dc258d26f
Rename field in ll.Load. 2017-10-29 21:33:29 +01:00
cfreksen
4fca74304a
Implement store. 2017-10-29 21:23:57 +01:00
cfreksen
dc1c38fbe2
Add Store case to insn2s. 2017-10-29 21:21:43 +01:00
cfreksen
46f5bf9fc7
Rename memory to heap. 2017-10-29 21:21:25 +01:00
cfreksen
6b6dd9cf68
Use more explicite garbage placholder value. 2017-10-29 21:10:22 +01:00
cfreksen
13017ef95b
Add alloca (for simple types). 2017-10-29 21:08:14 +01:00
cfreksen
648c718843
Add missing insn cases as TODOs. 2017-10-29 20:44:17 +01:00
cfreksen
0aa427ac02
Add function calls. 2017-10-29 20:39:58 +01:00
cfreksen
d48042b01e
Add bitcast. 2017-10-29 19:42:40 +01:00
cfreksen
b509ba2595
Add zext and ptrtoint. 2017-10-29 19:39:09 +01:00
cfreksen
4aeb986d75
Add conditional branching. 2017-10-29 19:28:28 +01:00
cfreksen
344609e54b
Print when evaluating terminators. 2017-10-29 19:15:27 +01:00
cfreksen
7213c32f93
Remove unused variable. 2017-10-29 19:01:29 +01:00
cfreksen
599dcf5919
Add the remaining comparisons for icmp. 2017-10-29 19:00:10 +01:00
cfreksen
636b1e5fa1
Improve some error messages. 2017-10-29 18:57:48 +01:00
cfreksen
d7598a0039
Add icmp for some comparisons. 2017-10-29 18:57:13 +01:00
cfreksen
138eb3fc72
Refactor handling of Ret. 2017-10-29 18:42:56 +01:00
cfreksen
a4885103c0
Add unconditional branching. 2017-10-29 18:42:38 +01:00
cfreksen
05782f6fca
Use a dictionary to store named blocks. 2017-10-29 18:23:12 +01:00
cfreksen
a7b3db8c1d
Add more cases for prettyprinting types. 2017-10-29 18:22:37 +01:00
cfreksen
05be04891b
Remove __main__ functionality from parser.py.
It was only there as scaffolding.
2017-10-29 18:05:59 +01:00
cfreksen
7319479e9a
Add more binops to stepper. 2017-10-29 16:02:00 +01:00
cfreksen
1c48ccb6c6
Add stepper skeleton. 2017-10-29 15:18:14 +01:00
cfreksen
1341911459
Add incomplete LLVM pretty printing. 2017-10-29 15:17:45 +01:00
cfreksen
1ffe310f97
Be more precise about operands in AST. 2017-10-29 14:20:12 +01:00
cfreksen
8128f72264
Update method names for parser and add 2 docstrings. 2017-10-29 13:58:59 +01:00
cfreksen
abebb940f6
Move llvm AST into own module. 2017-10-29 13:52:19 +01:00
cfreksen
34964c186b
Update parser. 2017-10-29 13:46:12 +01:00
cfreksen
b6a7eefc94
Add WIP parser. 2017-10-29 02:56:26 +02:00
cfreksen
da3de495d1
Add more to gitignore. 2017-10-29 02:55:40 +02:00
cfreksen
d6d837a627
Add generated parser files to gitignore. 2017-10-29 02:33:13 +02:00
cfreksen
ffef3dd201
Add better string support. 2017-10-29 01:44:58 +02:00
cfreksen
61abaf22bd
Add a small gitignore. 2017-10-29 01:44:23 +02:00
cfreksen
1be5b573b5
Add initial lexer. 2017-10-29 01:07:34 +02:00
cfreksen
f960445524
Add PLY to requirements.txt. 2017-10-29 01:06:35 +02:00
cfreksen
49710158f2
Initial commit with license. 2017-10-28 23:37:44 +02:00