From 0bec6e26278fc5f8e6b9fc49ca21ca2b1535df83 Mon Sep 17 00:00:00 2001 From: "A. R. Shajii" Date: Sun, 8 Jan 2023 14:24:10 -0500 Subject: [PATCH] Refactor IR; updates for 2023 (#157) * Refactor IR * Update image size in docs --- CMakeLists.txt | 230 +++++++++--------- codon/app/main.cpp | 2 +- codon/{sir => cir}/analyze/analysis.cpp | 4 +- codon/{sir => cir}/analyze/analysis.h | 6 +- .../{sir => cir}/analyze/dataflow/capture.cpp | 8 +- codon/{sir => cir}/analyze/dataflow/capture.h | 10 +- codon/{sir => cir}/analyze/dataflow/cfg.cpp | 6 +- codon/{sir => cir}/analyze/dataflow/cfg.h | 8 +- .../analyze/dataflow/dominator.cpp | 2 +- .../{sir => cir}/analyze/dataflow/dominator.h | 6 +- .../analyze/dataflow/reaching.cpp | 2 +- .../{sir => cir}/analyze/dataflow/reaching.h | 6 +- .../analyze/module/global_vars.cpp | 4 +- .../{sir => cir}/analyze/module/global_vars.h | 4 +- .../analyze/module/side_effect.cpp | 8 +- .../{sir => cir}/analyze/module/side_effect.h | 6 +- codon/{sir => cir}/attribute.cpp | 8 +- codon/{sir => cir}/attribute.h | 4 +- codon/{sir => cir}/base.cpp | 10 +- codon/{sir => cir}/base.h | 8 +- codon/cir/cir.h | 13 + codon/{sir => cir}/const.cpp | 2 +- codon/{sir => cir}/const.h | 8 +- codon/{sir => cir}/dsl/codegen.h | 6 +- codon/{sir => cir}/dsl/nodes.cpp | 2 +- codon/{sir => cir}/dsl/nodes.h | 10 +- codon/{sir => cir}/flow.cpp | 6 +- codon/{sir => cir}/flow.h | 10 +- codon/{sir => cir}/func.cpp | 12 +- codon/{sir => cir}/func.h | 12 +- codon/{sir => cir}/instr.cpp | 6 +- codon/{sir => cir}/instr.h | 14 +- codon/{sir => cir}/llvm/gpu.cpp | 2 +- codon/{sir => cir}/llvm/gpu.h | 4 +- codon/{sir => cir}/llvm/llvisitor.cpp | 8 +- codon/{sir => cir}/llvm/llvisitor.h | 6 +- codon/{sir => cir}/llvm/llvm.h | 2 +- codon/{sir => cir}/llvm/optimize.cpp | 4 +- codon/{sir => cir}/llvm/optimize.h | 4 +- codon/{sir => cir}/module.cpp | 4 +- codon/{sir => cir}/module.h | 14 +- .../transform/cleanup/canonical.cpp | 10 +- .../transform/cleanup/canonical.h | 6 +- .../transform/cleanup/dead_code.cpp | 6 +- .../transform/cleanup/dead_code.h | 4 +- .../transform/cleanup/global_demote.cpp | 2 +- .../transform/cleanup/global_demote.h | 4 +- .../transform/cleanup/replacer.cpp | 8 +- .../{sir => cir}/transform/cleanup/replacer.h | 4 +- .../transform/folding/const_fold.cpp | 6 +- .../transform/folding/const_fold.h | 6 +- .../transform/folding/const_prop.cpp | 8 +- .../transform/folding/const_prop.h | 4 +- .../transform/folding/folding.cpp | 6 +- .../{sir => cir}/transform/folding/folding.h | 10 +- codon/{sir => cir}/transform/folding/rule.h | 8 +- .../transform/lowering/imperative.cpp | 8 +- .../transform/lowering/imperative.h | 4 +- .../transform/lowering/pipeline.cpp | 8 +- .../transform/lowering/pipeline.h | 4 +- codon/{sir => cir}/transform/manager.cpp | 36 +-- codon/{sir => cir}/transform/manager.h | 8 +- .../transform/parallel/openmp.cpp | 10 +- .../{sir => cir}/transform/parallel/openmp.h | 4 +- .../transform/parallel/schedule.cpp | 6 +- .../transform/parallel/schedule.h | 4 +- codon/{sir => cir}/transform/pass.cpp | 4 +- codon/{sir => cir}/transform/pass.h | 6 +- .../{sir => cir}/transform/pythonic/dict.cpp | 8 +- codon/{sir => cir}/transform/pythonic/dict.h | 4 +- codon/{sir => cir}/transform/pythonic/io.cpp | 6 +- codon/{sir => cir}/transform/pythonic/io.h | 4 +- .../{sir => cir}/transform/pythonic/list.cpp | 6 +- codon/{sir => cir}/transform/pythonic/list.h | 4 +- codon/{sir => cir}/transform/pythonic/str.cpp | 6 +- codon/{sir => cir}/transform/pythonic/str.h | 4 +- codon/{sir => cir}/transform/rewrite.h | 6 +- codon/{sir => cir}/types/types.cpp | 12 +- codon/{sir => cir}/types/types.h | 18 +- codon/{sir => cir}/util/cloning.cpp | 4 +- codon/{sir => cir}/util/cloning.h | 6 +- codon/{sir => cir}/util/context.h | 6 +- codon/{sir => cir}/util/format.cpp | 6 +- codon/{sir => cir}/util/format.h | 4 +- codon/{sir => cir}/util/inlining.cpp | 8 +- codon/{sir => cir}/util/inlining.h | 4 +- codon/{sir => cir}/util/irtools.cpp | 2 +- codon/{sir => cir}/util/irtools.h | 4 +- codon/{sir => cir}/util/iterators.h | 2 +- codon/{sir => cir}/util/matching.cpp | 6 +- codon/{sir => cir}/util/matching.h | 4 +- codon/{sir => cir}/util/operator.h | 6 +- codon/{sir => cir}/util/outlining.cpp | 8 +- codon/{sir => cir}/util/outlining.h | 4 +- codon/{sir => cir}/util/packs.h | 2 +- codon/{sir => cir}/util/side_effect.cpp | 2 +- codon/{sir => cir}/util/side_effect.h | 2 +- codon/{sir => cir}/util/visitor.cpp | 4 +- codon/{sir => cir}/util/visitor.h | 4 +- codon/{sir => cir}/value.cpp | 6 +- codon/{sir => cir}/value.h | 8 +- codon/{sir => cir}/var.cpp | 4 +- codon/{sir => cir}/var.h | 8 +- codon/compiler/compiler.cpp | 2 +- codon/compiler/compiler.h | 8 +- codon/compiler/debug_listener.cpp | 2 +- codon/compiler/debug_listener.h | 4 +- codon/compiler/engine.cpp | 4 +- codon/compiler/engine.h | 4 +- codon/compiler/error.cpp | 2 +- codon/compiler/error.h | 2 +- codon/compiler/jit.cpp | 2 +- codon/compiler/jit.h | 8 +- codon/compiler/jit_extern.h | 2 +- codon/compiler/memory_manager.cpp | 2 +- codon/compiler/memory_manager.h | 4 +- codon/dsl/dsl.h | 8 +- codon/dsl/plugins.cpp | 2 +- codon/dsl/plugins.h | 4 +- codon/parser/ast.h | 2 +- codon/parser/ast/error.h | 2 +- codon/parser/ast/expr.cpp | 2 +- codon/parser/ast/expr.h | 2 +- codon/parser/ast/stmt.cpp | 2 +- codon/parser/ast/stmt.h | 2 +- codon/parser/ast/types.h | 2 +- codon/parser/ast/types/class.cpp | 2 +- codon/parser/ast/types/class.h | 2 +- codon/parser/ast/types/function.cpp | 2 +- codon/parser/ast/types/function.h | 2 +- codon/parser/ast/types/link.cpp | 2 +- codon/parser/ast/types/link.h | 2 +- codon/parser/ast/types/static.cpp | 2 +- codon/parser/ast/types/static.h | 2 +- codon/parser/ast/types/traits.cpp | 2 +- codon/parser/ast/types/traits.h | 2 +- codon/parser/ast/types/type.cpp | 2 +- codon/parser/ast/types/type.h | 2 +- codon/parser/ast/types/union.cpp | 2 +- codon/parser/ast/types/union.h | 2 +- codon/parser/cache.cpp | 2 +- codon/parser/cache.h | 4 +- codon/parser/common.cpp | 2 +- codon/parser/common.h | 2 +- codon/parser/ctx.h | 2 +- codon/parser/peg/peg.cpp | 2 +- codon/parser/peg/peg.h | 2 +- codon/parser/peg/rules.h | 2 +- codon/parser/visitors/doc/doc.cpp | 2 +- codon/parser/visitors/doc/doc.h | 2 +- codon/parser/visitors/format/format.cpp | 2 +- codon/parser/visitors/format/format.h | 2 +- codon/parser/visitors/simplify/access.cpp | 2 +- codon/parser/visitors/simplify/assign.cpp | 2 +- codon/parser/visitors/simplify/basic.cpp | 2 +- codon/parser/visitors/simplify/call.cpp | 2 +- codon/parser/visitors/simplify/class.cpp | 2 +- .../parser/visitors/simplify/collections.cpp | 2 +- codon/parser/visitors/simplify/cond.cpp | 2 +- codon/parser/visitors/simplify/ctx.cpp | 2 +- codon/parser/visitors/simplify/ctx.h | 2 +- codon/parser/visitors/simplify/error.cpp | 2 +- codon/parser/visitors/simplify/function.cpp | 2 +- codon/parser/visitors/simplify/import.cpp | 2 +- codon/parser/visitors/simplify/loops.cpp | 2 +- codon/parser/visitors/simplify/op.cpp | 2 +- codon/parser/visitors/simplify/simplify.cpp | 2 +- codon/parser/visitors/simplify/simplify.h | 2 +- codon/parser/visitors/translate/translate.cpp | 6 +- codon/parser/visitors/translate/translate.h | 4 +- .../visitors/translate/translate_ctx.cpp | 2 +- .../parser/visitors/translate/translate_ctx.h | 6 +- codon/parser/visitors/typecheck/access.cpp | 2 +- codon/parser/visitors/typecheck/assign.cpp | 2 +- codon/parser/visitors/typecheck/basic.cpp | 2 +- codon/parser/visitors/typecheck/call.cpp | 2 +- codon/parser/visitors/typecheck/class.cpp | 2 +- .../parser/visitors/typecheck/collections.cpp | 2 +- codon/parser/visitors/typecheck/cond.cpp | 2 +- codon/parser/visitors/typecheck/ctx.cpp | 2 +- codon/parser/visitors/typecheck/ctx.h | 2 +- codon/parser/visitors/typecheck/error.cpp | 2 +- codon/parser/visitors/typecheck/function.cpp | 2 +- codon/parser/visitors/typecheck/infer.cpp | 4 +- codon/parser/visitors/typecheck/loops.cpp | 2 +- codon/parser/visitors/typecheck/op.cpp | 2 +- codon/parser/visitors/typecheck/typecheck.cpp | 2 +- codon/parser/visitors/typecheck/typecheck.h | 2 +- codon/parser/visitors/visitor.cpp | 2 +- codon/parser/visitors/visitor.h | 2 +- codon/runtime/exc.cpp | 2 +- codon/runtime/gpu.cpp | 2 +- codon/runtime/lib.cpp | 2 +- codon/runtime/lib.h | 2 +- codon/runtime/re.cpp | 2 +- codon/sir/sir.h | 13 - codon/util/common.cpp | 2 +- codon/util/common.h | 2 +- codon/util/peg2cpp.cpp | 2 +- docs/README.md | 2 +- docs/advanced/ir.md | 34 +-- stdlib/algorithms/heapsort.codon | 2 +- stdlib/algorithms/insertionsort.codon | 2 +- stdlib/algorithms/pdqsort.codon | 2 +- stdlib/algorithms/qsort.codon | 2 +- stdlib/algorithms/strings.codon | 2 +- stdlib/algorithms/timsort.codon | 2 +- stdlib/bisect.codon | 2 +- stdlib/cmath.codon | 2 +- stdlib/collections.codon | 2 +- stdlib/copy.codon | 2 +- stdlib/datetime.codon | 2 +- stdlib/experimental/simd.codon | 2 +- stdlib/functools.codon | 2 +- stdlib/getopt.codon | 2 +- stdlib/gpu.codon | 2 +- stdlib/gzip.codon | 2 +- stdlib/heapq.codon | 2 +- stdlib/internal/__init__.codon | 2 +- stdlib/internal/__init_test__.codon | 2 +- stdlib/internal/attributes.codon | 2 +- stdlib/internal/builtin.codon | 2 +- stdlib/internal/c_stubs.codon | 2 +- stdlib/internal/core.codon | 2 +- stdlib/internal/dlopen.codon | 2 +- stdlib/internal/file.codon | 2 +- stdlib/internal/format.codon | 2 +- stdlib/internal/gc.codon | 2 +- stdlib/internal/internal.codon | 2 +- stdlib/internal/khash.codon | 2 +- stdlib/internal/pynumerics.codon | 2 +- stdlib/internal/python.codon | 2 +- stdlib/internal/sort.codon | 2 +- stdlib/internal/str.codon | 6 +- stdlib/internal/types/array.codon | 2 +- stdlib/internal/types/bool.codon | 2 +- stdlib/internal/types/byte.codon | 2 +- stdlib/internal/types/collections/dict.codon | 2 +- stdlib/internal/types/collections/list.codon | 2 +- stdlib/internal/types/collections/set.codon | 2 +- stdlib/internal/types/collections/tuple.codon | 2 +- stdlib/internal/types/complex.codon | 2 +- stdlib/internal/types/error.codon | 2 +- stdlib/internal/types/float.codon | 2 +- stdlib/internal/types/generator.codon | 2 +- stdlib/internal/types/int.codon | 2 +- stdlib/internal/types/intn.codon | 2 +- stdlib/internal/types/optional.codon | 2 +- stdlib/internal/types/ptr.codon | 2 +- stdlib/internal/types/range.codon | 2 +- stdlib/internal/types/slice.codon | 2 +- stdlib/internal/types/str.codon | 2 +- stdlib/internal/types/strbuf.codon | 2 +- stdlib/itertools.codon | 2 +- stdlib/math.codon | 2 +- stdlib/openmp.codon | 2 +- stdlib/operator.codon | 2 +- stdlib/os/__init__.codon | 2 +- stdlib/os/path.codon | 2 +- stdlib/pickle.codon | 2 +- stdlib/python.codon | 2 +- stdlib/random.codon | 2 +- stdlib/re.codon | 2 +- stdlib/sortedlist.codon | 2 +- stdlib/statistics.codon | 2 +- stdlib/string.codon | 2 +- stdlib/sys.codon | 2 +- stdlib/threading.codon | 2 +- stdlib/time.codon | 2 +- stdlib/typing.codon | 2 +- stdlib/unittest.codon | 2 +- test/{sir => cir}/analyze/dominator.cpp | 8 +- test/{sir => cir}/analyze/reaching.cpp | 12 +- test/{sir => cir}/base.cpp | 10 +- test/{sir => cir}/constant.cpp | 4 +- test/{sir => cir}/flow.cpp | 22 +- test/{sir => cir}/func.cpp | 16 +- test/{sir => cir}/instr.cpp | 48 ++-- test/{sir => cir}/module.cpp | 8 +- test/{sir => cir}/test.h | 6 +- test/{sir => cir}/transform/manager.cpp | 8 +- test/{sir => cir}/types/types.cpp | 6 +- test/{sir => cir}/util/matching.cpp | 40 +-- test/{sir => cir}/value.cpp | 4 +- test/{sir => cir}/var.cpp | 4 +- test/main.cpp | 14 +- test/types.cpp | 2 +- 287 files changed, 761 insertions(+), 753 deletions(-) rename codon/{sir => cir}/analyze/analysis.cpp (72%) rename codon/{sir => cir}/analyze/analysis.h (88%) rename codon/{sir => cir}/analyze/dataflow/capture.cpp (99%) rename codon/{sir => cir}/analyze/dataflow/capture.h (91%) rename codon/{sir => cir}/analyze/dataflow/cfg.cpp (99%) rename codon/{sir => cir}/analyze/dataflow/cfg.h (99%) rename codon/{sir => cir}/analyze/dataflow/dominator.cpp (97%) rename codon/{sir => cir}/analyze/dataflow/dominator.h (91%) rename codon/{sir => cir}/analyze/dataflow/reaching.cpp (99%) rename codon/{sir => cir}/analyze/dataflow/reaching.h (92%) rename codon/{sir => cir}/analyze/module/global_vars.cpp (91%) rename codon/{sir => cir}/analyze/module/global_vars.h (85%) rename codon/{sir => cir}/analyze/module/side_effect.cpp (98%) rename codon/{sir => cir}/analyze/module/side_effect.h (91%) rename codon/{sir => cir}/attribute.cpp (97%) rename codon/{sir => cir}/attribute.h (98%) rename codon/{sir => cir}/base.cpp (77%) rename codon/{sir => cir}/base.h (98%) create mode 100644 codon/cir/cir.h rename codon/{sir => cir}/const.cpp (84%) rename codon/{sir => cir}/const.h (92%) rename codon/{sir => cir}/dsl/codegen.h (90%) rename codon/{sir => cir}/dsl/nodes.cpp (82%) rename codon/{sir => cir}/dsl/nodes.h (95%) rename codon/{sir => cir}/flow.cpp (98%) rename codon/{sir => cir}/flow.h (99%) rename codon/{sir => cir}/func.cpp (93%) rename codon/{sir => cir}/func.h (97%) rename codon/{sir => cir}/instr.cpp (97%) rename codon/{sir => cir}/instr.h (98%) rename codon/{sir => cir}/llvm/gpu.cpp (99%) rename codon/{sir => cir}/llvm/gpu.h (84%) rename codon/{sir => cir}/llvm/llvisitor.cpp (99%) rename codon/{sir => cir}/llvm/llvisitor.h (99%) rename codon/{sir => cir}/llvm/llvm.h (98%) rename codon/{sir => cir}/llvm/optimize.cpp (99%) rename codon/{sir => cir}/llvm/optimize.h (86%) rename codon/{sir => cir}/module.cpp (99%) rename codon/{sir => cir}/module.h (98%) rename codon/{sir => cir}/transform/cleanup/canonical.cpp (97%) rename codon/{sir => cir}/transform/cleanup/canonical.h (86%) rename codon/{sir => cir}/transform/cleanup/dead_code.cpp (94%) rename codon/{sir => cir}/transform/cleanup/dead_code.h (91%) rename codon/{sir => cir}/transform/cleanup/global_demote.cpp (96%) rename codon/{sir => cir}/transform/cleanup/global_demote.h (87%) rename codon/{sir => cir}/transform/cleanup/replacer.cpp (95%) rename codon/{sir => cir}/transform/cleanup/replacer.h (80%) rename codon/{sir => cir}/transform/folding/const_fold.cpp (99%) rename codon/{sir => cir}/transform/folding/const_fold.h (82%) rename codon/{sir => cir}/transform/folding/const_prop.cpp (89%) rename codon/{sir => cir}/transform/folding/const_prop.h (89%) rename codon/{sir => cir}/transform/folding/folding.cpp (90%) rename codon/{sir => cir}/transform/folding/folding.h (82%) rename codon/{sir => cir}/transform/folding/rule.h (97%) rename codon/{sir => cir}/transform/lowering/imperative.cpp (96%) rename codon/{sir => cir}/transform/lowering/imperative.h (78%) rename codon/{sir => cir}/transform/lowering/pipeline.cpp (92%) rename codon/{sir => cir}/transform/lowering/pipeline.h (80%) rename codon/{sir => cir}/transform/manager.cpp (88%) rename codon/{sir => cir}/transform/manager.h (97%) rename codon/{sir => cir}/transform/parallel/openmp.cpp (99%) rename codon/{sir => cir}/transform/parallel/openmp.h (83%) rename codon/{sir => cir}/transform/parallel/schedule.cpp (95%) rename codon/{sir => cir}/transform/parallel/schedule.h (91%) rename codon/{sir => cir}/transform/pass.cpp (82%) rename codon/{sir => cir}/transform/pass.h (94%) rename codon/{sir => cir}/transform/pythonic/dict.cpp (96%) rename codon/{sir => cir}/transform/pythonic/dict.h (84%) rename codon/{sir => cir}/transform/pythonic/io.cpp (95%) rename codon/{sir => cir}/transform/pythonic/io.h (81%) rename codon/{sir => cir}/transform/pythonic/list.cpp (98%) rename codon/{sir => cir}/transform/pythonic/list.h (82%) rename codon/{sir => cir}/transform/pythonic/str.cpp (92%) rename codon/{sir => cir}/transform/pythonic/str.h (80%) rename codon/{sir => cir}/transform/rewrite.h (92%) rename codon/{sir => cir}/types/types.cpp (96%) rename codon/{sir => cir}/types/types.h (97%) rename codon/{sir => cir}/util/cloning.cpp (98%) rename codon/{sir => cir}/util/cloning.h (97%) rename codon/{sir => cir}/util/context.h (84%) rename codon/{sir => cir}/util/format.cpp (99%) rename codon/{sir => cir}/util/format.h (84%) rename codon/{sir => cir}/util/inlining.cpp (95%) rename codon/{sir => cir}/util/inlining.h (92%) rename codon/{sir => cir}/util/irtools.cpp (99%) rename codon/{sir => cir}/util/irtools.h (98%) rename codon/{sir => cir}/util/iterators.h (98%) rename codon/{sir => cir}/util/matching.cpp (98%) rename codon/{sir => cir}/util/matching.h (93%) rename codon/{sir => cir}/util/operator.h (98%) rename codon/{sir => cir}/util/outlining.cpp (98%) rename codon/{sir => cir}/util/outlining.h (97%) rename codon/{sir => cir}/util/packs.h (93%) rename codon/{sir => cir}/util/side_effect.cpp (90%) rename codon/{sir => cir}/util/side_effect.h (94%) rename codon/{sir => cir}/util/visitor.cpp (98%) rename codon/{sir => cir}/util/visitor.h (98%) rename codon/{sir => cir}/value.cpp (96%) rename codon/{sir => cir}/value.h (95%) rename codon/{sir => cir}/var.cpp (89%) rename codon/{sir => cir}/var.h (96%) delete mode 100644 codon/sir/sir.h rename test/{sir => cir}/analyze/dominator.cpp (86%) rename test/{sir => cir}/analyze/reaching.cpp (95%) rename test/{sir => cir}/base.cpp (91%) rename test/{sir => cir}/constant.cpp (88%) rename test/{sir => cir}/flow.cpp (92%) rename test/{sir => cir}/func.cpp (87%) rename test/{sir => cir}/instr.cpp (88%) rename test/{sir => cir}/module.cpp (91%) rename test/{sir => cir}/test.h (77%) rename test/{sir => cir}/transform/manager.cpp (92%) rename test/{sir => cir}/types/types.cpp (93%) rename test/{sir => cir}/util/matching.cpp (90%) rename test/{sir => cir}/value.cpp (95%) rename test/{sir => cir}/var.cpp (88%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0b80feaa..bd4f4744 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -161,61 +161,61 @@ set(CODON_HPPFILES codon/parser/visitors/typecheck/typecheck.h codon/parser/visitors/typecheck/ctx.h codon/parser/visitors/visitor.h - codon/sir/analyze/analysis.h - codon/sir/analyze/dataflow/capture.h - codon/sir/analyze/dataflow/cfg.h - codon/sir/analyze/dataflow/dominator.h - codon/sir/analyze/dataflow/reaching.h - codon/sir/analyze/module/global_vars.h - codon/sir/analyze/module/side_effect.h - codon/sir/attribute.h - codon/sir/base.h - codon/sir/const.h - codon/sir/dsl/codegen.h - codon/sir/dsl/nodes.h - codon/sir/flow.h - codon/sir/func.h - codon/sir/instr.h - codon/sir/llvm/gpu.h - codon/sir/llvm/llvisitor.h - codon/sir/llvm/llvm.h - codon/sir/llvm/optimize.h - codon/sir/module.h - codon/sir/sir.h - codon/sir/transform/cleanup/canonical.h - codon/sir/transform/cleanup/dead_code.h - codon/sir/transform/cleanup/global_demote.h - codon/sir/transform/cleanup/replacer.h - codon/sir/transform/folding/const_fold.h - codon/sir/transform/folding/const_prop.h - codon/sir/transform/folding/folding.h - codon/sir/transform/folding/rule.h - codon/sir/transform/lowering/imperative.h - codon/sir/transform/lowering/pipeline.h - codon/sir/transform/manager.h - codon/sir/transform/parallel/openmp.h - codon/sir/transform/parallel/schedule.h - codon/sir/transform/pass.h - codon/sir/transform/pythonic/dict.h - codon/sir/transform/pythonic/io.h - codon/sir/transform/pythonic/list.h - codon/sir/transform/pythonic/str.h - codon/sir/transform/rewrite.h - codon/sir/types/types.h - codon/sir/util/cloning.h - codon/sir/util/context.h - codon/sir/util/format.h - codon/sir/util/inlining.h - codon/sir/util/irtools.h - codon/sir/util/iterators.h - codon/sir/util/matching.h - codon/sir/util/operator.h - codon/sir/util/outlining.h - codon/sir/util/packs.h - codon/sir/util/side_effect.h - codon/sir/util/visitor.h - codon/sir/value.h - codon/sir/var.h + codon/cir/analyze/analysis.h + codon/cir/analyze/dataflow/capture.h + codon/cir/analyze/dataflow/cfg.h + codon/cir/analyze/dataflow/dominator.h + codon/cir/analyze/dataflow/reaching.h + codon/cir/analyze/module/global_vars.h + codon/cir/analyze/module/side_effect.h + codon/cir/attribute.h + codon/cir/base.h + codon/cir/const.h + codon/cir/dsl/codegen.h + codon/cir/dsl/nodes.h + codon/cir/flow.h + codon/cir/func.h + codon/cir/instr.h + codon/cir/llvm/gpu.h + codon/cir/llvm/llvisitor.h + codon/cir/llvm/llvm.h + codon/cir/llvm/optimize.h + codon/cir/module.h + codon/cir/cir.h + codon/cir/transform/cleanup/canonical.h + codon/cir/transform/cleanup/dead_code.h + codon/cir/transform/cleanup/global_demote.h + codon/cir/transform/cleanup/replacer.h + codon/cir/transform/folding/const_fold.h + codon/cir/transform/folding/const_prop.h + codon/cir/transform/folding/folding.h + codon/cir/transform/folding/rule.h + codon/cir/transform/lowering/imperative.h + codon/cir/transform/lowering/pipeline.h + codon/cir/transform/manager.h + codon/cir/transform/parallel/openmp.h + codon/cir/transform/parallel/schedule.h + codon/cir/transform/pass.h + codon/cir/transform/pythonic/dict.h + codon/cir/transform/pythonic/io.h + codon/cir/transform/pythonic/list.h + codon/cir/transform/pythonic/str.h + codon/cir/transform/rewrite.h + codon/cir/types/types.h + codon/cir/util/cloning.h + codon/cir/util/context.h + codon/cir/util/format.h + codon/cir/util/inlining.h + codon/cir/util/irtools.h + codon/cir/util/iterators.h + codon/cir/util/matching.h + codon/cir/util/operator.h + codon/cir/util/outlining.h + codon/cir/util/packs.h + codon/cir/util/side_effect.h + codon/cir/util/visitor.h + codon/cir/value.h + codon/cir/var.h codon/util/common.h extra/jupyter/jupyter.h codon/compiler/jit_extern.h) @@ -272,52 +272,52 @@ set(CODON_CPPFILES codon/parser/visitors/typecheck/op.cpp codon/parser/visitors/typecheck/error.cpp codon/parser/visitors/visitor.cpp - codon/sir/attribute.cpp - codon/sir/analyze/analysis.cpp - codon/sir/analyze/dataflow/capture.cpp - codon/sir/analyze/dataflow/cfg.cpp - codon/sir/analyze/dataflow/dominator.cpp - codon/sir/analyze/dataflow/reaching.cpp - codon/sir/analyze/module/global_vars.cpp - codon/sir/analyze/module/side_effect.cpp - codon/sir/base.cpp - codon/sir/const.cpp - codon/sir/dsl/nodes.cpp - codon/sir/flow.cpp - codon/sir/func.cpp - codon/sir/instr.cpp - codon/sir/llvm/gpu.cpp - codon/sir/llvm/llvisitor.cpp - codon/sir/llvm/optimize.cpp - codon/sir/module.cpp - codon/sir/transform/cleanup/canonical.cpp - codon/sir/transform/cleanup/dead_code.cpp - codon/sir/transform/cleanup/global_demote.cpp - codon/sir/transform/cleanup/replacer.cpp - codon/sir/transform/folding/const_fold.cpp - codon/sir/transform/folding/const_prop.cpp - codon/sir/transform/folding/folding.cpp - codon/sir/transform/lowering/imperative.cpp - codon/sir/transform/lowering/pipeline.cpp - codon/sir/transform/manager.cpp - codon/sir/transform/parallel/openmp.cpp - codon/sir/transform/parallel/schedule.cpp - codon/sir/transform/pass.cpp - codon/sir/transform/pythonic/dict.cpp - codon/sir/transform/pythonic/io.cpp - codon/sir/transform/pythonic/list.cpp - codon/sir/transform/pythonic/str.cpp - codon/sir/types/types.cpp - codon/sir/util/cloning.cpp - codon/sir/util/format.cpp - codon/sir/util/inlining.cpp - codon/sir/util/irtools.cpp - codon/sir/util/matching.cpp - codon/sir/util/outlining.cpp - codon/sir/util/side_effect.cpp - codon/sir/util/visitor.cpp - codon/sir/value.cpp - codon/sir/var.cpp + codon/cir/attribute.cpp + codon/cir/analyze/analysis.cpp + codon/cir/analyze/dataflow/capture.cpp + codon/cir/analyze/dataflow/cfg.cpp + codon/cir/analyze/dataflow/dominator.cpp + codon/cir/analyze/dataflow/reaching.cpp + codon/cir/analyze/module/global_vars.cpp + codon/cir/analyze/module/side_effect.cpp + codon/cir/base.cpp + codon/cir/const.cpp + codon/cir/dsl/nodes.cpp + codon/cir/flow.cpp + codon/cir/func.cpp + codon/cir/instr.cpp + codon/cir/llvm/gpu.cpp + codon/cir/llvm/llvisitor.cpp + codon/cir/llvm/optimize.cpp + codon/cir/module.cpp + codon/cir/transform/cleanup/canonical.cpp + codon/cir/transform/cleanup/dead_code.cpp + codon/cir/transform/cleanup/global_demote.cpp + codon/cir/transform/cleanup/replacer.cpp + codon/cir/transform/folding/const_fold.cpp + codon/cir/transform/folding/const_prop.cpp + codon/cir/transform/folding/folding.cpp + codon/cir/transform/lowering/imperative.cpp + codon/cir/transform/lowering/pipeline.cpp + codon/cir/transform/manager.cpp + codon/cir/transform/parallel/openmp.cpp + codon/cir/transform/parallel/schedule.cpp + codon/cir/transform/pass.cpp + codon/cir/transform/pythonic/dict.cpp + codon/cir/transform/pythonic/io.cpp + codon/cir/transform/pythonic/list.cpp + codon/cir/transform/pythonic/str.cpp + codon/cir/types/types.cpp + codon/cir/util/cloning.cpp + codon/cir/util/format.cpp + codon/cir/util/inlining.cpp + codon/cir/util/irtools.cpp + codon/cir/util/matching.cpp + codon/cir/util/outlining.cpp + codon/cir/util/side_effect.cpp + codon/cir/util/visitor.cpp + codon/cir/value.cpp + codon/cir/var.cpp codon/util/common.cpp extra/jupyter/jupyter.cpp) add_library(codonc SHARED ${CODON_HPPFILES}) @@ -440,22 +440,22 @@ FetchContent_MakeAvailable(googletest) enable_testing() set(CODON_TEST_CPPFILES test/main.cpp - test/sir/analyze/dominator.cpp - test/sir/analyze/reaching.cpp - test/sir/base.cpp - test/sir/constant.cpp - test/sir/flow.cpp - test/sir/func.cpp - test/sir/instr.cpp - test/sir/module.cpp - test/sir/transform/manager.cpp - test/sir/types/types.cpp - test/sir/util/matching.cpp - test/sir/value.cpp - test/sir/var.cpp + test/cir/analyze/dominator.cpp + test/cir/analyze/reaching.cpp + test/cir/base.cpp + test/cir/constant.cpp + test/cir/flow.cpp + test/cir/func.cpp + test/cir/instr.cpp + test/cir/module.cpp + test/cir/transform/manager.cpp + test/cir/types/types.cpp + test/cir/util/matching.cpp + test/cir/value.cpp + test/cir/var.cpp test/types.cpp) add_executable(codon_test ${CODON_TEST_CPPFILES}) -target_include_directories(codon_test PRIVATE test/sir +target_include_directories(codon_test PRIVATE test/cir "${gc_SOURCE_DIR}/include") target_link_libraries(codon_test fmt codonc codonrt gtest_main) target_compile_definitions(codon_test diff --git a/codon/app/main.cpp b/codon/app/main.cpp index a288b382..90adba77 100644 --- a/codon/app/main.cpp +++ b/codon/app/main.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/sir/analyze/analysis.cpp b/codon/cir/analyze/analysis.cpp similarity index 72% rename from codon/sir/analyze/analysis.cpp rename to codon/cir/analyze/analysis.cpp index 57a29170..3e39908f 100644 --- a/codon/sir/analyze/analysis.cpp +++ b/codon/cir/analyze/analysis.cpp @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "analysis.h" -#include "codon/sir/transform/manager.h" +#include "codon/cir/transform/manager.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/analysis.h b/codon/cir/analyze/analysis.h similarity index 88% rename from codon/sir/analyze/analysis.h rename to codon/cir/analyze/analysis.h index 9cddcfaa..de61db0a 100644 --- a/codon/sir/analyze/analysis.h +++ b/codon/cir/analyze/analysis.h @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include -#include "codon/sir/module.h" -#include "codon/sir/transform/pass.h" +#include "codon/cir/module.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/dataflow/capture.cpp b/codon/cir/analyze/dataflow/capture.cpp similarity index 99% rename from codon/sir/analyze/dataflow/capture.cpp rename to codon/cir/analyze/dataflow/capture.cpp index cebf9b30..11b6699f 100644 --- a/codon/sir/analyze/dataflow/capture.cpp +++ b/codon/cir/analyze/dataflow/capture.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "capture.h" @@ -6,9 +6,9 @@ #include #include -#include "codon/sir/analyze/dataflow/reaching.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/side_effect.h" +#include "codon/cir/analyze/dataflow/reaching.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/side_effect.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/dataflow/capture.h b/codon/cir/analyze/dataflow/capture.h similarity index 91% rename from codon/sir/analyze/dataflow/capture.h rename to codon/cir/analyze/dataflow/capture.h index 930d41de..64810273 100644 --- a/codon/sir/analyze/dataflow/capture.h +++ b/codon/cir/analyze/dataflow/capture.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -6,10 +6,10 @@ #include #include -#include "codon/sir/analyze/analysis.h" -#include "codon/sir/analyze/dataflow/dominator.h" -#include "codon/sir/analyze/dataflow/reaching.h" -#include "codon/sir/sir.h" +#include "codon/cir/analyze/analysis.h" +#include "codon/cir/analyze/dataflow/dominator.h" +#include "codon/cir/analyze/dataflow/reaching.h" +#include "codon/cir/cir.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/dataflow/cfg.cpp b/codon/cir/analyze/dataflow/cfg.cpp similarity index 99% rename from codon/sir/analyze/dataflow/cfg.cpp rename to codon/cir/analyze/dataflow/cfg.cpp index 6c26eeb3..d05a4012 100644 --- a/codon/sir/analyze/dataflow/cfg.cpp +++ b/codon/cir/analyze/dataflow/cfg.cpp @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "cfg.h" #include -#include "codon/sir/dsl/codegen.h" -#include "codon/sir/dsl/nodes.h" +#include "codon/cir/dsl/codegen.h" +#include "codon/cir/dsl/nodes.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/dataflow/cfg.h b/codon/cir/analyze/dataflow/cfg.h similarity index 99% rename from codon/sir/analyze/dataflow/cfg.h rename to codon/cir/analyze/dataflow/cfg.h index b0df725d..1fcbe789 100644 --- a/codon/sir/analyze/dataflow/cfg.h +++ b/codon/cir/analyze/dataflow/cfg.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -8,9 +8,9 @@ #include #include -#include "codon/sir/analyze/analysis.h" -#include "codon/sir/sir.h" -#include "codon/sir/util/iterators.h" +#include "codon/cir/analyze/analysis.h" +#include "codon/cir/cir.h" +#include "codon/cir/util/iterators.h" #define DEFAULT_VISIT(x) \ void visit(const x *v) override { defaultInsert(v); } diff --git a/codon/sir/analyze/dataflow/dominator.cpp b/codon/cir/analyze/dataflow/dominator.cpp similarity index 97% rename from codon/sir/analyze/dataflow/dominator.cpp rename to codon/cir/analyze/dataflow/dominator.cpp index 527475ab..9d502b29 100644 --- a/codon/sir/analyze/dataflow/dominator.cpp +++ b/codon/cir/analyze/dataflow/dominator.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "dominator.h" diff --git a/codon/sir/analyze/dataflow/dominator.h b/codon/cir/analyze/dataflow/dominator.h similarity index 91% rename from codon/sir/analyze/dataflow/dominator.h rename to codon/cir/analyze/dataflow/dominator.h index 1c56e0de..c66ff08c 100644 --- a/codon/sir/analyze/dataflow/dominator.h +++ b/codon/cir/analyze/dataflow/dominator.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -6,8 +6,8 @@ #include #include -#include "codon/sir/analyze/analysis.h" -#include "codon/sir/analyze/dataflow/cfg.h" +#include "codon/cir/analyze/analysis.h" +#include "codon/cir/analyze/dataflow/cfg.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/dataflow/reaching.cpp b/codon/cir/analyze/dataflow/reaching.cpp similarity index 99% rename from codon/sir/analyze/dataflow/reaching.cpp rename to codon/cir/analyze/dataflow/reaching.cpp index b40f7ad8..d5d8e61e 100644 --- a/codon/sir/analyze/dataflow/reaching.cpp +++ b/codon/cir/analyze/dataflow/reaching.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "reaching.h" diff --git a/codon/sir/analyze/dataflow/reaching.h b/codon/cir/analyze/dataflow/reaching.h similarity index 92% rename from codon/sir/analyze/dataflow/reaching.h rename to codon/cir/analyze/dataflow/reaching.h index dca21e63..f8021f85 100644 --- a/codon/sir/analyze/dataflow/reaching.h +++ b/codon/cir/analyze/dataflow/reaching.h @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include -#include "codon/sir/analyze/analysis.h" -#include "codon/sir/analyze/dataflow/cfg.h" +#include "codon/cir/analyze/analysis.h" +#include "codon/cir/analyze/dataflow/cfg.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/module/global_vars.cpp b/codon/cir/analyze/module/global_vars.cpp similarity index 91% rename from codon/sir/analyze/module/global_vars.cpp rename to codon/cir/analyze/module/global_vars.cpp index 46672aba..171f91eb 100644 --- a/codon/sir/analyze/module/global_vars.cpp +++ b/codon/cir/analyze/module/global_vars.cpp @@ -1,6 +1,8 @@ +// Copyright (C) 2022-2023 Exaloop Inc. + #include "global_vars.h" -#include "codon/sir/util/operator.h" +#include "codon/cir/util/operator.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/module/global_vars.h b/codon/cir/analyze/module/global_vars.h similarity index 85% rename from codon/sir/analyze/module/global_vars.h rename to codon/cir/analyze/module/global_vars.h index 3009a010..a73eb655 100644 --- a/codon/sir/analyze/module/global_vars.h +++ b/codon/cir/analyze/module/global_vars.h @@ -1,8 +1,10 @@ +// Copyright (C) 2022-2023 Exaloop Inc. + #pragma once #include -#include "codon/sir/analyze/analysis.h" +#include "codon/cir/analyze/analysis.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/module/side_effect.cpp b/codon/cir/analyze/module/side_effect.cpp similarity index 98% rename from codon/sir/analyze/module/side_effect.cpp rename to codon/cir/analyze/module/side_effect.cpp index a55e4cc5..0a5aaa18 100644 --- a/codon/sir/analyze/module/side_effect.cpp +++ b/codon/cir/analyze/module/side_effect.cpp @@ -1,11 +1,13 @@ +// Copyright (C) 2022-2023 Exaloop Inc. + #include "side_effect.h" #include #include -#include "codon/sir/analyze/dataflow/capture.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/operator.h" +#include "codon/cir/analyze/dataflow/capture.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/operator.h" namespace codon { namespace ir { diff --git a/codon/sir/analyze/module/side_effect.h b/codon/cir/analyze/module/side_effect.h similarity index 91% rename from codon/sir/analyze/module/side_effect.h rename to codon/cir/analyze/module/side_effect.h index 6d3d1f72..3187eae3 100644 --- a/codon/sir/analyze/module/side_effect.h +++ b/codon/cir/analyze/module/side_effect.h @@ -1,9 +1,11 @@ +// Copyright (C) 2022-2023 Exaloop Inc. + #pragma once #include -#include "codon/sir/analyze/analysis.h" -#include "codon/sir/util/side_effect.h" +#include "codon/cir/analyze/analysis.h" +#include "codon/cir/util/side_effect.h" namespace codon { namespace ir { diff --git a/codon/sir/attribute.cpp b/codon/cir/attribute.cpp similarity index 97% rename from codon/sir/attribute.cpp rename to codon/cir/attribute.cpp index dd396930..10153adb 100644 --- a/codon/sir/attribute.cpp +++ b/codon/cir/attribute.cpp @@ -1,10 +1,10 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "attribute.h" -#include "codon/sir/func.h" -#include "codon/sir/util/cloning.h" -#include "codon/sir/value.h" +#include "codon/cir/func.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/value.h" #include namespace codon { diff --git a/codon/sir/attribute.h b/codon/cir/attribute.h similarity index 98% rename from codon/sir/attribute.h rename to codon/cir/attribute.h index 66b5d07a..774b9f0e 100644 --- a/codon/sir/attribute.h +++ b/codon/cir/attribute.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -21,7 +21,7 @@ namespace util { class CloneVisitor; } -/// Base for SIR attributes. +/// Base for CIR attributes. struct Attribute { virtual ~Attribute() noexcept = default; diff --git a/codon/sir/base.cpp b/codon/cir/base.cpp similarity index 77% rename from codon/sir/base.cpp rename to codon/cir/base.cpp index 81d01be9..164081dd 100644 --- a/codon/sir/base.cpp +++ b/codon/cir/base.cpp @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "base.h" -#include "codon/sir/types/types.h" -#include "codon/sir/util/format.h" -#include "codon/sir/value.h" -#include "codon/sir/var.h" +#include "codon/cir/types/types.h" +#include "codon/cir/util/format.h" +#include "codon/cir/value.h" +#include "codon/cir/var.h" namespace codon { namespace ir { diff --git a/codon/sir/base.h b/codon/cir/base.h similarity index 98% rename from codon/sir/base.h rename to codon/cir/base.h index d495838f..d8aef86c 100644 --- a/codon/sir/base.h +++ b/codon/cir/base.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -8,9 +8,9 @@ #include #include -#include "codon/sir/attribute.h" -#include "codon/sir/util/iterators.h" -#include "codon/sir/util/visitor.h" +#include "codon/cir/attribute.h" +#include "codon/cir/util/iterators.h" +#include "codon/cir/util/visitor.h" #include "codon/util/common.h" #include #include diff --git a/codon/cir/cir.h b/codon/cir/cir.h new file mode 100644 index 00000000..44f71440 --- /dev/null +++ b/codon/cir/cir.h @@ -0,0 +1,13 @@ +// Copyright (C) 2022-2023 Exaloop Inc. + +#pragma once + +#include "codon/cir/const.h" +#include "codon/cir/dsl/nodes.h" +#include "codon/cir/flow.h" +#include "codon/cir/func.h" +#include "codon/cir/instr.h" +#include "codon/cir/module.h" +#include "codon/cir/types/types.h" +#include "codon/cir/value.h" +#include "codon/cir/var.h" diff --git a/codon/sir/const.cpp b/codon/cir/const.cpp similarity index 84% rename from codon/sir/const.cpp rename to codon/cir/const.cpp index fbc4fd26..06987ba5 100644 --- a/codon/sir/const.cpp +++ b/codon/cir/const.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "const.h" diff --git a/codon/sir/const.h b/codon/cir/const.h similarity index 92% rename from codon/sir/const.h rename to codon/cir/const.h index d6cd5e73..0f66ccdb 100644 --- a/codon/sir/const.h +++ b/codon/cir/const.h @@ -1,14 +1,14 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/module.h" -#include "codon/sir/value.h" +#include "codon/cir/module.h" +#include "codon/cir/value.h" namespace codon { namespace ir { -/// SIR constant base. Once created, constants are immutable. +/// CIR constant base. Once created, constants are immutable. class Const : public AcceptorExtend { private: /// the type diff --git a/codon/sir/dsl/codegen.h b/codon/cir/dsl/codegen.h similarity index 90% rename from codon/sir/dsl/codegen.h rename to codon/cir/dsl/codegen.h index f5e2f0c9..c6492990 100644 --- a/codon/sir/dsl/codegen.h +++ b/codon/cir/dsl/codegen.h @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include -#include "codon/sir/llvm/llvm.h" -#include "codon/sir/types/types.h" +#include "codon/cir/llvm/llvm.h" +#include "codon/cir/types/types.h" namespace codon { namespace ir { diff --git a/codon/sir/dsl/nodes.cpp b/codon/cir/dsl/nodes.cpp similarity index 82% rename from codon/sir/dsl/nodes.cpp rename to codon/cir/dsl/nodes.cpp index eb919bab..5badfe2f 100644 --- a/codon/sir/dsl/nodes.cpp +++ b/codon/cir/dsl/nodes.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "nodes.h" diff --git a/codon/sir/dsl/nodes.h b/codon/cir/dsl/nodes.h similarity index 95% rename from codon/sir/dsl/nodes.h rename to codon/cir/dsl/nodes.h index 7d867798..995a1d94 100644 --- a/codon/sir/dsl/nodes.h +++ b/codon/cir/dsl/nodes.h @@ -1,13 +1,13 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include -#include "codon/sir/base.h" -#include "codon/sir/const.h" -#include "codon/sir/instr.h" -#include "codon/sir/util/side_effect.h" +#include "codon/cir/base.h" +#include "codon/cir/const.h" +#include "codon/cir/instr.h" +#include "codon/cir/util/side_effect.h" namespace codon { namespace ir { diff --git a/codon/sir/flow.cpp b/codon/cir/flow.cpp similarity index 98% rename from codon/sir/flow.cpp rename to codon/cir/flow.cpp index 6468b7e8..2052645e 100644 --- a/codon/sir/flow.cpp +++ b/codon/cir/flow.cpp @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "flow.h" -#include "codon/sir/module.h" -#include "codon/sir/util/iterators.h" +#include "codon/cir/module.h" +#include "codon/cir/util/iterators.h" #include namespace codon { diff --git a/codon/sir/flow.h b/codon/cir/flow.h similarity index 99% rename from codon/sir/flow.h rename to codon/cir/flow.h index 9e05eb75..df199d07 100644 --- a/codon/sir/flow.h +++ b/codon/cir/flow.h @@ -1,14 +1,14 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include #include -#include "codon/sir/base.h" -#include "codon/sir/transform/parallel/schedule.h" -#include "codon/sir/value.h" -#include "codon/sir/var.h" +#include "codon/cir/base.h" +#include "codon/cir/transform/parallel/schedule.h" +#include "codon/cir/value.h" +#include "codon/cir/var.h" namespace codon { namespace ir { diff --git a/codon/sir/func.cpp b/codon/cir/func.cpp similarity index 93% rename from codon/sir/func.cpp rename to codon/cir/func.cpp index f90379cb..58b6a9de 100644 --- a/codon/sir/func.cpp +++ b/codon/cir/func.cpp @@ -1,15 +1,15 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "func.h" #include #include "codon/parser/common.h" -#include "codon/sir/module.h" -#include "codon/sir/util/iterators.h" -#include "codon/sir/util/operator.h" -#include "codon/sir/util/visitor.h" -#include "codon/sir/var.h" +#include "codon/cir/module.h" +#include "codon/cir/util/iterators.h" +#include "codon/cir/util/operator.h" +#include "codon/cir/util/visitor.h" +#include "codon/cir/var.h" namespace codon { namespace ir { diff --git a/codon/sir/func.h b/codon/cir/func.h similarity index 97% rename from codon/sir/func.h rename to codon/cir/func.h index a7846749..6adaeed2 100644 --- a/codon/sir/func.h +++ b/codon/cir/func.h @@ -1,15 +1,15 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/flow.h" -#include "codon/sir/util/iterators.h" -#include "codon/sir/var.h" +#include "codon/cir/flow.h" +#include "codon/cir/util/iterators.h" +#include "codon/cir/var.h" namespace codon { namespace ir { -/// SIR function +/// CIR function class Func : public AcceptorExtend { private: /// unmangled (source code) name of the function @@ -32,7 +32,7 @@ protected: public: static const char NodeId; - /// Constructs an unrealized SIR function. + /// Constructs an unrealized CIR function. /// @param name the function's name explicit Func(std::string name = "") : AcceptorExtend(nullptr, true, false, std::move(name)), generator(false), diff --git a/codon/sir/instr.cpp b/codon/cir/instr.cpp similarity index 97% rename from codon/sir/instr.cpp rename to codon/cir/instr.cpp index edd431f3..f8f59e04 100644 --- a/codon/sir/instr.cpp +++ b/codon/cir/instr.cpp @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "instr.h" -#include "codon/sir/module.h" -#include "codon/sir/util/iterators.h" +#include "codon/cir/module.h" +#include "codon/cir/util/iterators.h" namespace codon { namespace ir { diff --git a/codon/sir/instr.h b/codon/cir/instr.h similarity index 98% rename from codon/sir/instr.h rename to codon/cir/instr.h index f9df7c3c..1a5ff045 100644 --- a/codon/sir/instr.h +++ b/codon/cir/instr.h @@ -1,20 +1,20 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include #include -#include "codon/sir/flow.h" -#include "codon/sir/types/types.h" -#include "codon/sir/util/iterators.h" -#include "codon/sir/value.h" -#include "codon/sir/var.h" +#include "codon/cir/flow.h" +#include "codon/cir/types/types.h" +#include "codon/cir/util/iterators.h" +#include "codon/cir/value.h" +#include "codon/cir/var.h" namespace codon { namespace ir { -/// SIR object representing an "instruction," or discrete operation in the context of a +/// CIR object representing an "instruction," or discrete operation in the context of a /// block. class Instr : public AcceptorExtend { public: diff --git a/codon/sir/llvm/gpu.cpp b/codon/cir/llvm/gpu.cpp similarity index 99% rename from codon/sir/llvm/gpu.cpp rename to codon/cir/llvm/gpu.cpp index 22a79a6c..6a82e94b 100644 --- a/codon/sir/llvm/gpu.cpp +++ b/codon/cir/llvm/gpu.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "gpu.h" diff --git a/codon/sir/llvm/gpu.h b/codon/cir/llvm/gpu.h similarity index 84% rename from codon/sir/llvm/gpu.h rename to codon/cir/llvm/gpu.h index 172a1366..df1dd21c 100644 --- a/codon/sir/llvm/gpu.h +++ b/codon/cir/llvm/gpu.h @@ -1,10 +1,10 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include -#include "codon/sir/llvm/llvm.h" +#include "codon/cir/llvm/llvm.h" namespace codon { namespace ir { diff --git a/codon/sir/llvm/llvisitor.cpp b/codon/cir/llvm/llvisitor.cpp similarity index 99% rename from codon/sir/llvm/llvisitor.cpp rename to codon/cir/llvm/llvisitor.cpp index ed8fe894..00c01348 100644 --- a/codon/sir/llvm/llvisitor.cpp +++ b/codon/cir/llvm/llvisitor.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "llvisitor.h" @@ -14,9 +14,9 @@ #include "codon/compiler/memory_manager.h" #include "codon/parser/common.h" #include "codon/runtime/lib.h" -#include "codon/sir/dsl/codegen.h" -#include "codon/sir/llvm/optimize.h" -#include "codon/sir/util/irtools.h" +#include "codon/cir/dsl/codegen.h" +#include "codon/cir/llvm/optimize.h" +#include "codon/cir/util/irtools.h" #include "codon/util/common.h" namespace codon { diff --git a/codon/sir/llvm/llvisitor.h b/codon/cir/llvm/llvisitor.h similarity index 99% rename from codon/sir/llvm/llvisitor.h rename to codon/cir/llvm/llvisitor.h index 0ca457c8..c5e39da8 100644 --- a/codon/sir/llvm/llvisitor.h +++ b/codon/cir/llvm/llvisitor.h @@ -1,10 +1,10 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include "codon/dsl/plugins.h" -#include "codon/sir/llvm/llvm.h" -#include "codon/sir/sir.h" +#include "codon/cir/llvm/llvm.h" +#include "codon/cir/cir.h" #include "codon/util/common.h" #include diff --git a/codon/sir/llvm/llvm.h b/codon/cir/llvm/llvm.h similarity index 98% rename from codon/sir/llvm/llvm.h rename to codon/cir/llvm/llvm.h index ff412745..0779a36d 100644 --- a/codon/sir/llvm/llvm.h +++ b/codon/cir/llvm/llvm.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/sir/llvm/optimize.cpp b/codon/cir/llvm/optimize.cpp similarity index 99% rename from codon/sir/llvm/optimize.cpp rename to codon/cir/llvm/optimize.cpp index a3e431b1..49c237c5 100644 --- a/codon/sir/llvm/optimize.cpp +++ b/codon/cir/llvm/optimize.cpp @@ -1,10 +1,10 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "optimize.h" #include -#include "codon/sir/llvm/gpu.h" +#include "codon/cir/llvm/gpu.h" #include "codon/util/common.h" #include "llvm/CodeGen/CommandFlags.h" diff --git a/codon/sir/llvm/optimize.h b/codon/cir/llvm/optimize.h similarity index 86% rename from codon/sir/llvm/optimize.h rename to codon/cir/llvm/optimize.h index 7cad2c79..5029aff3 100644 --- a/codon/sir/llvm/optimize.h +++ b/codon/cir/llvm/optimize.h @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include #include "codon/dsl/plugins.h" -#include "codon/sir/llvm/llvm.h" +#include "codon/cir/llvm/llvm.h" namespace codon { namespace ir { diff --git a/codon/sir/module.cpp b/codon/cir/module.cpp similarity index 99% rename from codon/sir/module.cpp rename to codon/cir/module.cpp index 6e013282..7997c78b 100644 --- a/codon/sir/module.cpp +++ b/codon/cir/module.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "module.h" @@ -6,7 +6,7 @@ #include #include "codon/parser/cache.h" -#include "codon/sir/func.h" +#include "codon/cir/func.h" namespace codon { namespace ir { diff --git a/codon/sir/module.h b/codon/cir/module.h similarity index 98% rename from codon/sir/module.h rename to codon/cir/module.h index a7e83de0..d4ffc866 100644 --- a/codon/sir/module.h +++ b/codon/cir/module.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -7,10 +7,10 @@ #include #include -#include "codon/sir/func.h" -#include "codon/sir/util/iterators.h" -#include "codon/sir/value.h" -#include "codon/sir/var.h" +#include "codon/cir/func.h" +#include "codon/cir/util/iterators.h" +#include "codon/cir/value.h" +#include "codon/cir/var.h" #include "codon/util/common.h" #include #include @@ -25,7 +25,7 @@ class TypecheckVisitor; namespace ir { -/// SIR object representing a program. +/// CIR object representing a program. class Module : public AcceptorExtend { public: static const std::string VOID_NAME; @@ -128,7 +128,7 @@ private: public: static const char NodeId; - /// Constructs an SIR module. + /// Constructs an CIR module. /// @param name the module name explicit Module(const std::string &name = ""); diff --git a/codon/sir/transform/cleanup/canonical.cpp b/codon/cir/transform/cleanup/canonical.cpp similarity index 97% rename from codon/sir/transform/cleanup/canonical.cpp rename to codon/cir/transform/cleanup/canonical.cpp index 48177598..9cf73d12 100644 --- a/codon/sir/transform/cleanup/canonical.cpp +++ b/codon/cir/transform/cleanup/canonical.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "canonical.h" @@ -8,10 +8,10 @@ #include #include -#include "codon/sir/analyze/module/side_effect.h" -#include "codon/sir/transform/rewrite.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/matching.h" +#include "codon/cir/analyze/module/side_effect.h" +#include "codon/cir/transform/rewrite.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/matching.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/cleanup/canonical.h b/codon/cir/transform/cleanup/canonical.h similarity index 86% rename from codon/sir/transform/cleanup/canonical.h rename to codon/cir/transform/cleanup/canonical.h index b810ec33..fc6c788e 100644 --- a/codon/sir/transform/cleanup/canonical.h +++ b/codon/cir/transform/cleanup/canonical.h @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" -#include "codon/sir/transform/rewrite.h" +#include "codon/cir/transform/pass.h" +#include "codon/cir/transform/rewrite.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/cleanup/dead_code.cpp b/codon/cir/transform/cleanup/dead_code.cpp similarity index 94% rename from codon/sir/transform/cleanup/dead_code.cpp rename to codon/cir/transform/cleanup/dead_code.cpp index 3d56a2ce..b709410b 100644 --- a/codon/sir/transform/cleanup/dead_code.cpp +++ b/codon/cir/transform/cleanup/dead_code.cpp @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "dead_code.h" -#include "codon/sir/analyze/module/side_effect.h" -#include "codon/sir/util/cloning.h" +#include "codon/cir/analyze/module/side_effect.h" +#include "codon/cir/util/cloning.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/cleanup/dead_code.h b/codon/cir/transform/cleanup/dead_code.h similarity index 91% rename from codon/sir/transform/cleanup/dead_code.h rename to codon/cir/transform/cleanup/dead_code.h index 4a3347d2..87f30e62 100644 --- a/codon/sir/transform/cleanup/dead_code.h +++ b/codon/cir/transform/cleanup/dead_code.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/cleanup/global_demote.cpp b/codon/cir/transform/cleanup/global_demote.cpp similarity index 96% rename from codon/sir/transform/cleanup/global_demote.cpp rename to codon/cir/transform/cleanup/global_demote.cpp index 05e7f191..fce142a2 100644 --- a/codon/sir/transform/cleanup/global_demote.cpp +++ b/codon/cir/transform/cleanup/global_demote.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "global_demote.h" diff --git a/codon/sir/transform/cleanup/global_demote.h b/codon/cir/transform/cleanup/global_demote.h similarity index 87% rename from codon/sir/transform/cleanup/global_demote.h rename to codon/cir/transform/cleanup/global_demote.h index e52ac09f..bd1d45a3 100644 --- a/codon/sir/transform/cleanup/global_demote.h +++ b/codon/cir/transform/cleanup/global_demote.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/cleanup/replacer.cpp b/codon/cir/transform/cleanup/replacer.cpp similarity index 95% rename from codon/sir/transform/cleanup/replacer.cpp rename to codon/cir/transform/cleanup/replacer.cpp index d9b9f4a9..15ae070e 100644 --- a/codon/sir/transform/cleanup/replacer.cpp +++ b/codon/cir/transform/cleanup/replacer.cpp @@ -1,12 +1,12 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "replacer.h" #include -#include "codon/sir/types/types.h" -#include "codon/sir/value.h" -#include "codon/sir/var.h" +#include "codon/cir/types/types.h" +#include "codon/cir/value.h" +#include "codon/cir/var.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/cleanup/replacer.h b/codon/cir/transform/cleanup/replacer.h similarity index 80% rename from codon/sir/transform/cleanup/replacer.h rename to codon/cir/transform/cleanup/replacer.h index 9e8b77f0..331981fc 100644 --- a/codon/sir/transform/cleanup/replacer.h +++ b/codon/cir/transform/cleanup/replacer.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/folding/const_fold.cpp b/codon/cir/transform/folding/const_fold.cpp similarity index 99% rename from codon/sir/transform/folding/const_fold.cpp rename to codon/cir/transform/folding/const_fold.cpp index 1bb09794..b6e71e2f 100644 --- a/codon/sir/transform/folding/const_fold.cpp +++ b/codon/cir/transform/folding/const_fold.cpp @@ -1,12 +1,12 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "const_fold.h" #include #include -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" #define BINOP(o) \ [](auto x, auto y) -> auto{ return x o y; } diff --git a/codon/sir/transform/folding/const_fold.h b/codon/cir/transform/folding/const_fold.h similarity index 82% rename from codon/sir/transform/folding/const_fold.h rename to codon/cir/transform/folding/const_fold.h index d8d13c85..5c7a1eaf 100644 --- a/codon/sir/transform/folding/const_fold.h +++ b/codon/cir/transform/folding/const_fold.h @@ -1,12 +1,12 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include #include -#include "codon/sir/transform/folding/rule.h" -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/folding/rule.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/folding/const_prop.cpp b/codon/cir/transform/folding/const_prop.cpp similarity index 89% rename from codon/sir/transform/folding/const_prop.cpp rename to codon/cir/transform/folding/const_prop.cpp index d711709f..076e72a9 100644 --- a/codon/sir/transform/folding/const_prop.cpp +++ b/codon/cir/transform/folding/const_prop.cpp @@ -1,10 +1,10 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "const_prop.h" -#include "codon/sir/analyze/dataflow/reaching.h" -#include "codon/sir/analyze/module/global_vars.h" -#include "codon/sir/util/cloning.h" +#include "codon/cir/analyze/dataflow/reaching.h" +#include "codon/cir/analyze/module/global_vars.h" +#include "codon/cir/util/cloning.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/folding/const_prop.h b/codon/cir/transform/folding/const_prop.h similarity index 89% rename from codon/sir/transform/folding/const_prop.h rename to codon/cir/transform/folding/const_prop.h index 0f3ae98e..14b7bdc9 100644 --- a/codon/sir/transform/folding/const_prop.h +++ b/codon/cir/transform/folding/const_prop.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/folding/folding.cpp b/codon/cir/transform/folding/folding.cpp similarity index 90% rename from codon/sir/transform/folding/folding.cpp rename to codon/cir/transform/folding/folding.cpp index 9c6865e0..f6364f42 100644 --- a/codon/sir/transform/folding/folding.cpp +++ b/codon/cir/transform/folding/folding.cpp @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "folding.h" -#include "codon/sir/transform/folding/const_fold.h" -#include "codon/sir/transform/folding/const_prop.h" +#include "codon/cir/transform/folding/const_fold.h" +#include "codon/cir/transform/folding/const_prop.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/folding/folding.h b/codon/cir/transform/folding/folding.h similarity index 82% rename from codon/sir/transform/folding/folding.h rename to codon/cir/transform/folding/folding.h index 924f25c0..570abc28 100644 --- a/codon/sir/transform/folding/folding.h +++ b/codon/cir/transform/folding/folding.h @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/cleanup/canonical.h" -#include "codon/sir/transform/cleanup/dead_code.h" -#include "codon/sir/transform/cleanup/global_demote.h" -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/cleanup/canonical.h" +#include "codon/cir/transform/cleanup/dead_code.h" +#include "codon/cir/transform/cleanup/global_demote.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/folding/rule.h b/codon/cir/transform/folding/rule.h similarity index 97% rename from codon/sir/transform/folding/rule.h rename to codon/cir/transform/folding/rule.h index 04cf726c..dfc9a40d 100644 --- a/codon/sir/transform/folding/rule.h +++ b/codon/cir/transform/folding/rule.h @@ -1,13 +1,13 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include #include -#include "codon/sir/transform/pass.h" -#include "codon/sir/transform/rewrite.h" -#include "codon/sir/util/irtools.h" +#include "codon/cir/transform/pass.h" +#include "codon/cir/transform/rewrite.h" +#include "codon/cir/util/irtools.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/lowering/imperative.cpp b/codon/cir/transform/lowering/imperative.cpp similarity index 96% rename from codon/sir/transform/lowering/imperative.cpp rename to codon/cir/transform/lowering/imperative.cpp index ae29b64b..4bd7191f 100644 --- a/codon/sir/transform/lowering/imperative.cpp +++ b/codon/cir/transform/lowering/imperative.cpp @@ -1,12 +1,12 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "imperative.h" #include -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/matching.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/matching.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/lowering/imperative.h b/codon/cir/transform/lowering/imperative.h similarity index 78% rename from codon/sir/transform/lowering/imperative.h rename to codon/cir/transform/lowering/imperative.h index 28dca57b..440f36f0 100644 --- a/codon/sir/transform/lowering/imperative.h +++ b/codon/cir/transform/lowering/imperative.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/lowering/pipeline.cpp b/codon/cir/transform/lowering/pipeline.cpp similarity index 92% rename from codon/sir/transform/lowering/pipeline.cpp rename to codon/cir/transform/lowering/pipeline.cpp index f0472711..34047f8b 100644 --- a/codon/sir/transform/lowering/pipeline.cpp +++ b/codon/cir/transform/lowering/pipeline.cpp @@ -1,12 +1,12 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "pipeline.h" #include -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/matching.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/matching.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/lowering/pipeline.h b/codon/cir/transform/lowering/pipeline.h similarity index 80% rename from codon/sir/transform/lowering/pipeline.h rename to codon/cir/transform/lowering/pipeline.h index 57a960e7..028800c4 100644 --- a/codon/sir/transform/lowering/pipeline.h +++ b/codon/cir/transform/lowering/pipeline.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/manager.cpp b/codon/cir/transform/manager.cpp similarity index 88% rename from codon/sir/transform/manager.cpp rename to codon/cir/transform/manager.cpp index 0fe26aa9..0cafa3d1 100644 --- a/codon/sir/transform/manager.cpp +++ b/codon/cir/transform/manager.cpp @@ -1,26 +1,26 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "manager.h" #include -#include "codon/sir/analyze/analysis.h" -#include "codon/sir/analyze/dataflow/capture.h" -#include "codon/sir/analyze/dataflow/cfg.h" -#include "codon/sir/analyze/dataflow/dominator.h" -#include "codon/sir/analyze/dataflow/reaching.h" -#include "codon/sir/analyze/module/global_vars.h" -#include "codon/sir/analyze/module/side_effect.h" -#include "codon/sir/transform/folding/folding.h" -#include "codon/sir/transform/lowering/imperative.h" -#include "codon/sir/transform/lowering/pipeline.h" -#include "codon/sir/transform/manager.h" -#include "codon/sir/transform/parallel/openmp.h" -#include "codon/sir/transform/pass.h" -#include "codon/sir/transform/pythonic/dict.h" -#include "codon/sir/transform/pythonic/io.h" -#include "codon/sir/transform/pythonic/list.h" -#include "codon/sir/transform/pythonic/str.h" +#include "codon/cir/analyze/analysis.h" +#include "codon/cir/analyze/dataflow/capture.h" +#include "codon/cir/analyze/dataflow/cfg.h" +#include "codon/cir/analyze/dataflow/dominator.h" +#include "codon/cir/analyze/dataflow/reaching.h" +#include "codon/cir/analyze/module/global_vars.h" +#include "codon/cir/analyze/module/side_effect.h" +#include "codon/cir/transform/folding/folding.h" +#include "codon/cir/transform/lowering/imperative.h" +#include "codon/cir/transform/lowering/pipeline.h" +#include "codon/cir/transform/manager.h" +#include "codon/cir/transform/parallel/openmp.h" +#include "codon/cir/transform/pass.h" +#include "codon/cir/transform/pythonic/dict.h" +#include "codon/cir/transform/pythonic/io.h" +#include "codon/cir/transform/pythonic/list.h" +#include "codon/cir/transform/pythonic/str.h" #include "codon/util/common.h" namespace codon { diff --git a/codon/sir/transform/manager.h b/codon/cir/transform/manager.h similarity index 97% rename from codon/sir/transform/manager.h rename to codon/cir/transform/manager.h index 55d64e2c..9ef74bee 100644 --- a/codon/sir/transform/manager.h +++ b/codon/cir/transform/manager.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -9,9 +9,9 @@ #include #include -#include "codon/sir/analyze/analysis.h" -#include "codon/sir/module.h" -#include "codon/sir/transform/pass.h" +#include "codon/cir/analyze/analysis.h" +#include "codon/cir/module.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/parallel/openmp.cpp b/codon/cir/transform/parallel/openmp.cpp similarity index 99% rename from codon/sir/transform/parallel/openmp.cpp rename to codon/cir/transform/parallel/openmp.cpp index a7a6dc7a..d9824631 100644 --- a/codon/sir/transform/parallel/openmp.cpp +++ b/codon/cir/transform/parallel/openmp.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "openmp.h" @@ -7,10 +7,10 @@ #include #include -#include "codon/sir/transform/parallel/schedule.h" -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/outlining.h" +#include "codon/cir/transform/parallel/schedule.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/outlining.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/parallel/openmp.h b/codon/cir/transform/parallel/openmp.h similarity index 83% rename from codon/sir/transform/parallel/openmp.h rename to codon/cir/transform/parallel/openmp.h index 315145e6..1f9ecb8b 100644 --- a/codon/sir/transform/parallel/openmp.h +++ b/codon/cir/transform/parallel/openmp.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/parallel/schedule.cpp b/codon/cir/transform/parallel/schedule.cpp similarity index 95% rename from codon/sir/transform/parallel/schedule.cpp rename to codon/cir/transform/parallel/schedule.cpp index ebfb433b..35991fed 100644 --- a/codon/sir/transform/parallel/schedule.cpp +++ b/codon/cir/transform/parallel/schedule.cpp @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "schedule.h" -#include "codon/sir/sir.h" -#include "codon/sir/util/irtools.h" +#include "codon/cir/cir.h" +#include "codon/cir/util/irtools.h" #include #include diff --git a/codon/sir/transform/parallel/schedule.h b/codon/cir/transform/parallel/schedule.h similarity index 91% rename from codon/sir/transform/parallel/schedule.h rename to codon/cir/transform/parallel/schedule.h index b226b229..32c91410 100644 --- a/codon/sir/transform/parallel/schedule.h +++ b/codon/cir/transform/parallel/schedule.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/value.h" +#include "codon/cir/value.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pass.cpp b/codon/cir/transform/pass.cpp similarity index 82% rename from codon/sir/transform/pass.cpp rename to codon/cir/transform/pass.cpp index 50151814..f9630e5f 100644 --- a/codon/sir/transform/pass.cpp +++ b/codon/cir/transform/pass.cpp @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "pass.h" -#include "codon/sir/transform/manager.h" +#include "codon/cir/transform/manager.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pass.h b/codon/cir/transform/pass.h similarity index 94% rename from codon/sir/transform/pass.h rename to codon/cir/transform/pass.h index 2d193c9f..73ec532c 100644 --- a/codon/sir/transform/pass.h +++ b/codon/cir/transform/pass.h @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/module.h" -#include "codon/sir/util/operator.h" +#include "codon/cir/module.h" +#include "codon/cir/util/operator.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pythonic/dict.cpp b/codon/cir/transform/pythonic/dict.cpp similarity index 96% rename from codon/sir/transform/pythonic/dict.cpp rename to codon/cir/transform/pythonic/dict.cpp index cfb714e3..cd0952b8 100644 --- a/codon/sir/transform/pythonic/dict.cpp +++ b/codon/cir/transform/pythonic/dict.cpp @@ -1,12 +1,12 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "dict.h" #include -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/matching.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/matching.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pythonic/dict.h b/codon/cir/transform/pythonic/dict.h similarity index 84% rename from codon/sir/transform/pythonic/dict.h rename to codon/cir/transform/pythonic/dict.h index 20faa4e8..b6b28676 100644 --- a/codon/sir/transform/pythonic/dict.h +++ b/codon/cir/transform/pythonic/dict.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pythonic/io.cpp b/codon/cir/transform/pythonic/io.cpp similarity index 95% rename from codon/sir/transform/pythonic/io.cpp rename to codon/cir/transform/pythonic/io.cpp index 6cf94032..858531ea 100644 --- a/codon/sir/transform/pythonic/io.cpp +++ b/codon/cir/transform/pythonic/io.cpp @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "io.h" #include -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pythonic/io.h b/codon/cir/transform/pythonic/io.h similarity index 81% rename from codon/sir/transform/pythonic/io.h rename to codon/cir/transform/pythonic/io.h index b1c7af7b..950c3814 100644 --- a/codon/sir/transform/pythonic/io.h +++ b/codon/cir/transform/pythonic/io.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pythonic/list.cpp b/codon/cir/transform/pythonic/list.cpp similarity index 98% rename from codon/sir/transform/pythonic/list.cpp rename to codon/cir/transform/pythonic/list.cpp index d987478d..38c785dc 100644 --- a/codon/sir/transform/pythonic/list.cpp +++ b/codon/cir/transform/pythonic/list.cpp @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "list.h" #include -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pythonic/list.h b/codon/cir/transform/pythonic/list.h similarity index 82% rename from codon/sir/transform/pythonic/list.h rename to codon/cir/transform/pythonic/list.h index ac7e2476..1456696d 100644 --- a/codon/sir/transform/pythonic/list.h +++ b/codon/cir/transform/pythonic/list.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pythonic/str.cpp b/codon/cir/transform/pythonic/str.cpp similarity index 92% rename from codon/sir/transform/pythonic/str.cpp rename to codon/cir/transform/pythonic/str.cpp index ad5114c1..a746f416 100644 --- a/codon/sir/transform/pythonic/str.cpp +++ b/codon/cir/transform/pythonic/str.cpp @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "str.h" #include -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/pythonic/str.h b/codon/cir/transform/pythonic/str.h similarity index 80% rename from codon/sir/transform/pythonic/str.h rename to codon/cir/transform/pythonic/str.h index a6001828..c5891c04 100644 --- a/codon/sir/transform/pythonic/str.h +++ b/codon/cir/transform/pythonic/str.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/pass.h" namespace codon { namespace ir { diff --git a/codon/sir/transform/rewrite.h b/codon/cir/transform/rewrite.h similarity index 92% rename from codon/sir/transform/rewrite.h rename to codon/cir/transform/rewrite.h index 7c81b303..0f2d8811 100644 --- a/codon/sir/transform/rewrite.h +++ b/codon/cir/transform/rewrite.h @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/transform/pass.h" -#include "codon/sir/util/visitor.h" +#include "codon/cir/transform/pass.h" +#include "codon/cir/util/visitor.h" namespace codon { namespace ir { diff --git a/codon/sir/types/types.cpp b/codon/cir/types/types.cpp similarity index 96% rename from codon/sir/types/types.cpp rename to codon/cir/types/types.cpp index 821ea100..5c53dee4 100644 --- a/codon/sir/types/types.cpp +++ b/codon/cir/types/types.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "types.h" @@ -7,11 +7,11 @@ #include #include "codon/parser/cache.h" -#include "codon/sir/module.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/iterators.h" -#include "codon/sir/util/visitor.h" -#include "codon/sir/value.h" +#include "codon/cir/module.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/iterators.h" +#include "codon/cir/util/visitor.h" +#include "codon/cir/value.h" #include namespace codon { diff --git a/codon/sir/types/types.h b/codon/cir/types/types.h similarity index 97% rename from codon/sir/types/types.h rename to codon/cir/types/types.h index 71e31ada..17ae8926 100644 --- a/codon/sir/types/types.h +++ b/codon/cir/types/types.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -9,9 +9,9 @@ #include #include "codon/parser/ast.h" -#include "codon/sir/base.h" -#include "codon/sir/util/packs.h" -#include "codon/sir/util/visitor.h" +#include "codon/cir/base.h" +#include "codon/cir/util/packs.h" +#include "codon/cir/util/visitor.h" #include #include @@ -64,7 +64,7 @@ public: types::Type *getTypeValue() const { return value.typeValue; } }; -/// Type from which other SIR types derive. Generally types are immutable. +/// Type from which other CIR types derive. Generally types are immutable. class Type : public ReplaceableNodeBase { private: ast::types::TypePtr astType; @@ -332,7 +332,7 @@ private: Value *doConstruct(std::vector args) override; }; -/// Type associated with a SIR function. +/// Type associated with a CIR function. class FuncType : public AcceptorExtend { public: using const_iterator = std::vector::const_iterator; @@ -403,7 +403,7 @@ private: std::vector doGetUsedTypes() const override { return {base}; } }; -/// Type of a pointer to another SIR type +/// Type of a pointer to another CIR type class PointerType : public AcceptorExtend { public: static const char NodeId; @@ -418,7 +418,7 @@ private: bool doIsAtomic() const override { return false; } }; -/// Type of an optional containing another SIR type +/// Type of an optional containing another CIR type class OptionalType : public AcceptorExtend { public: static const char NodeId; @@ -433,7 +433,7 @@ private: bool doIsAtomic() const override { return getBase()->isAtomic(); } }; -/// Type of a generator yielding another SIR type +/// Type of a generator yielding another CIR type class GeneratorType : public AcceptorExtend { public: static const char NodeId; diff --git a/codon/sir/util/cloning.cpp b/codon/cir/util/cloning.cpp similarity index 98% rename from codon/sir/util/cloning.cpp rename to codon/cir/util/cloning.cpp index 08eb2a11..f38c3ab1 100644 --- a/codon/sir/util/cloning.cpp +++ b/codon/cir/util/cloning.cpp @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "cloning.h" -#include "codon/sir/util/operator.h" +#include "codon/cir/util/operator.h" namespace codon { namespace ir { diff --git a/codon/sir/util/cloning.h b/codon/cir/util/cloning.h similarity index 97% rename from codon/sir/util/cloning.h rename to codon/cir/util/cloning.h index 4580afd3..02534709 100644 --- a/codon/sir/util/cloning.h +++ b/codon/cir/util/cloning.h @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include -#include "codon/sir/sir.h" -#include "codon/sir/util/visitor.h" +#include "codon/cir/cir.h" +#include "codon/cir/util/visitor.h" namespace codon { namespace ir { diff --git a/codon/sir/util/context.h b/codon/cir/util/context.h similarity index 84% rename from codon/sir/util/context.h rename to codon/cir/util/context.h index c4fbfd99..c95bc7af 100644 --- a/codon/sir/util/context.h +++ b/codon/cir/util/context.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -8,8 +8,8 @@ namespace codon { namespace ir { namespace util { -/// Base for SIR visitor contexts. -template class SIRContext { +/// Base for CIR visitor contexts. +template class CIRContext { private: std::vector frames; diff --git a/codon/sir/util/format.cpp b/codon/cir/util/format.cpp similarity index 99% rename from codon/sir/util/format.cpp rename to codon/cir/util/format.cpp index b604ce5d..17151da5 100644 --- a/codon/sir/util/format.cpp +++ b/codon/cir/util/format.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include @@ -6,8 +6,8 @@ #include #include -#include "codon/sir/util/format.h" -#include "codon/sir/util/visitor.h" +#include "codon/cir/util/format.h" +#include "codon/cir/util/visitor.h" namespace codon { namespace ir { diff --git a/codon/sir/util/format.h b/codon/cir/util/format.h similarity index 84% rename from codon/sir/util/format.h rename to codon/cir/util/format.h index 52e38972..68d04d94 100644 --- a/codon/sir/util/format.h +++ b/codon/cir/util/format.h @@ -1,10 +1,10 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include -#include "codon/sir/sir.h" +#include "codon/cir/cir.h" namespace codon { namespace ir { diff --git a/codon/sir/util/inlining.cpp b/codon/cir/util/inlining.cpp similarity index 95% rename from codon/sir/util/inlining.cpp rename to codon/cir/util/inlining.cpp index 1a688f8f..d14a47a0 100644 --- a/codon/sir/util/inlining.cpp +++ b/codon/cir/util/inlining.cpp @@ -1,12 +1,12 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "inlining.h" #include -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/operator.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/operator.h" namespace codon { namespace ir { diff --git a/codon/sir/util/inlining.h b/codon/cir/util/inlining.h similarity index 92% rename from codon/sir/util/inlining.h rename to codon/cir/util/inlining.h index 28b38b46..68fc4676 100644 --- a/codon/sir/util/inlining.h +++ b/codon/cir/util/inlining.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/sir.h" +#include "codon/cir/cir.h" namespace codon { namespace ir { diff --git a/codon/sir/util/irtools.cpp b/codon/cir/util/irtools.cpp similarity index 99% rename from codon/sir/util/irtools.cpp rename to codon/cir/util/irtools.cpp index 5dcac784..70d54507 100644 --- a/codon/sir/util/irtools.cpp +++ b/codon/cir/util/irtools.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "irtools.h" diff --git a/codon/sir/util/irtools.h b/codon/cir/util/irtools.h similarity index 98% rename from codon/sir/util/irtools.h rename to codon/cir/util/irtools.h index cad3e3a9..e0b42e4a 100644 --- a/codon/sir/util/irtools.h +++ b/codon/cir/util/irtools.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/sir.h" +#include "codon/cir/cir.h" namespace codon { namespace ir { diff --git a/codon/sir/util/iterators.h b/codon/cir/util/iterators.h similarity index 98% rename from codon/sir/util/iterators.h rename to codon/cir/util/iterators.h index 818e2214..45072e14 100644 --- a/codon/sir/util/iterators.h +++ b/codon/cir/util/iterators.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/sir/util/matching.cpp b/codon/cir/util/matching.cpp similarity index 98% rename from codon/sir/util/matching.cpp rename to codon/cir/util/matching.cpp index bf1339b8..985d4601 100644 --- a/codon/sir/util/matching.cpp +++ b/codon/cir/util/matching.cpp @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "matching.h" #include -#include "codon/sir/sir.h" -#include "codon/sir/util/visitor.h" +#include "codon/cir/cir.h" +#include "codon/cir/util/visitor.h" #define VISIT(x) \ void visit(const x *v) override { \ diff --git a/codon/sir/util/matching.h b/codon/cir/util/matching.h similarity index 93% rename from codon/sir/util/matching.h rename to codon/cir/util/matching.h index c0d78b6b..5b8b6bb2 100644 --- a/codon/sir/util/matching.h +++ b/codon/cir/util/matching.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/sir.h" +#include "codon/cir/cir.h" namespace codon { namespace ir { diff --git a/codon/sir/util/operator.h b/codon/cir/util/operator.h similarity index 98% rename from codon/sir/util/operator.h rename to codon/cir/util/operator.h index 1ffaf53e..48819056 100644 --- a/codon/sir/util/operator.h +++ b/codon/cir/util/operator.h @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include -#include "codon/sir/sir.h" -#include "codon/sir/util/visitor.h" +#include "codon/cir/cir.h" +#include "codon/cir/util/visitor.h" #define LAMBDA_VISIT(x) \ virtual void handle(codon::ir::x *v) {} \ diff --git a/codon/sir/util/outlining.cpp b/codon/cir/util/outlining.cpp similarity index 98% rename from codon/sir/util/outlining.cpp rename to codon/cir/util/outlining.cpp index a8360b15..c031daf4 100644 --- a/codon/sir/util/outlining.cpp +++ b/codon/cir/util/outlining.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "outlining.h" @@ -6,9 +6,9 @@ #include #include -#include "codon/sir/util/cloning.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/operator.h" +#include "codon/cir/util/cloning.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/operator.h" namespace codon { namespace ir { diff --git a/codon/sir/util/outlining.h b/codon/cir/util/outlining.h similarity index 97% rename from codon/sir/util/outlining.h rename to codon/cir/util/outlining.h index 8baada45..0a252f07 100644 --- a/codon/sir/util/outlining.h +++ b/codon/cir/util/outlining.h @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/sir.h" +#include "codon/cir/cir.h" namespace codon { namespace ir { diff --git a/codon/sir/util/packs.h b/codon/cir/util/packs.h similarity index 93% rename from codon/sir/util/packs.h rename to codon/cir/util/packs.h index 481b7ce9..d7d51355 100644 --- a/codon/sir/util/packs.h +++ b/codon/cir/util/packs.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/sir/util/side_effect.cpp b/codon/cir/util/side_effect.cpp similarity index 90% rename from codon/sir/util/side_effect.cpp rename to codon/cir/util/side_effect.cpp index fb887055..263902f6 100644 --- a/codon/sir/util/side_effect.cpp +++ b/codon/cir/util/side_effect.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "side_effect.h" diff --git a/codon/sir/util/side_effect.h b/codon/cir/util/side_effect.h similarity index 94% rename from codon/sir/util/side_effect.h rename to codon/cir/util/side_effect.h index ae41f965..81f9e8ab 100644 --- a/codon/sir/util/side_effect.h +++ b/codon/cir/util/side_effect.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/sir/util/visitor.cpp b/codon/cir/util/visitor.cpp similarity index 98% rename from codon/sir/util/visitor.cpp rename to codon/cir/util/visitor.cpp index 1d0fb79e..2044e26d 100644 --- a/codon/sir/util/visitor.cpp +++ b/codon/cir/util/visitor.cpp @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "visitor.h" -#include "codon/sir/sir.h" +#include "codon/cir/cir.h" namespace codon { namespace ir { diff --git a/codon/sir/util/visitor.h b/codon/cir/util/visitor.h similarity index 98% rename from codon/sir/util/visitor.h rename to codon/cir/util/visitor.h index 9d7179e5..4767f0e2 100644 --- a/codon/sir/util/visitor.h +++ b/codon/cir/util/visitor.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -89,7 +89,7 @@ class FlowInstr; namespace util { -/// Base for SIR visitors +/// Base for CIR visitors class Visitor { protected: virtual void defaultVisit(codon::ir::Node *) { diff --git a/codon/sir/value.cpp b/codon/cir/value.cpp similarity index 96% rename from codon/sir/value.cpp rename to codon/cir/value.cpp index 439f6cec..13ef1343 100644 --- a/codon/sir/value.cpp +++ b/codon/cir/value.cpp @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "value.h" -#include "codon/sir/instr.h" -#include "codon/sir/module.h" +#include "codon/cir/instr.h" +#include "codon/cir/module.h" namespace codon { namespace ir { diff --git a/codon/sir/value.h b/codon/cir/value.h similarity index 95% rename from codon/sir/value.h rename to codon/cir/value.h index b7939afb..199d2f84 100644 --- a/codon/sir/value.h +++ b/codon/cir/value.h @@ -1,10 +1,10 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once -#include "codon/sir/base.h" -#include "codon/sir/types/types.h" -#include "codon/sir/util/packs.h" +#include "codon/cir/base.h" +#include "codon/cir/types/types.h" +#include "codon/cir/util/packs.h" namespace codon { namespace ir { diff --git a/codon/sir/var.cpp b/codon/cir/var.cpp similarity index 89% rename from codon/sir/var.cpp rename to codon/cir/var.cpp index 96235699..baa1aaed 100644 --- a/codon/sir/var.cpp +++ b/codon/cir/var.cpp @@ -1,8 +1,8 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "var.h" -#include "codon/sir/module.h" +#include "codon/cir/module.h" namespace codon { namespace ir { diff --git a/codon/sir/var.h b/codon/cir/var.h similarity index 96% rename from codon/sir/var.h rename to codon/cir/var.h index 9ef04e44..03b0fc5c 100644 --- a/codon/sir/var.h +++ b/codon/cir/var.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -7,8 +7,8 @@ #include #include -#include "codon/sir/types/types.h" -#include "codon/sir/value.h" +#include "codon/cir/types/types.h" +#include "codon/cir/value.h" #include "codon/util/common.h" #include #include @@ -19,7 +19,7 @@ namespace ir { class Func; class Var; -/// SIR object representing a variable. +/// CIR object representing a variable. class Var : public ReplaceableNodeBase, public IdMixin { private: /// the variable's type diff --git a/codon/compiler/compiler.cpp b/codon/compiler/compiler.cpp index 8bed4f25..54f7dd86 100644 --- a/codon/compiler/compiler.cpp +++ b/codon/compiler/compiler.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "compiler.h" diff --git a/codon/compiler/compiler.h b/codon/compiler/compiler.h index cf652510..5d5712e6 100644 --- a/codon/compiler/compiler.h +++ b/codon/compiler/compiler.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -10,9 +10,9 @@ #include "codon/compiler/error.h" #include "codon/dsl/plugins.h" #include "codon/parser/cache.h" -#include "codon/sir/llvm/llvisitor.h" -#include "codon/sir/module.h" -#include "codon/sir/transform/manager.h" +#include "codon/cir/llvm/llvisitor.h" +#include "codon/cir/module.h" +#include "codon/cir/transform/manager.h" namespace codon { diff --git a/codon/compiler/debug_listener.cpp b/codon/compiler/debug_listener.cpp index e96a62a1..9a486086 100644 --- a/codon/compiler/debug_listener.cpp +++ b/codon/compiler/debug_listener.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "debug_listener.h" diff --git a/codon/compiler/debug_listener.h b/codon/compiler/debug_listener.h index 70610b90..d4ce3ce4 100644 --- a/codon/compiler/debug_listener.h +++ b/codon/compiler/debug_listener.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -7,7 +7,7 @@ #include #include -#include "codon/sir/llvm/llvm.h" +#include "codon/cir/llvm/llvm.h" namespace codon { diff --git a/codon/compiler/engine.cpp b/codon/compiler/engine.cpp index 02548387..b7741d69 100644 --- a/codon/compiler/engine.cpp +++ b/codon/compiler/engine.cpp @@ -1,9 +1,9 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "engine.h" #include "codon/compiler/memory_manager.h" -#include "codon/sir/llvm/optimize.h" +#include "codon/cir/llvm/optimize.h" namespace codon { namespace jit { diff --git a/codon/compiler/engine.h b/codon/compiler/engine.h index 395d69ee..32290838 100644 --- a/codon/compiler/engine.h +++ b/codon/compiler/engine.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -6,7 +6,7 @@ #include #include "codon/compiler/debug_listener.h" -#include "codon/sir/llvm/llvm.h" +#include "codon/cir/llvm/llvm.h" namespace codon { namespace jit { diff --git a/codon/compiler/error.cpp b/codon/compiler/error.cpp index 249bd0e4..7f69d356 100644 --- a/codon/compiler/error.cpp +++ b/codon/compiler/error.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "error.h" diff --git a/codon/compiler/error.h b/codon/compiler/error.h index f522a9ef..0826e3d4 100644 --- a/codon/compiler/error.h +++ b/codon/compiler/error.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/compiler/jit.cpp b/codon/compiler/jit.cpp index 1beea2f6..20d1d833 100644 --- a/codon/compiler/jit.cpp +++ b/codon/compiler/jit.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "jit.h" diff --git a/codon/compiler/jit.h b/codon/compiler/jit.h index 1c8e0060..e873b465 100644 --- a/codon/compiler/jit.h +++ b/codon/compiler/jit.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -12,9 +12,9 @@ #include "codon/compiler/error.h" #include "codon/parser/cache.h" #include "codon/runtime/lib.h" -#include "codon/sir/llvm/llvisitor.h" -#include "codon/sir/transform/manager.h" -#include "codon/sir/var.h" +#include "codon/cir/llvm/llvisitor.h" +#include "codon/cir/transform/manager.h" +#include "codon/cir/var.h" #include "codon/compiler/jit_extern.h" diff --git a/codon/compiler/jit_extern.h b/codon/compiler/jit_extern.h index 6034f69a..655a3c75 100644 --- a/codon/compiler/jit_extern.h +++ b/codon/compiler/jit_extern.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/compiler/memory_manager.cpp b/codon/compiler/memory_manager.cpp index a093b980..ba648ff3 100644 --- a/codon/compiler/memory_manager.cpp +++ b/codon/compiler/memory_manager.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "memory_manager.h" diff --git a/codon/compiler/memory_manager.h b/codon/compiler/memory_manager.h index 0359e1e6..1c95fb08 100644 --- a/codon/compiler/memory_manager.h +++ b/codon/compiler/memory_manager.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -6,7 +6,7 @@ #include #include -#include "codon/sir/llvm/llvm.h" +#include "codon/cir/llvm/llvm.h" namespace codon { diff --git a/codon/dsl/dsl.h b/codon/dsl/dsl.h index 0ad6c837..7e095d5b 100644 --- a/codon/dsl/dsl.h +++ b/codon/dsl/dsl.h @@ -1,11 +1,11 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once #include "codon/parser/cache.h" -#include "codon/sir/sir.h" -#include "codon/sir/transform/manager.h" -#include "codon/sir/transform/pass.h" +#include "codon/cir/cir.h" +#include "codon/cir/transform/manager.h" +#include "codon/cir/transform/pass.h" #include "llvm/Passes/PassBuilder.h" #include #include diff --git a/codon/dsl/plugins.cpp b/codon/dsl/plugins.cpp index 2f467f5b..06dc61c5 100644 --- a/codon/dsl/plugins.cpp +++ b/codon/dsl/plugins.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "plugins.h" diff --git a/codon/dsl/plugins.h b/codon/dsl/plugins.h index 1172f626..c3015f8d 100644 --- a/codon/dsl/plugins.h +++ b/codon/dsl/plugins.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -9,7 +9,7 @@ #include "codon/compiler/error.h" #include "codon/dsl/dsl.h" -#include "codon/sir/util/iterators.h" +#include "codon/cir/util/iterators.h" #include "llvm/Support/DynamicLibrary.h" namespace codon { diff --git a/codon/parser/ast.h b/codon/parser/ast.h index 4295cd25..9e2ca471 100644 --- a/codon/parser/ast.h +++ b/codon/parser/ast.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/error.h b/codon/parser/ast/error.h index 758a4c18..f9eca003 100644 --- a/codon/parser/ast/error.h +++ b/codon/parser/ast/error.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/expr.cpp b/codon/parser/ast/expr.cpp index 43b89b54..c7947a78 100644 --- a/codon/parser/ast/expr.cpp +++ b/codon/parser/ast/expr.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "expr.h" diff --git a/codon/parser/ast/expr.h b/codon/parser/ast/expr.h index 53b9b981..abe6eeb5 100644 --- a/codon/parser/ast/expr.h +++ b/codon/parser/ast/expr.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/stmt.cpp b/codon/parser/ast/stmt.cpp index b3b87acb..457dcf4c 100644 --- a/codon/parser/ast/stmt.cpp +++ b/codon/parser/ast/stmt.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "stmt.h" diff --git a/codon/parser/ast/stmt.h b/codon/parser/ast/stmt.h index 2e7640ab..3ec6c1e1 100644 --- a/codon/parser/ast/stmt.h +++ b/codon/parser/ast/stmt.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/types.h b/codon/parser/ast/types.h index 8d394c50..5e11cacc 100644 --- a/codon/parser/ast/types.h +++ b/codon/parser/ast/types.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/types/class.cpp b/codon/parser/ast/types/class.cpp index 385714e5..ef272418 100644 --- a/codon/parser/ast/types/class.cpp +++ b/codon/parser/ast/types/class.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/ast/types/class.h b/codon/parser/ast/types/class.h index e2927cf8..1865a9b7 100644 --- a/codon/parser/ast/types/class.h +++ b/codon/parser/ast/types/class.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/types/function.cpp b/codon/parser/ast/types/function.cpp index 876d6475..19a81d88 100644 --- a/codon/parser/ast/types/function.cpp +++ b/codon/parser/ast/types/function.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/ast/types/function.h b/codon/parser/ast/types/function.h index 357a9088..6d53d951 100644 --- a/codon/parser/ast/types/function.h +++ b/codon/parser/ast/types/function.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/types/link.cpp b/codon/parser/ast/types/link.cpp index 790e3d26..c2ab722a 100644 --- a/codon/parser/ast/types/link.cpp +++ b/codon/parser/ast/types/link.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/ast/types/link.h b/codon/parser/ast/types/link.h index 81b0ef62..67917419 100644 --- a/codon/parser/ast/types/link.h +++ b/codon/parser/ast/types/link.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/types/static.cpp b/codon/parser/ast/types/static.cpp index e6c244d0..db478267 100644 --- a/codon/parser/ast/types/static.cpp +++ b/codon/parser/ast/types/static.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/ast/types/static.h b/codon/parser/ast/types/static.h index f81102d5..3a86cfa7 100644 --- a/codon/parser/ast/types/static.h +++ b/codon/parser/ast/types/static.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/types/traits.cpp b/codon/parser/ast/types/traits.cpp index 0585f727..0cf36a16 100644 --- a/codon/parser/ast/types/traits.cpp +++ b/codon/parser/ast/types/traits.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/ast/types/traits.h b/codon/parser/ast/types/traits.h index a51b5da2..dd13cfef 100644 --- a/codon/parser/ast/types/traits.h +++ b/codon/parser/ast/types/traits.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/types/type.cpp b/codon/parser/ast/types/type.cpp index ab3f4bed..af4599b4 100644 --- a/codon/parser/ast/types/type.cpp +++ b/codon/parser/ast/types/type.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/ast/types/type.h b/codon/parser/ast/types/type.h index 5b8daf16..9034a0a6 100644 --- a/codon/parser/ast/types/type.h +++ b/codon/parser/ast/types/type.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ast/types/union.cpp b/codon/parser/ast/types/union.cpp index 1c2e6f7c..4a4b37aa 100644 --- a/codon/parser/ast/types/union.cpp +++ b/codon/parser/ast/types/union.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/ast/types/union.h b/codon/parser/ast/types/union.h index 0bf174e1..2a2c7a62 100644 --- a/codon/parser/ast/types/union.h +++ b/codon/parser/ast/types/union.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/cache.cpp b/codon/parser/cache.cpp index fb79cbdb..f7ab2a68 100644 --- a/codon/parser/cache.cpp +++ b/codon/parser/cache.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "cache.h" diff --git a/codon/parser/cache.h b/codon/parser/cache.h index 35565455..1fe4ea16 100644 --- a/codon/parser/cache.h +++ b/codon/parser/cache.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -11,7 +11,7 @@ #include "codon/parser/ast.h" #include "codon/parser/common.h" #include "codon/parser/ctx.h" -#include "codon/sir/sir.h" +#include "codon/cir/cir.h" #define FILE_GENERATED "" #define MODULE_MAIN "__main__" diff --git a/codon/parser/common.cpp b/codon/parser/common.cpp index 3948693b..cb8bb419 100644 --- a/codon/parser/common.cpp +++ b/codon/parser/common.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "common.h" diff --git a/codon/parser/common.h b/codon/parser/common.h index 163783c2..d9854482 100644 --- a/codon/parser/common.h +++ b/codon/parser/common.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/ctx.h b/codon/parser/ctx.h index 7420cb91..54c94b5f 100644 --- a/codon/parser/ctx.h +++ b/codon/parser/ctx.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/peg/peg.cpp b/codon/parser/peg/peg.cpp index 4d4bba95..292b889b 100644 --- a/codon/parser/peg/peg.cpp +++ b/codon/parser/peg/peg.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "peg.h" diff --git a/codon/parser/peg/peg.h b/codon/parser/peg/peg.h index 94f2cc34..1aab26e3 100644 --- a/codon/parser/peg/peg.h +++ b/codon/parser/peg/peg.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/peg/rules.h b/codon/parser/peg/rules.h index 30f30cef..17dd9937 100644 --- a/codon/parser/peg/rules.h +++ b/codon/parser/peg/rules.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/visitors/doc/doc.cpp b/codon/parser/visitors/doc/doc.cpp index 911075bb..46496764 100644 --- a/codon/parser/visitors/doc/doc.cpp +++ b/codon/parser/visitors/doc/doc.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "doc.h" diff --git a/codon/parser/visitors/doc/doc.h b/codon/parser/visitors/doc/doc.h index d5f5e1c6..ed3b3f62 100644 --- a/codon/parser/visitors/doc/doc.h +++ b/codon/parser/visitors/doc/doc.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/visitors/format/format.cpp b/codon/parser/visitors/format/format.cpp index 5459f186..509e1716 100644 --- a/codon/parser/visitors/format/format.cpp +++ b/codon/parser/visitors/format/format.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/format/format.h b/codon/parser/visitors/format/format.h index 77c54c61..cb4b74ff 100644 --- a/codon/parser/visitors/format/format.h +++ b/codon/parser/visitors/format/format.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/visitors/simplify/access.cpp b/codon/parser/visitors/simplify/access.cpp index 496933ff..4e3459cb 100644 --- a/codon/parser/visitors/simplify/access.cpp +++ b/codon/parser/visitors/simplify/access.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/assign.cpp b/codon/parser/visitors/simplify/assign.cpp index f5359868..cbe15e6c 100644 --- a/codon/parser/visitors/simplify/assign.cpp +++ b/codon/parser/visitors/simplify/assign.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/basic.cpp b/codon/parser/visitors/simplify/basic.cpp index 8f0ec936..3cd34e55 100644 --- a/codon/parser/visitors/simplify/basic.cpp +++ b/codon/parser/visitors/simplify/basic.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/call.cpp b/codon/parser/visitors/simplify/call.cpp index 236ea65d..50a9ba03 100644 --- a/codon/parser/visitors/simplify/call.cpp +++ b/codon/parser/visitors/simplify/call.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/class.cpp b/codon/parser/visitors/simplify/class.cpp index 10d9a2e8..575d7474 100644 --- a/codon/parser/visitors/simplify/class.cpp +++ b/codon/parser/visitors/simplify/class.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/collections.cpp b/codon/parser/visitors/simplify/collections.cpp index 9c4f7c4e..9b2039b8 100644 --- a/codon/parser/visitors/simplify/collections.cpp +++ b/codon/parser/visitors/simplify/collections.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/cond.cpp b/codon/parser/visitors/simplify/cond.cpp index 5bfb9bf2..ac031fdf 100644 --- a/codon/parser/visitors/simplify/cond.cpp +++ b/codon/parser/visitors/simplify/cond.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/ctx.cpp b/codon/parser/visitors/simplify/ctx.cpp index 57c8f2eb..c5a95493 100644 --- a/codon/parser/visitors/simplify/ctx.cpp +++ b/codon/parser/visitors/simplify/ctx.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "ctx.h" diff --git a/codon/parser/visitors/simplify/ctx.h b/codon/parser/visitors/simplify/ctx.h index 4e5c6a4e..1f959170 100644 --- a/codon/parser/visitors/simplify/ctx.h +++ b/codon/parser/visitors/simplify/ctx.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/visitors/simplify/error.cpp b/codon/parser/visitors/simplify/error.cpp index 9aceb062..9e604c44 100644 --- a/codon/parser/visitors/simplify/error.cpp +++ b/codon/parser/visitors/simplify/error.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/function.cpp b/codon/parser/visitors/simplify/function.cpp index 9773c689..0e78276d 100644 --- a/codon/parser/visitors/simplify/function.cpp +++ b/codon/parser/visitors/simplify/function.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/import.cpp b/codon/parser/visitors/simplify/import.cpp index 86dc7e07..77ab4aca 100644 --- a/codon/parser/visitors/simplify/import.cpp +++ b/codon/parser/visitors/simplify/import.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/loops.cpp b/codon/parser/visitors/simplify/loops.cpp index eee3fc96..b01cc08d 100644 --- a/codon/parser/visitors/simplify/loops.cpp +++ b/codon/parser/visitors/simplify/loops.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/op.cpp b/codon/parser/visitors/simplify/op.cpp index 6a573352..911dafa3 100644 --- a/codon/parser/visitors/simplify/op.cpp +++ b/codon/parser/visitors/simplify/op.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/simplify/simplify.cpp b/codon/parser/visitors/simplify/simplify.cpp index ad0d4161..18efa584 100644 --- a/codon/parser/visitors/simplify/simplify.cpp +++ b/codon/parser/visitors/simplify/simplify.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "simplify.h" diff --git a/codon/parser/visitors/simplify/simplify.h b/codon/parser/visitors/simplify/simplify.h index 43a9247d..182d65c2 100644 --- a/codon/parser/visitors/simplify/simplify.h +++ b/codon/parser/visitors/simplify/simplify.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/visitors/translate/translate.cpp b/codon/parser/visitors/translate/translate.cpp index 76536a25..426159e2 100644 --- a/codon/parser/visitors/translate/translate.cpp +++ b/codon/parser/visitors/translate/translate.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "translate.h" @@ -10,8 +10,8 @@ #include "codon/parser/ast.h" #include "codon/parser/common.h" #include "codon/parser/visitors/translate/translate_ctx.h" -#include "codon/sir/transform/parallel/schedule.h" -#include "codon/sir/util/cloning.h" +#include "codon/cir/transform/parallel/schedule.h" +#include "codon/cir/util/cloning.h" using codon::ir::cast; using codon::ir::transform::parallel::OMPSched; diff --git a/codon/parser/visitors/translate/translate.h b/codon/parser/visitors/translate/translate.h index 51cd7b74..648a01ca 100644 --- a/codon/parser/visitors/translate/translate.h +++ b/codon/parser/visitors/translate/translate.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -13,7 +13,7 @@ #include "codon/parser/common.h" #include "codon/parser/visitors/translate/translate_ctx.h" #include "codon/parser/visitors/visitor.h" -#include "codon/sir/sir.h" +#include "codon/cir/cir.h" namespace codon::ast { diff --git a/codon/parser/visitors/translate/translate_ctx.cpp b/codon/parser/visitors/translate/translate_ctx.cpp index 1af784bb..81f2b2ec 100644 --- a/codon/parser/visitors/translate/translate_ctx.cpp +++ b/codon/parser/visitors/translate/translate_ctx.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "translate_ctx.h" diff --git a/codon/parser/visitors/translate/translate_ctx.h b/codon/parser/visitors/translate/translate_ctx.h index ec6b08b2..83ecdc0e 100644 --- a/codon/parser/visitors/translate/translate_ctx.h +++ b/codon/parser/visitors/translate/translate_ctx.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once @@ -10,8 +10,8 @@ #include "codon/parser/cache.h" #include "codon/parser/common.h" #include "codon/parser/ctx.h" -#include "codon/sir/sir.h" -#include "codon/sir/types/types.h" +#include "codon/cir/cir.h" +#include "codon/cir/types/types.h" namespace codon::ast { diff --git a/codon/parser/visitors/typecheck/access.cpp b/codon/parser/visitors/typecheck/access.cpp index b8a00fa7..9caa87d0 100644 --- a/codon/parser/visitors/typecheck/access.cpp +++ b/codon/parser/visitors/typecheck/access.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/typecheck/assign.cpp b/codon/parser/visitors/typecheck/assign.cpp index f543597b..7ba012af 100644 --- a/codon/parser/visitors/typecheck/assign.cpp +++ b/codon/parser/visitors/typecheck/assign.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/typecheck/basic.cpp b/codon/parser/visitors/typecheck/basic.cpp index 57e5df68..a45465bd 100644 --- a/codon/parser/visitors/typecheck/basic.cpp +++ b/codon/parser/visitors/typecheck/basic.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "codon/parser/ast.h" #include "codon/parser/cache.h" diff --git a/codon/parser/visitors/typecheck/call.cpp b/codon/parser/visitors/typecheck/call.cpp index e9fa1f4c..bfd6305e 100644 --- a/codon/parser/visitors/typecheck/call.cpp +++ b/codon/parser/visitors/typecheck/call.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/typecheck/class.cpp b/codon/parser/visitors/typecheck/class.cpp index 3590a649..9e5b781b 100644 --- a/codon/parser/visitors/typecheck/class.cpp +++ b/codon/parser/visitors/typecheck/class.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/typecheck/collections.cpp b/codon/parser/visitors/typecheck/collections.cpp index d4aad084..d41ed6a2 100644 --- a/codon/parser/visitors/typecheck/collections.cpp +++ b/codon/parser/visitors/typecheck/collections.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "codon/parser/ast.h" #include "codon/parser/cache.h" diff --git a/codon/parser/visitors/typecheck/cond.cpp b/codon/parser/visitors/typecheck/cond.cpp index 014b1b68..f73d38d3 100644 --- a/codon/parser/visitors/typecheck/cond.cpp +++ b/codon/parser/visitors/typecheck/cond.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "codon/parser/ast.h" #include "codon/parser/common.h" diff --git a/codon/parser/visitors/typecheck/ctx.cpp b/codon/parser/visitors/typecheck/ctx.cpp index 6113b128..97adfec5 100644 --- a/codon/parser/visitors/typecheck/ctx.cpp +++ b/codon/parser/visitors/typecheck/ctx.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "ctx.h" diff --git a/codon/parser/visitors/typecheck/ctx.h b/codon/parser/visitors/typecheck/ctx.h index ed3ea6a6..06c085c4 100644 --- a/codon/parser/visitors/typecheck/ctx.h +++ b/codon/parser/visitors/typecheck/ctx.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/visitors/typecheck/error.cpp b/codon/parser/visitors/typecheck/error.cpp index 0b46f799..8385ecbe 100644 --- a/codon/parser/visitors/typecheck/error.cpp +++ b/codon/parser/visitors/typecheck/error.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "codon/parser/ast.h" #include "codon/parser/common.h" diff --git a/codon/parser/visitors/typecheck/function.cpp b/codon/parser/visitors/typecheck/function.cpp index 71896d52..a80546c4 100644 --- a/codon/parser/visitors/typecheck/function.cpp +++ b/codon/parser/visitors/typecheck/function.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/typecheck/infer.cpp b/codon/parser/visitors/typecheck/infer.cpp index 62ab3115..7209b277 100644 --- a/codon/parser/visitors/typecheck/infer.cpp +++ b/codon/parser/visitors/typecheck/infer.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include @@ -11,7 +11,7 @@ #include "codon/parser/common.h" #include "codon/parser/visitors/simplify/simplify.h" #include "codon/parser/visitors/typecheck/typecheck.h" -#include "codon/sir/types/types.h" +#include "codon/cir/types/types.h" using fmt::format; using namespace codon::error; diff --git a/codon/parser/visitors/typecheck/loops.cpp b/codon/parser/visitors/typecheck/loops.cpp index 3e08506b..479241da 100644 --- a/codon/parser/visitors/typecheck/loops.cpp +++ b/codon/parser/visitors/typecheck/loops.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/typecheck/op.cpp b/codon/parser/visitors/typecheck/op.cpp index 7e05bb10..65342602 100644 --- a/codon/parser/visitors/typecheck/op.cpp +++ b/codon/parser/visitors/typecheck/op.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/parser/visitors/typecheck/typecheck.cpp b/codon/parser/visitors/typecheck/typecheck.cpp index 05003971..537b2073 100644 --- a/codon/parser/visitors/typecheck/typecheck.cpp +++ b/codon/parser/visitors/typecheck/typecheck.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "typecheck.h" diff --git a/codon/parser/visitors/typecheck/typecheck.h b/codon/parser/visitors/typecheck/typecheck.h index 6e464c0b..75332c18 100644 --- a/codon/parser/visitors/typecheck/typecheck.h +++ b/codon/parser/visitors/typecheck/typecheck.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/parser/visitors/visitor.cpp b/codon/parser/visitors/visitor.cpp index ace05719..13c348bf 100644 --- a/codon/parser/visitors/visitor.cpp +++ b/codon/parser/visitors/visitor.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "visitor.h" diff --git a/codon/parser/visitors/visitor.h b/codon/parser/visitors/visitor.h index ff24e83f..c4af0029 100644 --- a/codon/parser/visitors/visitor.h +++ b/codon/parser/visitors/visitor.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/runtime/exc.cpp b/codon/runtime/exc.cpp index c6d1e423..e5776c85 100644 --- a/codon/runtime/exc.cpp +++ b/codon/runtime/exc.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "codon/runtime/lib.h" #include "llvm/BinaryFormat/Dwarf.h" diff --git a/codon/runtime/gpu.cpp b/codon/runtime/gpu.cpp index 15d8ff97..72272fcc 100644 --- a/codon/runtime/gpu.cpp +++ b/codon/runtime/gpu.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/runtime/lib.cpp b/codon/runtime/lib.cpp index dea543ff..f3d148ae 100644 --- a/codon/runtime/lib.cpp +++ b/codon/runtime/lib.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/codon/runtime/lib.h b/codon/runtime/lib.h index 9bfd86a4..886d8243 100644 --- a/codon/runtime/lib.h +++ b/codon/runtime/lib.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/runtime/re.cpp b/codon/runtime/re.cpp index e24aa220..4facd25c 100644 --- a/codon/runtime/re.cpp +++ b/codon/runtime/re.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "codon/runtime/lib.h" #include diff --git a/codon/sir/sir.h b/codon/sir/sir.h deleted file mode 100644 index dbdb700e..00000000 --- a/codon/sir/sir.h +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright (C) 2022 Exaloop Inc. - -#pragma once - -#include "codon/sir/const.h" -#include "codon/sir/dsl/nodes.h" -#include "codon/sir/flow.h" -#include "codon/sir/func.h" -#include "codon/sir/instr.h" -#include "codon/sir/module.h" -#include "codon/sir/types/types.h" -#include "codon/sir/value.h" -#include "codon/sir/var.h" diff --git a/codon/util/common.cpp b/codon/util/common.cpp index c52a8838..cb9cb7e0 100644 --- a/codon/util/common.cpp +++ b/codon/util/common.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include "common.h" diff --git a/codon/util/common.h b/codon/util/common.h index 7bf6a568..f79b42f9 100644 --- a/codon/util/common.h +++ b/codon/util/common.h @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #pragma once diff --git a/codon/util/peg2cpp.cpp b/codon/util/peg2cpp.cpp index b3edb1eb..34efec33 100644 --- a/codon/util/peg2cpp.cpp +++ b/codon/util/peg2cpp.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include diff --git a/docs/README.md b/docs/README.md index 209d3317..8f488bd3 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,4 +1,4 @@ -![Codon Pipeline](./img/pipeline.svg) +Codon Pipeline Codon is a high-performance Python compiler that compiles Python code to native machine code without any runtime overhead. Typical speedups over diff --git a/docs/advanced/ir.md b/docs/advanced/ir.md index 330a4376..f41ffd0a 100644 --- a/docs/advanced/ir.md +++ b/docs/advanced/ir.md @@ -1,14 +1,14 @@ After type checking but before native code generation, the Codon compiler makes use of a new [intermediate representation](https://en.wikipedia.org/wiki/Intermediate_representation) -called SIR, where a number of higher-level optimizations, transformations and analyses take place. -SIR offers a comprehensive framework for writing new optimizations or +called CIR, where a number of higher-level optimizations, transformations and analyses take place. +CIR offers a comprehensive framework for writing new optimizations or analyses without having to deal with cumbersome abstract syntax trees (ASTs). -In this section we'll give an overview of SIR, discuss the types of things +In this section we'll give an overview of CIR, discuss the types of things you might want to use it for, and give a few examples. # At a glance -Here is a small (simplified) example showcasing SIR in action. Consider the code: +Here is a small (simplified) example showcasing CIR in action. Consider the code: ``` python def fib(n): @@ -44,17 +44,17 @@ names have been cleaned up for simplicity): A few interesting points to consider: -- SIR is hierarchical like ASTS, but unlike ASTs it uses a vastly reduced +- CIR is hierarchical like ASTS, but unlike ASTs it uses a vastly reduced set of nodes, making it much easier to work with and reason about. -- Operators are expressed as function calls. In fact, SIR has no explicit +- Operators are expressed as function calls. In fact, CIR has no explicit concept of `+`, `-`, etc. and instead expresses these via their corresponding magic methods (`__add__`, `__sub__`, etc.). -- SIR has no concept of generic types. By the time SIR is generated, all types +- CIR has no concept of generic types. By the time CIR is generated, all types need to have been resolved. # Structure -SIR is comprised of a set of *nodes*, each with a specific semantic meaning. +CIR is comprised of a set of *nodes*, each with a specific semantic meaning. There are nodes for representing constants (e.g. `42`), instructions (e.g. `call`) control flow (e.g. `if`), types (e.g. `int`) and so on. @@ -75,10 +75,10 @@ and some examples: # Uses -SIR provides a framework for doing program optimizations, analyses and transformations. +CIR provides a framework for doing program optimizations, analyses and transformations. These operations are collectively known as IR *passes*. -A number of built-in passes and other functionalities are provided by SIR. These can be +A number of built-in passes and other functionalities are provided by CIR. These can be used as building blocks to create new passes. Examples include: - Control-flow graph creation @@ -142,19 +142,19 @@ are some notable points: and if so we extract the first and second arguments. - We cast these arguments to `IntConst`. If the results are non-null, then both arguments were in fact integer constants, meaning we can replace the original call instruction with a new constant that - represents the result of the addition. In SIR, all nodes are "replaceable" via a `replaceAll()` method. + represents the result of the addition. In CIR, all nodes are "replaceable" via a `replaceAll()` method. - Lastly, notice that all passes have a `KEY` field to uniquely identify them. ## Bidirectionality -An important and often very useful feature of SIR is that it is *bidirectional*, meaning it's possible +An important and often very useful feature of CIR is that it is *bidirectional*, meaning it's possible to return to the type checking stage to generate new IR nodes that were not initially present in the module. For example, imagine that your pass needs to use a `List` with some new element type; that list's -methods need to be instantiated by the type checker for use in SIR. In practice this bidirectionality +methods need to be instantiated by the type checker for use in CIR. In practice this bidirectionality often lets you write large parts of your optimization or transformation in Codon, and pull out the necessary functions or types as needed in the pass. -SIR's `Module` class has three methods to enable this feature: +CIR's `Module` class has three methods to enable this feature: ``` cpp /// Gets or realizes a function. @@ -260,9 +260,9 @@ arguments, one for `float` arguments and finally one for `str` arguments. # Extending the IR -SIR is extensible, and it is possible to add new constants, instructions, flows and types. This can be +CIR is extensible, and it is possible to add new constants, instructions, flows and types. This can be done by subclassing the corresponding *custom* base class; to create a custom type, for example, you -would subclass `CustomType`. Let's look at an example where we extend SIR to add a 32-bit float type: +would subclass `CustomType`. Let's look at an example where we extend CIR to add a 32-bit float type: ``` cpp using namespace codon::ir; @@ -311,7 +311,7 @@ When subclassing nodes other than types (e.g. instructions, flows, etc.), be sur The `codon/ir/util/` directory has a number of utility and generally helpful functions, for things like cloning IR, inlining/outlining, matching and more. `codon/ir/util/irtools.h` in particular has many helpful -functions for performing various common tasks. If you're working with SIR, be sure to take a look at these +functions for performing various common tasks. If you're working with CIR, be sure to take a look at these functions to make your life easier! # Standard pass pipeline diff --git a/stdlib/algorithms/heapsort.codon b/stdlib/algorithms/heapsort.codon index 5460f2d2..f5d95c2b 100644 --- a/stdlib/algorithms/heapsort.codon +++ b/stdlib/algorithms/heapsort.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. def _heapify( arr: Array[T], begin: int, end: int, keyf: Callable[[T], S], T: type, S: type diff --git a/stdlib/algorithms/insertionsort.codon b/stdlib/algorithms/insertionsort.codon index 400ba068..d1494c99 100644 --- a/stdlib/algorithms/insertionsort.codon +++ b/stdlib/algorithms/insertionsort.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. def _insertion_sort( arr: Array[T], begin: int, end: int, keyf: Callable[[T], S], T: type, S: type diff --git a/stdlib/algorithms/pdqsort.codon b/stdlib/algorithms/pdqsort.codon index bfafde13..6a03c0b6 100644 --- a/stdlib/algorithms/pdqsort.codon +++ b/stdlib/algorithms/pdqsort.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Parts of this file: https://github.com/orlp/pdqsort # License: # Copyright (c) 2021 Orson Peters diff --git a/stdlib/algorithms/qsort.codon b/stdlib/algorithms/qsort.codon index 5e037fb1..507e71e3 100644 --- a/stdlib/algorithms/qsort.codon +++ b/stdlib/algorithms/qsort.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Parts of this file: https://github.com/orlp/pdqsort # License: # Copyright (c) 2021 Orson Peters diff --git a/stdlib/algorithms/strings.codon b/stdlib/algorithms/strings.codon index 74f1b761..86983b4a 100644 --- a/stdlib/algorithms/strings.codon +++ b/stdlib/algorithms/strings.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Implementation of vectorized Rabin-Karp string search. # See http://0x80.pl/articles/simd-strfind.html for diff --git a/stdlib/algorithms/timsort.codon b/stdlib/algorithms/timsort.codon index b7624484..0c3fcac5 100644 --- a/stdlib/algorithms/timsort.codon +++ b/stdlib/algorithms/timsort.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Pats of this file: (c) 2022 Python Software Foundation. All right reserved. # License: # 1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and diff --git a/stdlib/bisect.codon b/stdlib/bisect.codon index b7ad52a0..5bec38ff 100644 --- a/stdlib/bisect.codon +++ b/stdlib/bisect.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Pats of this file: (c) 2022 Python Software Foundation. All right reserved. # License: # 1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and diff --git a/stdlib/cmath.codon b/stdlib/cmath.codon index 7b28a5a1..1ce0a684 100644 --- a/stdlib/cmath.codon +++ b/stdlib/cmath.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. import math diff --git a/stdlib/collections.codon b/stdlib/collections.codon index 9d654fc4..2cc87994 100644 --- a/stdlib/collections.codon +++ b/stdlib/collections.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.types.optional import unwrap diff --git a/stdlib/copy.codon b/stdlib/copy.codon index 203372f6..d8030668 100644 --- a/stdlib/copy.codon +++ b/stdlib/copy.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. class Error(Static[Exception]): def __init__(self, message: str = ""): diff --git a/stdlib/datetime.codon b/stdlib/datetime.codon index 8ee816ca..eb458b73 100644 --- a/stdlib/datetime.codon +++ b/stdlib/datetime.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Parts of this file: (c) 2022 Python Software Foundation. All right reserved. # - Currently does not support timezones # - Timedeltas use a pure-microseconds representations for efficiency, meaning they diff --git a/stdlib/experimental/simd.codon b/stdlib/experimental/simd.codon index 455ec228..8eb6fa5c 100644 --- a/stdlib/experimental/simd.codon +++ b/stdlib/experimental/simd.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @tuple class Vec[T, N: Static[int]]: diff --git a/stdlib/functools.codon b/stdlib/functools.codon index a6e4faf8..e5088b2d 100644 --- a/stdlib/functools.codon +++ b/stdlib/functools.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. def partial(): # internal pass diff --git a/stdlib/getopt.codon b/stdlib/getopt.codon index 9f4b4c60..fcc36f6a 100644 --- a/stdlib/getopt.codon +++ b/stdlib/getopt.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Parts of this file: (c) 2022 Python Software Foundation. All right reserved. # License: # 1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and diff --git a/stdlib/gpu.codon b/stdlib/gpu.codon index 02444c90..96fbad5f 100644 --- a/stdlib/gpu.codon +++ b/stdlib/gpu.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.gc import sizeof as _sizeof diff --git a/stdlib/gzip.codon b/stdlib/gzip.codon index 11f321c1..f2a37d51 100644 --- a/stdlib/gzip.codon +++ b/stdlib/gzip.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.file import gzFile diff --git a/stdlib/heapq.codon b/stdlib/heapq.codon index 19c6b874..499e9ccc 100644 --- a/stdlib/heapq.codon +++ b/stdlib/heapq.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # 'heap' is a heap at all indices >= startpos, except possibly for pos. pos # is the index of a leaf with a possibly out-of-order value. Restore the diff --git a/stdlib/internal/__init__.codon b/stdlib/internal/__init__.codon index 18219e16..fcf53831 100644 --- a/stdlib/internal/__init__.codon +++ b/stdlib/internal/__init__.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Core library diff --git a/stdlib/internal/__init_test__.codon b/stdlib/internal/__init_test__.codon index d085652d..9fd0945e 100644 --- a/stdlib/internal/__init_test__.codon +++ b/stdlib/internal/__init_test__.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Core library diff --git a/stdlib/internal/attributes.codon b/stdlib/internal/attributes.codon index eb3b612e..cdc50612 100644 --- a/stdlib/internal/attributes.codon +++ b/stdlib/internal/attributes.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @__attribute__ def test(): diff --git a/stdlib/internal/builtin.codon b/stdlib/internal/builtin.codon index 0b8277de..26109be9 100644 --- a/stdlib/internal/builtin.codon +++ b/stdlib/internal/builtin.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. class object: def __init__(self): diff --git a/stdlib/internal/c_stubs.codon b/stdlib/internal/c_stubs.codon index f29c1569..0660c31c 100644 --- a/stdlib/internal/c_stubs.codon +++ b/stdlib/internal/c_stubs.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # runtime functions from C import seq_print(str) diff --git a/stdlib/internal/core.codon b/stdlib/internal/core.codon index 1b4cdd60..d8525436 100644 --- a/stdlib/internal/core.codon +++ b/stdlib/internal/core.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @__internal__ class __internal__: diff --git a/stdlib/internal/dlopen.codon b/stdlib/internal/dlopen.codon index 78c30d24..12904701 100644 --- a/stdlib/internal/dlopen.codon +++ b/stdlib/internal/dlopen.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @pure @C diff --git a/stdlib/internal/file.codon b/stdlib/internal/file.codon index 29313145..b67d3611 100644 --- a/stdlib/internal/file.codon +++ b/stdlib/internal/file.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.gc import realloc, free diff --git a/stdlib/internal/format.codon b/stdlib/internal/format.codon index 145ac1ee..9c3b6251 100644 --- a/stdlib/internal/format.codon +++ b/stdlib/internal/format.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. def _format_error(ret: str): raise ValueError(f"invalid format specifier: {ret}") diff --git a/stdlib/internal/gc.codon b/stdlib/internal/gc.codon index 36107866..21ea5ed8 100644 --- a/stdlib/internal/gc.codon +++ b/stdlib/internal/gc.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Primarily for internal use. Regular users should not use this module. @pure diff --git a/stdlib/internal/internal.codon b/stdlib/internal/internal.codon index 7400d946..9a827040 100644 --- a/stdlib/internal/internal.codon +++ b/stdlib/internal/internal.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.gc import free, register_finalizer, seq_alloc, seq_alloc_atomic, seq_gc_add_roots diff --git a/stdlib/internal/khash.codon b/stdlib/internal/khash.codon index cd34bda6..902c8edb 100644 --- a/stdlib/internal/khash.codon +++ b/stdlib/internal/khash.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. def __ac_isempty(flag: Ptr[u32], i: int) -> int: return int(flag[i >> 4] >> u32((i & 0xF) << 1)) & 2 diff --git a/stdlib/internal/pynumerics.codon b/stdlib/internal/pynumerics.codon index 4e980414..e87254cf 100644 --- a/stdlib/internal/pynumerics.codon +++ b/stdlib/internal/pynumerics.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @pure @llvm diff --git a/stdlib/internal/python.codon b/stdlib/internal/python.codon index 2651a014..276a244a 100644 --- a/stdlib/internal/python.codon +++ b/stdlib/internal/python.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. import os diff --git a/stdlib/internal/sort.codon b/stdlib/internal/sort.codon index 9c85a166..256fdd18 100644 --- a/stdlib/internal/sort.codon +++ b/stdlib/internal/sort.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from algorithms.pdqsort import pdq_sort_inplace from algorithms.insertionsort import insertion_sort_inplace diff --git a/stdlib/internal/str.codon b/stdlib/internal/str.codon index 6c1dbfa8..d10146b7 100644 --- a/stdlib/internal/str.codon +++ b/stdlib/internal/str.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. _MAX: Static[int] = 0x7FFFFFFFFFFFFFFF @@ -713,7 +713,7 @@ class str: Return a copy of the string str with trailing whitespace removed. If chars is given, remove characters in chars instead. - Unlike Python, lstrip() deals with just ASCII characters. + Unlike Python, rstrip() deals with just ASCII characters. """ i = len(self) - 1 while i >= 0 and self._at(i)._has_char(chars): @@ -727,7 +727,7 @@ class str: Return a copy of the string str with leading and trailing whitespace removed. If chars is given, remove characters in chars instead. - Unlike Python, lstrip() deals with just ASCII characters. + Unlike Python, strip() deals with just ASCII characters. """ return self.lstrip(chars).rstrip(chars) diff --git a/stdlib/internal/types/array.codon b/stdlib/internal/types/array.codon index cf0bfb8a..3d8e4be6 100644 --- a/stdlib/internal/types/array.codon +++ b/stdlib/internal/types/array.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.gc import sizeof diff --git a/stdlib/internal/types/bool.codon b/stdlib/internal/types/bool.codon index 0fd8b1be..17683f19 100644 --- a/stdlib/internal/types/bool.codon +++ b/stdlib/internal/types/bool.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.attributes import commutative, associative diff --git a/stdlib/internal/types/byte.codon b/stdlib/internal/types/byte.codon index 88c221e3..3431b663 100644 --- a/stdlib/internal/types/byte.codon +++ b/stdlib/internal/types/byte.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @extend class byte: diff --git a/stdlib/internal/types/collections/dict.codon b/stdlib/internal/types/collections/dict.codon index 3c4071fc..952050d1 100644 --- a/stdlib/internal/types/collections/dict.codon +++ b/stdlib/internal/types/collections/dict.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # dict implementation based on klib's khash import internal.khash as khash diff --git a/stdlib/internal/types/collections/list.codon b/stdlib/internal/types/collections/list.codon index d5afafef..97be7656 100644 --- a/stdlib/internal/types/collections/list.codon +++ b/stdlib/internal/types/collections/list.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. import internal.gc as gc diff --git a/stdlib/internal/types/collections/set.codon b/stdlib/internal/types/collections/set.codon index 22fea60b..96a9ee87 100644 --- a/stdlib/internal/types/collections/set.codon +++ b/stdlib/internal/types/collections/set.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # set implementation based on klib's khash from internal.attributes import commutative, associative diff --git a/stdlib/internal/types/collections/tuple.codon b/stdlib/internal/types/collections/tuple.codon index 0b520475..fb63b299 100644 --- a/stdlib/internal/types/collections/tuple.codon +++ b/stdlib/internal/types/collections/tuple.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @tuple class DynamicTuple: diff --git a/stdlib/internal/types/complex.codon b/stdlib/internal/types/complex.codon index 4369df4b..d78d8ee1 100644 --- a/stdlib/internal/types/complex.codon +++ b/stdlib/internal/types/complex.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @tuple class complex: diff --git a/stdlib/internal/types/error.codon b/stdlib/internal/types/error.codon index c9ac8834..400a00bc 100644 --- a/stdlib/internal/types/error.codon +++ b/stdlib/internal/types/error.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Warning(!): This type must be consistent with the exception # header type defined in runtime/exc.cpp. diff --git a/stdlib/internal/types/float.codon b/stdlib/internal/types/float.codon index a9f764c1..71dd0532 100644 --- a/stdlib/internal/types/float.codon +++ b/stdlib/internal/types/float.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.attributes import commutative from internal.gc import alloc_atomic, free diff --git a/stdlib/internal/types/generator.codon b/stdlib/internal/types/generator.codon index b0b30120..57cf13ae 100644 --- a/stdlib/internal/types/generator.codon +++ b/stdlib/internal/types/generator.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @extend class Generator: diff --git a/stdlib/internal/types/int.codon b/stdlib/internal/types/int.codon index 3506cee7..58dcb268 100644 --- a/stdlib/internal/types/int.codon +++ b/stdlib/internal/types/int.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.attributes import commutative, associative, distributive from internal.types.complex import complex diff --git a/stdlib/internal/types/intn.codon b/stdlib/internal/types/intn.codon index ef28fdbb..450a0dda 100644 --- a/stdlib/internal/types/intn.codon +++ b/stdlib/internal/types/intn.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.attributes import commutative, associative, distributive diff --git a/stdlib/internal/types/optional.codon b/stdlib/internal/types/optional.codon index ac919fb9..e0d3af1d 100644 --- a/stdlib/internal/types/optional.codon +++ b/stdlib/internal/types/optional.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @extend class Optional: diff --git a/stdlib/internal/types/ptr.codon b/stdlib/internal/types/ptr.codon index 6d4d2c90..16a48fd3 100644 --- a/stdlib/internal/types/ptr.codon +++ b/stdlib/internal/types/ptr.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @extend class Ptr: diff --git a/stdlib/internal/types/range.codon b/stdlib/internal/types/range.codon index fa56aff4..26e4ccd3 100644 --- a/stdlib/internal/types/range.codon +++ b/stdlib/internal/types/range.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @tuple class range: diff --git a/stdlib/internal/types/slice.codon b/stdlib/internal/types/slice.codon index 1b57b40c..a5db08d5 100644 --- a/stdlib/internal/types/slice.codon +++ b/stdlib/internal/types/slice.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @tuple class Slice: diff --git a/stdlib/internal/types/str.codon b/stdlib/internal/types/str.codon index e94749a1..bb9df03d 100644 --- a/stdlib/internal/types/str.codon +++ b/stdlib/internal/types/str.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @pure @C diff --git a/stdlib/internal/types/strbuf.codon b/stdlib/internal/types/strbuf.codon index 1b8f8eb1..e143788c 100644 --- a/stdlib/internal/types/strbuf.codon +++ b/stdlib/internal/types/strbuf.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. class strbuf: data: Ptr[byte] diff --git a/stdlib/itertools.codon b/stdlib/itertools.codon index 2f1ab7c2..b5852e61 100644 --- a/stdlib/itertools.codon +++ b/stdlib/itertools.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.types.optional import unwrap diff --git a/stdlib/math.codon b/stdlib/math.codon index 38898c09..61938bf9 100644 --- a/stdlib/math.codon +++ b/stdlib/math.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @pure @llvm diff --git a/stdlib/openmp.codon b/stdlib/openmp.codon index 86b6a2fd..63d59316 100644 --- a/stdlib/openmp.codon +++ b/stdlib/openmp.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # OpenMP interface # Ref: https://github.com/llvm/llvm-project/tree/main/openmp diff --git a/stdlib/operator.codon b/stdlib/operator.codon index fa6327ab..b9010d4f 100644 --- a/stdlib/operator.codon +++ b/stdlib/operator.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. lt = lambda a, b: a < b le = lambda a, b: a <= b diff --git a/stdlib/os/__init__.codon b/stdlib/os/__init__.codon index 009dc544..f3d24886 100644 --- a/stdlib/os/__init__.codon +++ b/stdlib/os/__init__.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. def system(cmd: str) -> int: return _C.system(cmd.c_str()) diff --git a/stdlib/os/path.codon b/stdlib/os/path.codon index 47ac632a..fb93fed7 100644 --- a/stdlib/os/path.codon +++ b/stdlib/os/path.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. def splitext(p: str) -> Tuple[str, str]: """ diff --git a/stdlib/pickle.codon b/stdlib/pickle.codon index 88d76f69..82f78888 100644 --- a/stdlib/pickle.codon +++ b/stdlib/pickle.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.file import _gz_errcheck from internal.gc import sizeof, atomic diff --git a/stdlib/python.codon b/stdlib/python.codon index 15231224..92f34e2f 100644 --- a/stdlib/python.codon +++ b/stdlib/python.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from internal.python import ensure_initialized diff --git a/stdlib/random.codon b/stdlib/random.codon index 4e1ff36a..f458b077 100644 --- a/stdlib/random.codon +++ b/stdlib/random.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. import sys from math import inf as INF, sqrt as _sqrt, acos as _acos, cos as _cos, sin as _sin diff --git a/stdlib/re.codon b/stdlib/re.codon index fe7ec333..5411c1ca 100644 --- a/stdlib/re.codon +++ b/stdlib/re.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Adapted in part from Google's Python re2 wrapper # https://github.com/google/re2/blob/abseil/python/re2.py diff --git a/stdlib/sortedlist.codon b/stdlib/sortedlist.codon index 516f09d9..3e96fc19 100644 --- a/stdlib/sortedlist.codon +++ b/stdlib/sortedlist.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from bisect import bisect_right, bisect_left, insort from collections import deque diff --git a/stdlib/statistics.codon b/stdlib/statistics.codon index 7ebdf0a8..3f258aba 100644 --- a/stdlib/statistics.codon +++ b/stdlib/statistics.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. import bisect import random diff --git a/stdlib/string.codon b/stdlib/string.codon index 32746bb1..187a8e51 100644 --- a/stdlib/string.codon +++ b/stdlib/string.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. ascii_letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" ascii_lowercase = "abcdefghijklmnopqrstuvwxyz" diff --git a/stdlib/sys.codon b/stdlib/sys.codon index 8274d989..e74d9dc9 100644 --- a/stdlib/sys.codon +++ b/stdlib/sys.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. argv = list(__argv__, len(__argv__)) diff --git a/stdlib/threading.codon b/stdlib/threading.codon index 00637e54..87745aa6 100644 --- a/stdlib/threading.codon +++ b/stdlib/threading.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. @tuple class Lock: diff --git a/stdlib/time.codon b/stdlib/time.codon index ecda56ce..494a505c 100644 --- a/stdlib/time.codon +++ b/stdlib/time.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. from sys import stderr diff --git a/stdlib/typing.codon b/stdlib/typing.codon index e0eec375..0ebc1d29 100644 --- a/stdlib/typing.codon +++ b/stdlib/typing.codon @@ -1,3 +1,3 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # (empty) diff --git a/stdlib/unittest.codon b/stdlib/unittest.codon index 3efdbfe1..913f7373 100644 --- a/stdlib/unittest.codon +++ b/stdlib/unittest.codon @@ -1,4 +1,4 @@ -# Copyright (C) 2022 Exaloop Inc. +# Copyright (C) 2022-2023 Exaloop Inc. # Simplified version of Python's unittest.TestCase to allow # copy/pasting tests directly from CPython's test suite. diff --git a/test/sir/analyze/dominator.cpp b/test/cir/analyze/dominator.cpp similarity index 86% rename from test/sir/analyze/dominator.cpp rename to test/cir/analyze/dominator.cpp index 86be99b4..7f62163f 100644 --- a/test/sir/analyze/dominator.cpp +++ b/test/cir/analyze/dominator.cpp @@ -1,11 +1,11 @@ #include "test.h" -#include "codon/sir/analyze/dataflow/cfg.h" -#include "codon/sir/analyze/dataflow/dominator.h" +#include "codon/cir/analyze/dataflow/cfg.h" +#include "codon/cir/analyze/dataflow/dominator.h" using namespace codon::ir; -TEST_F(SIRCoreTest, DominatorAnalysisSimple) { +TEST_F(CIRCoreTest, DominatorAnalysisSimple) { auto *f = module->Nr("test_f"); auto *b = module->Nr(); f->setBody(b); @@ -27,7 +27,7 @@ TEST_F(SIRCoreTest, DominatorAnalysisSimple) { ASSERT_FALSE(dom.isDominated(start, end)); } -TEST_F(SIRCoreTest, DominatorAnalysisTernary) { +TEST_F(CIRCoreTest, DominatorAnalysisTernary) { auto *f = module->Nr("test_f"); auto *b = module->Nr(); f->setBody(b); diff --git a/test/sir/analyze/reaching.cpp b/test/cir/analyze/reaching.cpp similarity index 95% rename from test/sir/analyze/reaching.cpp rename to test/cir/analyze/reaching.cpp index d3b57628..e02df0d0 100644 --- a/test/sir/analyze/reaching.cpp +++ b/test/cir/analyze/reaching.cpp @@ -1,11 +1,11 @@ #include "test.h" -#include "codon/sir/analyze/dataflow/cfg.h" -#include "codon/sir/analyze/dataflow/reaching.h" +#include "codon/cir/analyze/dataflow/cfg.h" +#include "codon/cir/analyze/dataflow/reaching.h" using namespace codon::ir; -TEST_F(SIRCoreTest, RDAnalysisSimple) { +TEST_F(CIRCoreTest, RDAnalysisSimple) { auto *f = module->Nr("test_f"); auto *b = module->Nr(); f->setBody(b); @@ -49,7 +49,7 @@ TEST_F(SIRCoreTest, RDAnalysisSimple) { ASSERT_EQ(second->getId(), *endRd.begin()); } -TEST_F(SIRCoreTest, RDAnalysisIfConditional) { +TEST_F(CIRCoreTest, RDAnalysisIfConditional) { auto *f = module->Nr("test_f"); auto *trueBranch = module->Nr(); @@ -88,7 +88,7 @@ TEST_F(SIRCoreTest, RDAnalysisIfConditional) { ASSERT_TRUE(endRd.find(second->getId()) != endRd.end()); } -TEST_F(SIRCoreTest, RDAnalysisTryCatch) { +TEST_F(CIRCoreTest, RDAnalysisTryCatch) { auto *f = module->Nr("test_f"); auto *body = module->Nr(); @@ -140,7 +140,7 @@ TEST_F(SIRCoreTest, RDAnalysisTryCatch) { ASSERT_TRUE(middleRd.find(initial->getId()) != endRd.end()); } -TEST_F(SIRCoreTest, RDAnalysisWhileLoop) { +TEST_F(CIRCoreTest, RDAnalysisWhileLoop) { auto *f = module->Nr("test_f"); auto *loopBody = module->Nr(); diff --git a/test/sir/base.cpp b/test/cir/base.cpp similarity index 91% rename from test/sir/base.cpp rename to test/cir/base.cpp index eba47741..dda37ad5 100644 --- a/test/sir/base.cpp +++ b/test/cir/base.cpp @@ -19,7 +19,7 @@ public: using namespace codon::ir; -TEST_F(SIRCoreTest, NodeNoReplacementRTTI) { +TEST_F(CIRCoreTest, NodeNoReplacementRTTI) { auto *derived = module->Nr(1, module->getIntType()); ASSERT_TRUE(derived); ASSERT_FALSE(derived->hasReplacement()); @@ -35,7 +35,7 @@ TEST_F(SIRCoreTest, NodeNoReplacementRTTI) { ASSERT_TRUE(cast(constBase)); } -TEST_F(SIRCoreTest, NodeNoReplacementAttributes) { +TEST_F(CIRCoreTest, NodeNoReplacementAttributes) { auto *node = module->Nr(1, module->getIntType()); ASSERT_FALSE(node->hasReplacement()); ASSERT_FALSE(node->hasAttribute()); @@ -45,7 +45,7 @@ TEST_F(SIRCoreTest, NodeNoReplacementAttributes) { ASSERT_EQ(1, std::distance(node->attributes_begin(), node->attributes_end())); } -TEST_F(SIRCoreTest, NodeReplacementRTTI) { +TEST_F(CIRCoreTest, NodeReplacementRTTI) { Value *node = module->Nr(1, module->getIntType()); ASSERT_TRUE(node); ASSERT_FALSE(node->hasReplacement()); @@ -58,7 +58,7 @@ TEST_F(SIRCoreTest, NodeReplacementRTTI) { ASSERT_TRUE(cast(node)); } -TEST_F(SIRCoreTest, NodeReplacementDelegates) { +TEST_F(CIRCoreTest, NodeReplacementDelegates) { auto NODE_NAME = "foo"; Value *originalNode = module->Nr(1, module->getIntType()); @@ -83,7 +83,7 @@ TEST_F(SIRCoreTest, NodeReplacementDelegates) { newNode->accept(v2); } -TEST_F(SIRCoreTest, NodeNonReplaceableFails) { +TEST_F(CIRCoreTest, NodeNonReplaceableFails) { Value *originalNode = module->Nr(1, module->getIntType()); originalNode->setReplaceable(false); ASSERT_DEATH(originalNode->replaceAll(originalNode), ""); diff --git a/test/sir/constant.cpp b/test/cir/constant.cpp similarity index 88% rename from test/sir/constant.cpp rename to test/cir/constant.cpp index 9ff1f442..bd9a66ce 100644 --- a/test/sir/constant.cpp +++ b/test/cir/constant.cpp @@ -5,7 +5,7 @@ using namespace codon::ir; -TEST_F(SIRCoreTest, ConstTypeQueryAndReplace) { +TEST_F(CIRCoreTest, ConstTypeQueryAndReplace) { auto *node = module->Nr(1, module->getIntType()); ASSERT_EQ(module->getIntType(), node->getType()); @@ -15,7 +15,7 @@ TEST_F(SIRCoreTest, ConstTypeQueryAndReplace) { ASSERT_EQ(1, node->replaceUsedType(module->getIntType(), module->getIntType())); } -TEST_F(SIRCoreTest, ConstCloning) { +TEST_F(CIRCoreTest, ConstCloning) { auto VALUE = 1; auto *node = module->Nr(VALUE, module->getIntType()); auto *clone = cast(cv->clone(node)); diff --git a/test/sir/flow.cpp b/test/cir/flow.cpp similarity index 92% rename from test/sir/flow.cpp rename to test/cir/flow.cpp index 50a71603..4af7e7aa 100644 --- a/test/sir/flow.cpp +++ b/test/cir/flow.cpp @@ -3,11 +3,11 @@ #include #include -#include "codon/sir/util/matching.h" +#include "codon/cir/util/matching.h" using namespace codon::ir; -TEST_F(SIRCoreTest, SeriesFlowInsertionEraseAndIterators) { +TEST_F(CIRCoreTest, SeriesFlowInsertionEraseAndIterators) { auto FIRST_VALUE = 2; auto SECOND_VALUE = 1; @@ -25,7 +25,7 @@ TEST_F(SIRCoreTest, SeriesFlowInsertionEraseAndIterators) { ASSERT_EQ(SECOND_VALUE, cast(*f->begin())->getVal()); } -TEST_F(SIRCoreTest, SeriesFlowQueryAndReplace) { +TEST_F(CIRCoreTest, SeriesFlowQueryAndReplace) { auto FIRST_VALUE = 2; auto SECOND_VALUE = 1; @@ -43,7 +43,7 @@ TEST_F(SIRCoreTest, SeriesFlowQueryAndReplace) { ASSERT_EQ(1, f->replaceUsedValue(contents[0], contents[1])); } -TEST_F(SIRCoreTest, SeriesFlowCloning) { +TEST_F(CIRCoreTest, SeriesFlowCloning) { auto FIRST_VALUE = 2; auto SECOND_VALUE = 1; @@ -54,7 +54,7 @@ TEST_F(SIRCoreTest, SeriesFlowCloning) { ASSERT_TRUE(util::match(f, cv->clone(f))); } -TEST_F(SIRCoreTest, WhileFlowQueryAndReplace) { +TEST_F(CIRCoreTest, WhileFlowQueryAndReplace) { auto *cond = module->Nr(true, module->getBoolType()); auto *body = module->Nr(); auto *f = module->Nr(cond, body); @@ -80,14 +80,14 @@ TEST_F(SIRCoreTest, WhileFlowQueryAndReplace) { std::equal(usedValues.begin(), usedValues.end(), queried.begin(), queried.end())); } -TEST_F(SIRCoreTest, WhileFlowCloning) { +TEST_F(CIRCoreTest, WhileFlowCloning) { auto *cond = module->Nr(true, module->getBoolType()); auto *body = module->Nr(); auto *f = module->Nr(cond, body); ASSERT_TRUE(util::match(f, cv->clone(f))); } -TEST_F(SIRCoreTest, ForFlowQueryAndReplace) { +TEST_F(CIRCoreTest, ForFlowQueryAndReplace) { auto *iter = module->Nr("hi", module->getStringType()); auto *body = module->Nr(); auto *var = module->Nr(module->getStringType(), false, "x"); @@ -119,7 +119,7 @@ TEST_F(SIRCoreTest, ForFlowQueryAndReplace) { ASSERT_NE(var, f->getVar()); } -TEST_F(SIRCoreTest, ForFlowCloning) { +TEST_F(CIRCoreTest, ForFlowCloning) { auto *iter = module->Nr("hi", module->getStringType()); auto *body = module->Nr(); auto *var = module->Nr(module->getStringType(), false, "x"); @@ -128,7 +128,7 @@ TEST_F(SIRCoreTest, ForFlowCloning) { ASSERT_TRUE(util::match(f, cv->clone(f))); } -TEST_F(SIRCoreTest, IfFlowQueryAndReplace) { +TEST_F(CIRCoreTest, IfFlowQueryAndReplace) { auto *cond = module->Nr(true, module->getBoolType()); auto *tBody = module->Nr(); auto *fBody = module->Nr(); @@ -169,7 +169,7 @@ TEST_F(SIRCoreTest, IfFlowQueryAndReplace) { std::equal(usedValues.begin(), usedValues.end(), qVal.begin(), qVal.end())); } -TEST_F(SIRCoreTest, IfFlowCloning) { +TEST_F(CIRCoreTest, IfFlowCloning) { auto *cond = module->Nr(true, module->getBoolType()); auto *tBody = module->Nr(); auto *fBody = module->Nr(); @@ -178,7 +178,7 @@ TEST_F(SIRCoreTest, IfFlowCloning) { ASSERT_TRUE(util::match(f, cv->clone(f))); } -TEST_F(SIRCoreTest, TryCatchFlowSingleCatchQueryAndReplace) { +TEST_F(CIRCoreTest, TryCatchFlowSingleCatchQueryAndReplace) { auto *body = module->Nr(); auto *finally = module->Nr(); auto *f = module->Nr(body, finally); diff --git a/test/sir/func.cpp b/test/cir/func.cpp similarity index 87% rename from test/sir/func.cpp rename to test/cir/func.cpp index e3615633..35e20f9c 100644 --- a/test/sir/func.cpp +++ b/test/cir/func.cpp @@ -2,11 +2,11 @@ #include -#include "codon/sir/util/matching.h" +#include "codon/cir/util/matching.h" using namespace codon::ir; -TEST_F(SIRCoreTest, FuncRealizationAndVarInsertionEraseAndIterators) { +TEST_F(CIRCoreTest, FuncRealizationAndVarInsertionEraseAndIterators) { auto *fn = module->Nr(); fn->realize(module->unsafeGetDummyFuncType(), {}); @@ -29,7 +29,7 @@ TEST_F(SIRCoreTest, FuncRealizationAndVarInsertionEraseAndIterators) { ASSERT_EQ(module->getIntType(), fn->front()->getType()); } -TEST_F(SIRCoreTest, BodiedFuncQueryAndReplace) { +TEST_F(CIRCoreTest, BodiedFuncQueryAndReplace) { auto *fn = module->Nr(); fn->realize(module->unsafeGetDummyFuncType(), {}); fn->setJIT(); @@ -52,14 +52,14 @@ TEST_F(SIRCoreTest, BodiedFuncQueryAndReplace) { ASSERT_NE(fn->getBody(), body); } -TEST_F(SIRCoreTest, BodiedFuncUnmangledName) { +TEST_F(CIRCoreTest, BodiedFuncUnmangledName) { auto *fn = module->Nr("Int.foo"); fn->setUnmangledName("foo"); fn->realize(module->unsafeGetDummyFuncType(), {}); ASSERT_EQ("foo", fn->getUnmangledName()); } -TEST_F(SIRCoreTest, BodiedFuncCloning) { +TEST_F(CIRCoreTest, BodiedFuncCloning) { auto *fn = module->Nr("fn"); fn->realize(module->unsafeGetDummyFuncType(), {}); @@ -68,7 +68,7 @@ TEST_F(SIRCoreTest, BodiedFuncCloning) { ASSERT_TRUE(util::match(fn, cv->clone(fn))); } -TEST_F(SIRCoreTest, ExternalFuncUnmangledNameAndCloning) { +TEST_F(CIRCoreTest, ExternalFuncUnmangledNameAndCloning) { auto *fn = module->Nr("fn"); fn->realize(module->unsafeGetDummyFuncType(), {}); @@ -77,7 +77,7 @@ TEST_F(SIRCoreTest, ExternalFuncUnmangledNameAndCloning) { ASSERT_TRUE(util::match(fn, cv->clone(fn))); } -TEST_F(SIRCoreTest, InternalFuncParentTypeUnmangledNameAndCloning) { +TEST_F(CIRCoreTest, InternalFuncParentTypeUnmangledNameAndCloning) { auto *fn = module->Nr("fn.1"); fn->setUnmangledName("fn"); fn->realize(module->unsafeGetDummyFuncType(), {}); @@ -88,7 +88,7 @@ TEST_F(SIRCoreTest, InternalFuncParentTypeUnmangledNameAndCloning) { ASSERT_TRUE(util::match(fn, cv->clone(fn))); } -TEST_F(SIRCoreTest, LLVMFuncUnmangledNameQueryAndReplace) { +TEST_F(CIRCoreTest, LLVMFuncUnmangledNameQueryAndReplace) { auto *fn = module->Nr("fn"); fn->realize(module->unsafeGetDummyFuncType(), {}); diff --git a/test/sir/instr.cpp b/test/cir/instr.cpp similarity index 88% rename from test/sir/instr.cpp rename to test/cir/instr.cpp index c2fd37dd..15db37f5 100644 --- a/test/sir/instr.cpp +++ b/test/cir/instr.cpp @@ -1,10 +1,10 @@ #include "test.h" -#include "codon/sir/util/matching.h" +#include "codon/cir/util/matching.h" using namespace codon::ir; -TEST_F(SIRCoreTest, AssignInstrQueryAndReplace) { +TEST_F(CIRCoreTest, AssignInstrQueryAndReplace) { auto *var = module->Nr(module->getIntType()); auto *val = module->Nr(1, module->getIntType()); auto *instr = module->Nr(var, val); @@ -25,7 +25,7 @@ TEST_F(SIRCoreTest, AssignInstrQueryAndReplace) { ASSERT_EQ(1, instr->replaceUsedVariable(var, module->Nr(module->getIntType()))); } -TEST_F(SIRCoreTest, AssignInstrCloning) { +TEST_F(CIRCoreTest, AssignInstrCloning) { auto *var = module->Nr(module->getIntType()); auto *val = module->Nr(1, module->getIntType()); auto *instr = module->Nr(var, val); @@ -33,7 +33,7 @@ TEST_F(SIRCoreTest, AssignInstrCloning) { ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, ExtractInstrQueryAndReplace) { +TEST_F(CIRCoreTest, ExtractInstrQueryAndReplace) { auto FIELD = "foo"; auto *type = cast(module->unsafeGetMemberedType("**internal**")); type->realize({module->getIntType()}, {FIELD}); @@ -52,7 +52,7 @@ TEST_F(SIRCoreTest, ExtractInstrQueryAndReplace) { ASSERT_EQ(1, instr->replaceUsedValue(val, module->Nr(var))); } -TEST_F(SIRCoreTest, ExtractInstrCloning) { +TEST_F(CIRCoreTest, ExtractInstrCloning) { auto FIELD = "foo"; auto *type = cast(module->unsafeGetMemberedType("**internal**")); type->realize({module->getIntType()}, {FIELD}); @@ -63,7 +63,7 @@ TEST_F(SIRCoreTest, ExtractInstrCloning) { ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, InsertInstrQueryAndReplace) { +TEST_F(CIRCoreTest, InsertInstrQueryAndReplace) { auto FIELD = "foo"; auto *type = cast(module->unsafeGetMemberedType("**internal**", true)); @@ -83,7 +83,7 @@ TEST_F(SIRCoreTest, InsertInstrQueryAndReplace) { 1, instr->replaceUsedValue(rhs, module->Nr(1, module->getIntType()))); } -TEST_F(SIRCoreTest, InsertInstrCloning) { +TEST_F(CIRCoreTest, InsertInstrCloning) { auto FIELD = "foo"; auto *type = cast(module->unsafeGetMemberedType("**internal**", true)); @@ -96,7 +96,7 @@ TEST_F(SIRCoreTest, InsertInstrCloning) { ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, CallInstrQueryAndReplace) { +TEST_F(CIRCoreTest, CallInstrQueryAndReplace) { auto *type = cast(module->unsafeGetDummyFuncType()); auto *func = module->Nr(); func->realize(type, {}); @@ -111,7 +111,7 @@ TEST_F(SIRCoreTest, CallInstrQueryAndReplace) { ASSERT_EQ(1, instr->replaceUsedValue(funcVal, module->Nr(func))); } -TEST_F(SIRCoreTest, CallInstrCloning) { +TEST_F(CIRCoreTest, CallInstrCloning) { auto *type = module->unsafeGetDummyFuncType(); auto *func = module->Nr(); func->realize(type, {}); @@ -121,7 +121,7 @@ TEST_F(SIRCoreTest, CallInstrCloning) { ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, StackAllocInstrQueryAndReplace) { +TEST_F(CIRCoreTest, StackAllocInstrQueryAndReplace) { auto COUNT = 1; auto *arrayType = module->unsafeGetArrayType(module->getIntType()); @@ -138,14 +138,14 @@ TEST_F(SIRCoreTest, StackAllocInstrQueryAndReplace) { arrayType, module->unsafeGetArrayType(module->getFloatType()))); } -TEST_F(SIRCoreTest, StackAllocInstrCloning) { +TEST_F(CIRCoreTest, StackAllocInstrCloning) { auto COUNT = 1; auto *arrayType = module->unsafeGetArrayType(module->getIntType()); auto *instr = module->Nr(arrayType, COUNT); ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, TypePropertyInstrQueryAndReplace) { +TEST_F(CIRCoreTest, TypePropertyInstrQueryAndReplace) { auto *type = module->unsafeGetArrayType(module->getIntType()); auto *instr = module->Nr(type, TypePropertyInstr::Property::IS_ATOMIC); @@ -165,14 +165,14 @@ TEST_F(SIRCoreTest, TypePropertyInstrQueryAndReplace) { type, module->unsafeGetArrayType(module->getFloatType()))); } -TEST_F(SIRCoreTest, TypePropertyInstrCloning) { +TEST_F(CIRCoreTest, TypePropertyInstrCloning) { auto *type = module->unsafeGetArrayType(module->getIntType()); auto *instr = module->Nr(type, TypePropertyInstr::Property::IS_ATOMIC); ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, YieldInInstrQueryAndReplace) { +TEST_F(CIRCoreTest, YieldInInstrQueryAndReplace) { auto *type = module->unsafeGetArrayType(module->getIntType()); auto *instr = module->Nr(type); @@ -186,13 +186,13 @@ TEST_F(SIRCoreTest, YieldInInstrQueryAndReplace) { type, module->unsafeGetArrayType(module->getFloatType()))); } -TEST_F(SIRCoreTest, YieldInInstrCloning) { +TEST_F(CIRCoreTest, YieldInInstrCloning) { auto *type = module->unsafeGetArrayType(module->getIntType()); auto *instr = module->Nr(type); ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, TernaryInstrQueryAndReplace) { +TEST_F(CIRCoreTest, TernaryInstrQueryAndReplace) { auto *trueValue = module->Nr(true, module->getBoolType()); auto *falseValue = module->Nr(false, module->getBoolType()); auto *cond = module->Nr(true, module->getBoolType()); @@ -212,7 +212,7 @@ TEST_F(SIRCoreTest, TernaryInstrQueryAndReplace) { falseValue, module->Nr(true, module->getBoolType()))); } -TEST_F(SIRCoreTest, TernaryInstrCloning) { +TEST_F(CIRCoreTest, TernaryInstrCloning) { auto *trueValue = module->Nr(true, module->getBoolType()); auto *falseValue = module->Nr(false, module->getBoolType()); auto *cond = module->Nr(true, module->getBoolType()); @@ -221,17 +221,17 @@ TEST_F(SIRCoreTest, TernaryInstrCloning) { ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, ContinueInstrQueryReplaceAndCloning) { +TEST_F(CIRCoreTest, ContinueInstrQueryReplaceAndCloning) { auto *instr = module->Nr(); ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, BreakInstrQueryReplaceAndCloning) { +TEST_F(CIRCoreTest, BreakInstrQueryReplaceAndCloning) { auto *instr = module->Nr(); ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, ReturnInstrQueryReplaceAndCloning) { +TEST_F(CIRCoreTest, ReturnInstrQueryReplaceAndCloning) { auto *val = module->Nr(1, module->getIntType()); auto *instr = module->Nr(val); ASSERT_EQ(val, instr->getValue()); @@ -243,7 +243,7 @@ TEST_F(SIRCoreTest, ReturnInstrQueryReplaceAndCloning) { ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, YieldInstrQueryReplaceAndCloning) { +TEST_F(CIRCoreTest, YieldInstrQueryReplaceAndCloning) { auto *val = module->Nr(1, module->getIntType()); auto *instr = module->Nr(val); ASSERT_EQ(val, instr->getValue()); @@ -255,7 +255,7 @@ TEST_F(SIRCoreTest, YieldInstrQueryReplaceAndCloning) { ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, ThrowInstrQueryReplaceAndCloning) { +TEST_F(CIRCoreTest, ThrowInstrQueryReplaceAndCloning) { auto *val = module->Nr(1, module->getIntType()); auto *instr = module->Nr(val); ASSERT_EQ(val, instr->getValue()); @@ -267,7 +267,7 @@ TEST_F(SIRCoreTest, ThrowInstrQueryReplaceAndCloning) { ASSERT_TRUE(util::match(instr, cv->clone(instr))); } -TEST_F(SIRCoreTest, FlowInstrQueryAndReplace) { +TEST_F(CIRCoreTest, FlowInstrQueryAndReplace) { auto *flow = module->Nr(); auto *val = module->Nr(1, module->getIntType()); auto *instr = module->Nr(flow, val); @@ -282,7 +282,7 @@ TEST_F(SIRCoreTest, FlowInstrQueryAndReplace) { ASSERT_EQ(1, instr->replaceUsedValue(flow, module->Nr())); } -TEST_F(SIRCoreTest, FlowInstrCloning) { +TEST_F(CIRCoreTest, FlowInstrCloning) { auto *flow = module->Nr(); auto *val = module->Nr(1, module->getIntType()); auto *instr = module->Nr(flow, val); diff --git a/test/sir/module.cpp b/test/cir/module.cpp similarity index 91% rename from test/sir/module.cpp rename to test/cir/module.cpp index 3aabd05c..e416d5c9 100644 --- a/test/sir/module.cpp +++ b/test/cir/module.cpp @@ -1,10 +1,10 @@ #include "test.h" -#include "codon/sir/util/matching.h" +#include "codon/cir/util/matching.h" using namespace codon::ir; -TEST_F(SIRCoreTest, ModuleNodeBuildingRemovalAndIterators) { +TEST_F(CIRCoreTest, ModuleNodeBuildingRemovalAndIterators) { { auto n1 = module->Nr(module->getIntType()); ASSERT_EQ(n1->getModule(), module.get()); @@ -33,7 +33,7 @@ TEST_F(SIRCoreTest, ModuleNodeBuildingRemovalAndIterators) { } } -TEST_F(SIRCoreTest, ModuleMainFunctionAndArgVar) { +TEST_F(CIRCoreTest, ModuleMainFunctionAndArgVar) { auto *main = module->getMainFunc(); ASSERT_TRUE(main); auto *mainType = cast(main->getType()); @@ -49,7 +49,7 @@ TEST_F(SIRCoreTest, ModuleMainFunctionAndArgVar) { ASSERT_FALSE(argVar->isReplaceable()); } -TEST_F(SIRCoreTest, ModuleTypeGetAndLookup) { +TEST_F(CIRCoreTest, ModuleTypeGetAndLookup) { auto TYPE_NAME = "**test_type**"; auto *newType = module->unsafeGetMemberedType(TYPE_NAME); ASSERT_TRUE(isA(newType)); diff --git a/test/sir/test.h b/test/cir/test.h similarity index 77% rename from test/sir/test.h rename to test/cir/test.h index 78fb81fc..9bb66433 100644 --- a/test/sir/test.h +++ b/test/cir/test.h @@ -1,10 +1,10 @@ #include -#include "codon/sir/sir.h" -#include "codon/sir/util/cloning.h" +#include "codon/cir/cir.h" +#include "codon/cir/util/cloning.h" #include "gtest/gtest.h" -class SIRCoreTest : public testing::Test { +class CIRCoreTest : public testing::Test { protected: std::unique_ptr module; std::unique_ptr cv; diff --git a/test/sir/transform/manager.cpp b/test/cir/transform/manager.cpp similarity index 92% rename from test/sir/transform/manager.cpp rename to test/cir/transform/manager.cpp index 35e6e3b5..34276098 100644 --- a/test/sir/transform/manager.cpp +++ b/test/cir/transform/manager.cpp @@ -1,7 +1,7 @@ #include "test.h" -#include "codon/sir/transform/manager.h" -#include "codon/sir/transform/pass.h" +#include "codon/cir/transform/manager.h" +#include "codon/cir/transform/pass.h" using namespace codon::ir; @@ -50,7 +50,7 @@ public: int DummyPass::runCounter = 0; -TEST_F(SIRCoreTest, PassManagerNoInvalidations) { +TEST_F(CIRCoreTest, PassManagerNoInvalidations) { int counter = 0; auto manager = @@ -64,7 +64,7 @@ TEST_F(SIRCoreTest, PassManagerNoInvalidations) { ASSERT_EQ(1, DummyPass::runCounter); } -TEST_F(SIRCoreTest, PassManagerInvalidations) { +TEST_F(CIRCoreTest, PassManagerInvalidations) { int counter = 0; auto manager = diff --git a/test/sir/types/types.cpp b/test/cir/types/types.cpp similarity index 93% rename from test/sir/types/types.cpp rename to test/cir/types/types.cpp index 86f0cd5f..c284419b 100644 --- a/test/sir/types/types.cpp +++ b/test/cir/types/types.cpp @@ -4,7 +4,7 @@ using namespace codon::ir; -TEST_F(SIRCoreTest, RecordTypeQuery) { +TEST_F(CIRCoreTest, RecordTypeQuery) { auto MEMBER_NAME = "1"; auto *type = module->Nr( "foo", std::vector{module->getIntType()}); @@ -24,7 +24,7 @@ TEST_F(SIRCoreTest, RecordTypeQuery) { ASSERT_EQ(module->getIntType(), type->getUsedTypes()[0]); } -TEST_F(SIRCoreTest, RefTypeQuery) { +TEST_F(CIRCoreTest, RefTypeQuery) { auto MEMBER_NAME = "1"; auto *contents = module->Nr( "foo", std::vector{module->getIntType()}); @@ -45,7 +45,7 @@ TEST_F(SIRCoreTest, RefTypeQuery) { ASSERT_EQ(contents, type->getUsedTypes()[0]); } -TEST_F(SIRCoreTest, FuncTypeQuery) { +TEST_F(CIRCoreTest, FuncTypeQuery) { auto *type = module->Nr( "foo", module->getIntType(), std::vector{module->getFloatType()}); diff --git a/test/sir/util/matching.cpp b/test/cir/util/matching.cpp similarity index 90% rename from test/sir/util/matching.cpp rename to test/cir/util/matching.cpp index 62922ddd..fdc036e0 100644 --- a/test/sir/util/matching.cpp +++ b/test/cir/util/matching.cpp @@ -1,10 +1,10 @@ #include "test.h" -#include "codon/sir/util/matching.h" +#include "codon/cir/util/matching.h" using namespace codon::ir; -TEST_F(SIRCoreTest, MatchingEquivalentVar) { +TEST_F(CIRCoreTest, MatchingEquivalentVar) { auto *first = module->Nr(module->getIntType()); auto *second = module->Nr(module->getIntType()); auto *third = module->Nr(module->getFloatType()); @@ -12,13 +12,13 @@ TEST_F(SIRCoreTest, MatchingEquivalentVar) { ASSERT_FALSE(util::match(first, third)); } -TEST_F(SIRCoreTest, MatchingNonEquivalentVar) { +TEST_F(CIRCoreTest, MatchingNonEquivalentVar) { auto *first = module->Nr(module->getIntType()); auto *second = module->Nr(module->getFloatType()); ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingEquivalentFunc) { +TEST_F(CIRCoreTest, MatchingEquivalentFunc) { { auto *first = module->Nr(); first->realize(module->unsafeGetDummyFuncType(), {}); @@ -51,7 +51,7 @@ TEST_F(SIRCoreTest, MatchingEquivalentFunc) { } } -TEST_F(SIRCoreTest, MatchingNonEquivalentFunc) { +TEST_F(CIRCoreTest, MatchingNonEquivalentFunc) { { auto *first = module->Nr(); first->realize(module->unsafeGetDummyFuncType(), {}); @@ -85,12 +85,12 @@ TEST_F(SIRCoreTest, MatchingNonEquivalentFunc) { } } -TEST_F(SIRCoreTest, MatchingAnyValue) { +TEST_F(CIRCoreTest, MatchingAnyValue) { auto *first = module->Nr(module->Nr(module->getIntType())); ASSERT_TRUE(util::match(first, module->Nr())); } -TEST_F(SIRCoreTest, MatchingVarValue) { +TEST_F(CIRCoreTest, MatchingVarValue) { auto *first = module->Nr(module->Nr(module->getIntType())); auto *second = module->Nr(module->Nr(module->getIntType())); ASSERT_TRUE(util::match(first, second)); @@ -98,7 +98,7 @@ TEST_F(SIRCoreTest, MatchingVarValue) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingPointerValue) { +TEST_F(CIRCoreTest, MatchingPointerValue) { auto *first = module->Nr(module->Nr(module->getIntType())); auto *second = module->Nr(module->Nr(module->getIntType())); ASSERT_TRUE(util::match(first, second)); @@ -106,7 +106,7 @@ TEST_F(SIRCoreTest, MatchingPointerValue) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingSeriesFlow) { +TEST_F(CIRCoreTest, MatchingSeriesFlow) { auto *first = module->Nr(); auto *second = module->Nr(); @@ -117,7 +117,7 @@ TEST_F(SIRCoreTest, MatchingSeriesFlow) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingIfFlow) { +TEST_F(CIRCoreTest, MatchingIfFlow) { auto *cond = module->Nr(true, module->getBoolType()); auto *tVal = module->Nr(); auto *first = module->Nr(cond, tVal); @@ -128,7 +128,7 @@ TEST_F(SIRCoreTest, MatchingIfFlow) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingForFlow) { +TEST_F(CIRCoreTest, MatchingForFlow) { auto *body = module->Nr(); auto *var = module->Nr(module->getIntType()); auto *iter = module->Nr("hello", module->getStringType()); @@ -141,7 +141,7 @@ TEST_F(SIRCoreTest, MatchingForFlow) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingIntConst) { +TEST_F(CIRCoreTest, MatchingIntConst) { auto *first = module->Nr(0, module->getIntType()); auto *second = module->Nr(0, module->getIntType()); ASSERT_TRUE(util::match(first, second)); @@ -149,7 +149,7 @@ TEST_F(SIRCoreTest, MatchingIntConst) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingFloatConst) { +TEST_F(CIRCoreTest, MatchingFloatConst) { auto *first = module->Nr(0.0, module->getFloatType()); auto *second = module->Nr(0.0, module->getFloatType()); ASSERT_TRUE(util::match(first, second)); @@ -157,7 +157,7 @@ TEST_F(SIRCoreTest, MatchingFloatConst) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingBoolConst) { +TEST_F(CIRCoreTest, MatchingBoolConst) { auto *first = module->Nr(false, module->getBoolType()); auto *second = module->Nr(false, module->getBoolType()); ASSERT_TRUE(util::match(first, second)); @@ -165,7 +165,7 @@ TEST_F(SIRCoreTest, MatchingBoolConst) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingStringConst) { +TEST_F(CIRCoreTest, MatchingStringConst) { auto *first = module->Nr("hi", module->getStringType()); auto *second = module->Nr("hi", module->getStringType()); ASSERT_TRUE(util::match(first, second)); @@ -173,7 +173,7 @@ TEST_F(SIRCoreTest, MatchingStringConst) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingAssignInstr) { +TEST_F(CIRCoreTest, MatchingAssignInstr) { auto *var = module->Nr(module->getIntType()); auto *val = module->Nr(1, module->getIntType()); auto *first = module->Nr(var, val); @@ -184,7 +184,7 @@ TEST_F(SIRCoreTest, MatchingAssignInstr) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingExtractInstr) { +TEST_F(CIRCoreTest, MatchingExtractInstr) { auto FIELD = "foo"; auto *type = cast(module->unsafeGetMemberedType("**internal**")); type->realize({module->getIntType()}, {FIELD}); @@ -198,7 +198,7 @@ TEST_F(SIRCoreTest, MatchingExtractInstr) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingInsertInstr) { +TEST_F(CIRCoreTest, MatchingInsertInstr) { auto FIELD = "foo"; auto *type = cast(module->unsafeGetMemberedType("**internal**")); type->realize({module->getIntType()}, {FIELD}); @@ -213,7 +213,7 @@ TEST_F(SIRCoreTest, MatchingInsertInstr) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingCallInstr) { +TEST_F(CIRCoreTest, MatchingCallInstr) { auto *type = module->unsafeGetDummyFuncType(); auto *func = module->Nr(); func->realize(type, {}); @@ -229,7 +229,7 @@ TEST_F(SIRCoreTest, MatchingCallInstr) { ASSERT_FALSE(util::match(first, second)); } -TEST_F(SIRCoreTest, MatchingTernaryInstr) { +TEST_F(CIRCoreTest, MatchingTernaryInstr) { auto *trueValue = module->Nr(true, module->getBoolType()); auto *falseValue = module->Nr(false, module->getBoolType()); auto *cond = module->Nr(true, module->getBoolType()); diff --git a/test/sir/value.cpp b/test/cir/value.cpp similarity index 95% rename from test/sir/value.cpp rename to test/cir/value.cpp index 261a0ba6..b705ab64 100644 --- a/test/sir/value.cpp +++ b/test/cir/value.cpp @@ -2,7 +2,7 @@ using namespace codon::ir; -TEST_F(SIRCoreTest, ValueQueryMethodsDelegate) { +TEST_F(CIRCoreTest, ValueQueryMethodsDelegate) { Value *original = module->Nr(1, module->getIntType(), "foo"); auto originalRef = original->referenceString(); @@ -30,7 +30,7 @@ TEST_F(SIRCoreTest, ValueQueryMethodsDelegate) { ASSERT_EQ(1, original->getUsedTypes().size()); } -TEST_F(SIRCoreTest, ValueReplaceMethodsDelegate) { +TEST_F(CIRCoreTest, ValueReplaceMethodsDelegate) { Value *original = module->Nr(1, module->getIntType(), "foo"); auto originalRef = original->referenceString(); auto originalId = original->getId(); diff --git a/test/sir/var.cpp b/test/cir/var.cpp similarity index 88% rename from test/sir/var.cpp rename to test/cir/var.cpp index 53527858..31c1b17d 100644 --- a/test/sir/var.cpp +++ b/test/cir/var.cpp @@ -2,7 +2,7 @@ using namespace codon::ir; -TEST_F(SIRCoreTest, VarQueryMethodsDelegate) { +TEST_F(CIRCoreTest, VarQueryMethodsDelegate) { Var *original = module->Nr(module->getIntType()); Var *replacement = module->Nr(module->getFloatType()); original->replaceAll(replacement); @@ -11,7 +11,7 @@ TEST_F(SIRCoreTest, VarQueryMethodsDelegate) { ASSERT_EQ(module->getFloatType(), original->getUsedTypes().back()); } -TEST_F(SIRCoreTest, VarReplaceMethodsDelegate) { +TEST_F(CIRCoreTest, VarReplaceMethodsDelegate) { Var *original = module->Nr(module->getIntType()); Var *replacement = module->Nr(module->getFloatType()); diff --git a/test/main.cpp b/test/main.cpp index d263b97e..15259705 100644 --- a/test/main.cpp +++ b/test/main.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include @@ -18,12 +18,12 @@ #include "codon/compiler/compiler.h" #include "codon/compiler/error.h" #include "codon/parser/common.h" -#include "codon/sir/analyze/dataflow/capture.h" -#include "codon/sir/analyze/dataflow/reaching.h" -#include "codon/sir/util/inlining.h" -#include "codon/sir/util/irtools.h" -#include "codon/sir/util/operator.h" -#include "codon/sir/util/outlining.h" +#include "codon/cir/analyze/dataflow/capture.h" +#include "codon/cir/analyze/dataflow/reaching.h" +#include "codon/cir/util/inlining.h" +#include "codon/cir/util/irtools.h" +#include "codon/cir/util/operator.h" +#include "codon/cir/util/outlining.h" #include "codon/util/common.h" #include "gtest/gtest.h" diff --git a/test/types.cpp b/test/types.cpp index adad231f..5eab09bf 100644 --- a/test/types.cpp +++ b/test/types.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Exaloop Inc. +// Copyright (C) 2022-2023 Exaloop Inc. #include #include