【文件属性】:
文件名称:magma-jit:MAGMA 的原型 JIT 编译器
文件大小:50KB
文件格式:ZIP
更新时间:2021-06-01 00:18:15
C++
岩浆吉特
用于MAGMA的JIT原型编译器(请参阅 )。
要求
野牛(在 3.0.4 上测试)
Flex(在 2.5.3 上测试)
LLVM 3.5(在 3.5.1 上测试)
构建说明
$ make
$ ./tests
ok tests/assert.m
ok tests/assign.m
ok tests/break.m
ok tests/change-type.m
ok tests/func-loop-bug.m
ok tests/func-scope-bug.m
ok tests/func.m
ok tests/if.m
ok tests/iter.m
ok tests/new-scope.m
ok tests/op.m
ok tests/op_jmp.m
ok tests/print.m
ok tests/proc.m
【文件预览】:
magma-jit-master
----Parser.y(12KB)
----Tokens.l(4KB)
----Printer.hpp(701B)
----Visitor.hpp(471B)
----Printer.cpp(9KB)
----examples()
--------fib.m(450B)
----main.cpp(2KB)
----LICENSE(1KB)
----CodeGen.cpp(53KB)
----AST.hpp(11KB)
----test(804B)
----README.md(1KB)
----Makefile(820B)
----AST.cpp(3KB)
----Scope.hpp(6KB)
----ContextLookAhead.hpp(1KB)
----SequenceType.cpp(196B)
----ContextLookAhead.cpp(7KB)
----ASTNodeTypes.def(716B)
----tests()
--------change-type.m(267B)
--------seq.m(1KB)
--------op.m(2KB)
--------func-loop-bug.out(11B)
--------iter.out(22B)
--------print.out(174B)
--------new-scope.m(748B)
--------while.m(315B)
--------seq.out(147B)
--------string.out(21B)
--------func-scope-bug.m(322B)
--------func.m(2KB)
--------return.m(861B)
--------proc.m(670B)
--------assign.m(183B)
--------func-loop-bug.m(425B)
--------break.m(787B)
--------repeat.m(198B)
--------assert.m(164B)
--------print.m(662B)
--------assert.out(25B)
--------tuple.m(222B)
--------if.m(331B)
--------types.m(264B)
--------iter.m(1KB)
--------string.m(289B)
----MagmaType.hpp(6KB)
----Error.cpp(549B)
----CodeGen.hpp(3KB)
----Error.hpp(632B)
----MagmaType.cpp(17KB)
----SequenceType.hpp(643B)
----Context.hpp(7KB)