├── .gitignore ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── ast ├── addition_expression.h ├── all.h ├── assignment_expression.h ├── block.h ├── bool_literal.h ├── division_expression.h ├── double_expression.h ├── dynamic_access_expression.h ├── dynamic_store_expression.h ├── equality_expression.h ├── expression.h ├── expression_statement.h ├── for_cond.h ├── func_call_expression.h ├── funcdecl.h ├── gt_expression.h ├── gte_expression.h ├── if_statement.h ├── inequality_expression.h ├── integer_expression.h ├── list_literal_expression.h ├── lt_expression.h ├── lte_expression.h ├── multiplication_expression.h ├── node.h ├── not_expression.h ├── pre_assignment_op.h ├── return_statement.h ├── statement.h ├── static_access_expression.h ├── static_store_expression.h ├── string_expression.h ├── subtraction_expression.h ├── var_decl.h ├── variable_expression.h ├── visitor.h └── void_literal.h ├── bench ├── bench.sh ├── fib_45.dart ├── fib_45.js ├── fib_45.vvn.sh ├── loop_empty.js ├── loop_empty_cc.vvn.sh ├── loop_empty_hot.vvn.sh ├── loop_empty_interp.vvn.sh ├── loop_with_function_cc.vvn.sh ├── loop_with_function_hot.vvn.sh ├── loop_with_function_interp.vvn.sh ├── loop_with_garbagemem.js ├── loop_with_garbagemem_cc.vvn.sh ├── loop_with_ops_cc.vvn.sh ├── loop_with_ops_hot.vvn.sh ├── loop_with_ops_interp.vvn.sh ├── lowest_common_factor.js ├── lowest_common_factor.vvn ├── recurse_with_ops.vvn.sh └── repeat_functions.vvn.sh ├── error_compiler.cpp ├── error_compiler.h ├── firstcompile.cpp ├── firstcompile.h ├── function_usage.h ├── functions.h ├── heap.cpp ├── heap.h ├── main.cpp ├── makefile ├── optimize.cpp ├── optimize.h ├── parser.cpp ├── parser.h ├── runtime_error.cpp ├── runtime_error.h ├── scope.h ├── ssa ├── cfg.h ├── common_subexpression.cpp ├── common_subexpression.h ├── constant_inliner.cpp ├── constant_inliner.h ├── constant_propagation.cpp ├── constant_propagation.h ├── dominator_builder.cpp ├── dominator_builder.h ├── emitter.cpp ├── emitter.h ├── forward_visitor.cpp ├── forward_visitor.h ├── function_merge.cpp ├── function_merge.h ├── inliner.cpp ├── inliner.h ├── instruction_combiner.cpp ├── instruction_combiner.h ├── jmp_threader.cpp ├── jmp_threader.h ├── loop_invariant.cpp ├── loop_invariant.h ├── print_visitor.cpp ├── print_visitor.h ├── reg_alloc.cpp ├── reg_alloc.h ├── ssa.cpp ├── ssa.h ├── type_analysis.cpp ├── type_analysis.h ├── unused_code.cpp └── unused_code.h ├── stack.cpp ├── stack.h ├── std.cpp ├── std.h ├── test ├── assemble │ ├── doubles.vvn │ ├── instruction_combiner.vvn │ ├── jmpcc.vvn │ ├── lists.vvn │ ├── modeq.vvn │ ├── objects.vvn │ └── strings.vvn ├── deoptimize │ ├── ints.vvn │ ├── ints.vvn_expectederrors │ ├── strings.vvn │ └── strings.vvn_expectederrors ├── error │ ├── interpret_type_errors.vvn │ └── interpret_type_errors.vvn_expectederrors ├── interpret │ ├── doubles.vvn │ ├── lists.vvn │ ├── modeq.vvn │ ├── objects.vvn │ └── strings.vvn ├── parser │ ├── comments_test.vvn │ ├── control_flow.vvn │ ├── functions_test.vvn │ ├── fuzz_test.vvn │ ├── fuzz_test.vvn_expectederrors │ ├── fuzz_test_generate.js │ ├── onliner.vvn │ ├── recovery_test.vvn │ ├── recovery_test.vvn_expectederrors │ ├── strings.vvn │ └── terms.vvn ├── run.sh └── std │ ├── lists_test.vvn │ ├── objects_test.vvn │ └── strings_test.vvn ├── tokenizer.cpp ├── tokenizer.h ├── type_info.h ├── ui_runtime ├── app.cpp ├── matrix.cpp ├── matrix.h ├── styled_char.cpp └── styled_char.h ├── util.h ├── value.cpp ├── value.h └── visitor ├── assignment_producer.cpp ├── assignment_producer.h ├── interpreter.cpp ├── interpreter.h ├── print_visitor.cpp ├── print_visitor.h ├── ssa_builder.cpp └── ssa_builder.h /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/.gitignore -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/README.md -------------------------------------------------------------------------------- /ast/addition_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/addition_expression.h -------------------------------------------------------------------------------- /ast/all.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/all.h -------------------------------------------------------------------------------- /ast/assignment_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/assignment_expression.h -------------------------------------------------------------------------------- /ast/block.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/block.h -------------------------------------------------------------------------------- /ast/bool_literal.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/bool_literal.h -------------------------------------------------------------------------------- /ast/division_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/division_expression.h -------------------------------------------------------------------------------- /ast/double_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/double_expression.h -------------------------------------------------------------------------------- /ast/dynamic_access_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/dynamic_access_expression.h -------------------------------------------------------------------------------- /ast/dynamic_store_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/dynamic_store_expression.h -------------------------------------------------------------------------------- /ast/equality_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/equality_expression.h -------------------------------------------------------------------------------- /ast/expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/expression.h -------------------------------------------------------------------------------- /ast/expression_statement.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/expression_statement.h -------------------------------------------------------------------------------- /ast/for_cond.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/for_cond.h -------------------------------------------------------------------------------- /ast/func_call_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/func_call_expression.h -------------------------------------------------------------------------------- /ast/funcdecl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/funcdecl.h -------------------------------------------------------------------------------- /ast/gt_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/gt_expression.h -------------------------------------------------------------------------------- /ast/gte_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/gte_expression.h -------------------------------------------------------------------------------- /ast/if_statement.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/if_statement.h -------------------------------------------------------------------------------- /ast/inequality_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/inequality_expression.h -------------------------------------------------------------------------------- /ast/integer_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/integer_expression.h -------------------------------------------------------------------------------- /ast/list_literal_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/list_literal_expression.h -------------------------------------------------------------------------------- /ast/lt_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/lt_expression.h -------------------------------------------------------------------------------- /ast/lte_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/lte_expression.h -------------------------------------------------------------------------------- /ast/multiplication_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/multiplication_expression.h -------------------------------------------------------------------------------- /ast/node.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/node.h -------------------------------------------------------------------------------- /ast/not_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/not_expression.h -------------------------------------------------------------------------------- /ast/pre_assignment_op.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/pre_assignment_op.h -------------------------------------------------------------------------------- /ast/return_statement.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/return_statement.h -------------------------------------------------------------------------------- /ast/statement.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/statement.h -------------------------------------------------------------------------------- /ast/static_access_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/static_access_expression.h -------------------------------------------------------------------------------- /ast/static_store_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/static_store_expression.h -------------------------------------------------------------------------------- /ast/string_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/string_expression.h -------------------------------------------------------------------------------- /ast/subtraction_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/subtraction_expression.h -------------------------------------------------------------------------------- /ast/var_decl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/var_decl.h -------------------------------------------------------------------------------- /ast/variable_expression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/variable_expression.h -------------------------------------------------------------------------------- /ast/visitor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/visitor.h -------------------------------------------------------------------------------- /ast/void_literal.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ast/void_literal.h -------------------------------------------------------------------------------- /bench/bench.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/bench.sh -------------------------------------------------------------------------------- /bench/fib_45.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/fib_45.dart -------------------------------------------------------------------------------- /bench/fib_45.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/fib_45.js -------------------------------------------------------------------------------- /bench/fib_45.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/fib_45.vvn.sh -------------------------------------------------------------------------------- /bench/loop_empty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_empty.js -------------------------------------------------------------------------------- /bench/loop_empty_cc.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_empty_cc.vvn.sh -------------------------------------------------------------------------------- /bench/loop_empty_hot.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_empty_hot.vvn.sh -------------------------------------------------------------------------------- /bench/loop_empty_interp.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_empty_interp.vvn.sh -------------------------------------------------------------------------------- /bench/loop_with_function_cc.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_with_function_cc.vvn.sh -------------------------------------------------------------------------------- /bench/loop_with_function_hot.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_with_function_hot.vvn.sh -------------------------------------------------------------------------------- /bench/loop_with_function_interp.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_with_function_interp.vvn.sh -------------------------------------------------------------------------------- /bench/loop_with_garbagemem.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_with_garbagemem.js -------------------------------------------------------------------------------- /bench/loop_with_garbagemem_cc.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_with_garbagemem_cc.vvn.sh -------------------------------------------------------------------------------- /bench/loop_with_ops_cc.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_with_ops_cc.vvn.sh -------------------------------------------------------------------------------- /bench/loop_with_ops_hot.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_with_ops_hot.vvn.sh -------------------------------------------------------------------------------- /bench/loop_with_ops_interp.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/loop_with_ops_interp.vvn.sh -------------------------------------------------------------------------------- /bench/lowest_common_factor.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/lowest_common_factor.js -------------------------------------------------------------------------------- /bench/lowest_common_factor.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/lowest_common_factor.vvn -------------------------------------------------------------------------------- /bench/recurse_with_ops.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/recurse_with_ops.vvn.sh -------------------------------------------------------------------------------- /bench/repeat_functions.vvn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/bench/repeat_functions.vvn.sh -------------------------------------------------------------------------------- /error_compiler.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/error_compiler.cpp -------------------------------------------------------------------------------- /error_compiler.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/error_compiler.h -------------------------------------------------------------------------------- /firstcompile.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/firstcompile.cpp -------------------------------------------------------------------------------- /firstcompile.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/firstcompile.h -------------------------------------------------------------------------------- /function_usage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/function_usage.h -------------------------------------------------------------------------------- /functions.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/functions.h -------------------------------------------------------------------------------- /heap.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/heap.cpp -------------------------------------------------------------------------------- /heap.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/heap.h -------------------------------------------------------------------------------- /main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/main.cpp -------------------------------------------------------------------------------- /makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/makefile -------------------------------------------------------------------------------- /optimize.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/optimize.cpp -------------------------------------------------------------------------------- /optimize.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/optimize.h -------------------------------------------------------------------------------- /parser.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/parser.cpp -------------------------------------------------------------------------------- /parser.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/parser.h -------------------------------------------------------------------------------- /runtime_error.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/runtime_error.cpp -------------------------------------------------------------------------------- /runtime_error.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/runtime_error.h -------------------------------------------------------------------------------- /scope.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/scope.h -------------------------------------------------------------------------------- /ssa/cfg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/cfg.h -------------------------------------------------------------------------------- /ssa/common_subexpression.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/common_subexpression.cpp -------------------------------------------------------------------------------- /ssa/common_subexpression.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/common_subexpression.h -------------------------------------------------------------------------------- /ssa/constant_inliner.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/constant_inliner.cpp -------------------------------------------------------------------------------- /ssa/constant_inliner.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/constant_inliner.h -------------------------------------------------------------------------------- /ssa/constant_propagation.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/constant_propagation.cpp -------------------------------------------------------------------------------- /ssa/constant_propagation.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/constant_propagation.h -------------------------------------------------------------------------------- /ssa/dominator_builder.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/dominator_builder.cpp -------------------------------------------------------------------------------- /ssa/dominator_builder.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/dominator_builder.h -------------------------------------------------------------------------------- /ssa/emitter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/emitter.cpp -------------------------------------------------------------------------------- /ssa/emitter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/emitter.h -------------------------------------------------------------------------------- /ssa/forward_visitor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/forward_visitor.cpp -------------------------------------------------------------------------------- /ssa/forward_visitor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/forward_visitor.h -------------------------------------------------------------------------------- /ssa/function_merge.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/function_merge.cpp -------------------------------------------------------------------------------- /ssa/function_merge.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/function_merge.h -------------------------------------------------------------------------------- /ssa/inliner.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/inliner.cpp -------------------------------------------------------------------------------- /ssa/inliner.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/inliner.h -------------------------------------------------------------------------------- /ssa/instruction_combiner.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/instruction_combiner.cpp -------------------------------------------------------------------------------- /ssa/instruction_combiner.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/instruction_combiner.h -------------------------------------------------------------------------------- /ssa/jmp_threader.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/jmp_threader.cpp -------------------------------------------------------------------------------- /ssa/jmp_threader.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/jmp_threader.h -------------------------------------------------------------------------------- /ssa/loop_invariant.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/loop_invariant.cpp -------------------------------------------------------------------------------- /ssa/loop_invariant.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/loop_invariant.h -------------------------------------------------------------------------------- /ssa/print_visitor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/print_visitor.cpp -------------------------------------------------------------------------------- /ssa/print_visitor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/print_visitor.h -------------------------------------------------------------------------------- /ssa/reg_alloc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/reg_alloc.cpp -------------------------------------------------------------------------------- /ssa/reg_alloc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/reg_alloc.h -------------------------------------------------------------------------------- /ssa/ssa.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/ssa.cpp -------------------------------------------------------------------------------- /ssa/ssa.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/ssa.h -------------------------------------------------------------------------------- /ssa/type_analysis.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/type_analysis.cpp -------------------------------------------------------------------------------- /ssa/type_analysis.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/type_analysis.h -------------------------------------------------------------------------------- /ssa/unused_code.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/unused_code.cpp -------------------------------------------------------------------------------- /ssa/unused_code.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ssa/unused_code.h -------------------------------------------------------------------------------- /stack.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/stack.cpp -------------------------------------------------------------------------------- /stack.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/stack.h -------------------------------------------------------------------------------- /std.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/std.cpp -------------------------------------------------------------------------------- /std.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/std.h -------------------------------------------------------------------------------- /test/assemble/doubles.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/assemble/doubles.vvn -------------------------------------------------------------------------------- /test/assemble/instruction_combiner.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/assemble/instruction_combiner.vvn -------------------------------------------------------------------------------- /test/assemble/jmpcc.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/assemble/jmpcc.vvn -------------------------------------------------------------------------------- /test/assemble/lists.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/assemble/lists.vvn -------------------------------------------------------------------------------- /test/assemble/modeq.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/assemble/modeq.vvn -------------------------------------------------------------------------------- /test/assemble/objects.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/assemble/objects.vvn -------------------------------------------------------------------------------- /test/assemble/strings.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/assemble/strings.vvn -------------------------------------------------------------------------------- /test/deoptimize/ints.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/deoptimize/ints.vvn -------------------------------------------------------------------------------- /test/deoptimize/ints.vvn_expectederrors: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/deoptimize/ints.vvn_expectederrors -------------------------------------------------------------------------------- /test/deoptimize/strings.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/deoptimize/strings.vvn -------------------------------------------------------------------------------- /test/deoptimize/strings.vvn_expectederrors: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/deoptimize/strings.vvn_expectederrors -------------------------------------------------------------------------------- /test/error/interpret_type_errors.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/error/interpret_type_errors.vvn -------------------------------------------------------------------------------- /test/error/interpret_type_errors.vvn_expectederrors: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/error/interpret_type_errors.vvn_expectederrors -------------------------------------------------------------------------------- /test/interpret/doubles.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/interpret/doubles.vvn -------------------------------------------------------------------------------- /test/interpret/lists.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/interpret/lists.vvn -------------------------------------------------------------------------------- /test/interpret/modeq.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/interpret/modeq.vvn -------------------------------------------------------------------------------- /test/interpret/objects.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/interpret/objects.vvn -------------------------------------------------------------------------------- /test/interpret/strings.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/interpret/strings.vvn -------------------------------------------------------------------------------- /test/parser/comments_test.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/comments_test.vvn -------------------------------------------------------------------------------- /test/parser/control_flow.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/control_flow.vvn -------------------------------------------------------------------------------- /test/parser/functions_test.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/functions_test.vvn -------------------------------------------------------------------------------- /test/parser/fuzz_test.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/fuzz_test.vvn -------------------------------------------------------------------------------- /test/parser/fuzz_test.vvn_expectederrors: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/fuzz_test.vvn_expectederrors -------------------------------------------------------------------------------- /test/parser/fuzz_test_generate.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/fuzz_test_generate.js -------------------------------------------------------------------------------- /test/parser/onliner.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/onliner.vvn -------------------------------------------------------------------------------- /test/parser/recovery_test.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/recovery_test.vvn -------------------------------------------------------------------------------- /test/parser/recovery_test.vvn_expectederrors: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/recovery_test.vvn_expectederrors -------------------------------------------------------------------------------- /test/parser/strings.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/parser/strings.vvn -------------------------------------------------------------------------------- /test/parser/terms.vvn: -------------------------------------------------------------------------------- 1 | true 2 | false 3 | void 4 | -------------------------------------------------------------------------------- /test/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/run.sh -------------------------------------------------------------------------------- /test/std/lists_test.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/std/lists_test.vvn -------------------------------------------------------------------------------- /test/std/objects_test.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/std/objects_test.vvn -------------------------------------------------------------------------------- /test/std/strings_test.vvn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/test/std/strings_test.vvn -------------------------------------------------------------------------------- /tokenizer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/tokenizer.cpp -------------------------------------------------------------------------------- /tokenizer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/tokenizer.h -------------------------------------------------------------------------------- /type_info.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/type_info.h -------------------------------------------------------------------------------- /ui_runtime/app.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ui_runtime/app.cpp -------------------------------------------------------------------------------- /ui_runtime/matrix.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ui_runtime/matrix.cpp -------------------------------------------------------------------------------- /ui_runtime/matrix.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ui_runtime/matrix.h -------------------------------------------------------------------------------- /ui_runtime/styled_char.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ui_runtime/styled_char.cpp -------------------------------------------------------------------------------- /ui_runtime/styled_char.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/ui_runtime/styled_char.h -------------------------------------------------------------------------------- /util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/util.h -------------------------------------------------------------------------------- /value.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/value.cpp -------------------------------------------------------------------------------- /value.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/value.h -------------------------------------------------------------------------------- /visitor/assignment_producer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/visitor/assignment_producer.cpp -------------------------------------------------------------------------------- /visitor/assignment_producer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/visitor/assignment_producer.h -------------------------------------------------------------------------------- /visitor/interpreter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/visitor/interpreter.cpp -------------------------------------------------------------------------------- /visitor/interpreter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/visitor/interpreter.h -------------------------------------------------------------------------------- /visitor/print_visitor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/visitor/print_visitor.cpp -------------------------------------------------------------------------------- /visitor/print_visitor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/visitor/print_visitor.h -------------------------------------------------------------------------------- /visitor/ssa_builder.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/visitor/ssa_builder.cpp -------------------------------------------------------------------------------- /visitor/ssa_builder.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MichaelRFairhurst/vaiven/HEAD/visitor/ssa_builder.h --------------------------------------------------------------------------------