├── .github └── workflows │ └── scala.yml ├── .gitignore ├── .hook.yaml ├── .scalafmt.conf ├── .vscode ├── launch.json └── settings.json ├── LICENSE ├── Makefile ├── README.md ├── bin └── run-dahlia ├── docs ├── array-access-visualizer.md ├── assets │ └── banked-1d.png ├── binders.md ├── cheat.md ├── cli-compile.md ├── cpp-runnable.md ├── headers.md ├── imports.md ├── install.md ├── literals.md ├── overview.md ├── testing.md ├── text-editors.md └── types.md ├── file-tests ├── cpp-out │ ├── convolution-1d.expect │ ├── convolution-with-aligned-view.expect │ ├── dot-product-with-array-literal.expect │ ├── dot-product.expect │ ├── for-reversed.expect │ ├── local.expect │ ├── matadd-fixed-point.expect │ ├── matadd.expect │ ├── nd-array-passed-to-function.expect │ ├── records.expect │ └── split-example.expect ├── data │ ├── atax.expect │ ├── atax.fuse.data.json │ ├── convolution-1d.expect │ ├── convolution-1d.fuse.data.json │ ├── convolution-with-aligned-view.expect │ ├── convolution-with-aligned-view.fuse.data.json │ ├── def-with-memory.expect │ ├── def-with-memory.fuse.data.json │ ├── dot-product-with-array-literal.expect │ ├── dot-product-with-array-literal.fuse.data.json │ ├── dot-product.expect │ ├── dot-product.fuse.data.json │ ├── for-reversed.expect │ ├── for-reversed.fuse.data.json │ ├── local.expect │ ├── local.fuse.data.json │ ├── matadd-fixed-point.expect │ ├── matadd-fixed-point.fuse.data.json │ ├── matadd.expect │ ├── matadd.fuse.data.json │ ├── mv-unroll.expect │ ├── mv-unroll.fuse.data.json │ ├── nd-array-passed-to-function.expect │ ├── nd-array-passed-to-function.fuse.data.json │ ├── records.expect │ ├── records.fuse.data.json │ ├── split-example.expect │ └── split-example.fuse.data.json ├── parent-map │ ├── block.expect │ ├── block.fuse │ ├── dot-product.expect │ ├── dot-product.fuse │ ├── nested.expect │ └── nested.fuse ├── should-compile │ ├── fully-unrolled-matrix-vector-mul.fuse │ ├── function.fuse │ ├── general-matrix-multiply-one-unroll.fuse │ ├── matadd.fuse │ ├── vsadd.fuse │ └── vvadd.fuse ├── should-futil │ ├── emit-signed-op.expect │ ├── emit-signed-op.fuse │ ├── fixed-point-constant.expect │ ├── fixed-point-constant.fuse │ ├── fixed-point-multi-cycle.expect │ ├── fixed-point-multi-cycle.fuse │ ├── for-multi-dim.expect │ ├── for-multi-dim.fuse │ ├── for.expect │ ├── for.fuse │ ├── invoke-with-fixed-point.expect │ ├── invoke-with-fixed-point.fuse │ ├── invoke-with-memories.expect │ ├── invoke-with-memories.fuse │ ├── invoke.expect │ ├── invoke.fuse │ ├── sequentialize-reduce.expect │ ├── sequentialize-reduce.fuse │ ├── use-plus-equals.expect │ └── use-plus-equals.fuse ├── should-lower-run │ ├── atax.fuse │ ├── def-with-memory.fuse │ ├── dot-product.fuse │ ├── matadd-fixed-point.fuse │ ├── matadd.fuse │ ├── mv-unroll.fuse │ └── records.fuse ├── should-lower │ ├── hoist.expect │ ├── hoist.fuse │ ├── lower-constant-access.expect │ ├── lower-constant-access.fuse │ ├── mat.expect │ ├── mat.fuse │ ├── nested.expect │ ├── nested.fuse │ ├── scopes.expect │ ├── scopes.fuse │ ├── sequentialize-nested-par.expect │ └── sequentialize-nested-par.fuse ├── should-run │ ├── convolution-1d.fuse │ ├── convolution-with-aligned-view.fuse │ ├── dot-product-with-array-literal.fuse │ ├── dot-product.fuse │ ├── for-reversed.fuse │ ├── local.fuse │ ├── matadd-fixed-point.fuse │ ├── matadd.fuse │ ├── nd-array-passed-to-function.fuse │ ├── records.fuse │ └── split-example.fuse └── vivado-out │ ├── fully-unrolled-matrix-vector-mul.expect │ ├── function.expect │ ├── general-matrix-multiply-one-unroll.expect │ ├── matadd.expect │ ├── vsadd.expect │ └── vvadd.expect ├── fuse ├── notes ├── .gitignore ├── Makefile ├── README.md ├── appendix.md ├── banking.md ├── combine.md ├── extra.css ├── footer.html ├── header.html ├── img │ ├── images.rkt │ ├── row-imp-dyn-stride.png │ ├── row-imp-iterator-step.png │ ├── row-slice-invalid.png │ ├── row-slice-stride.png │ ├── row-slice.png │ ├── row-view-seq.png │ ├── row-view-stride.png │ ├── row-view.png │ └── two-dim-slice.png ├── index.md ├── indextype.md ├── logicalmemoryaccess.md ├── modd.conf ├── old │ ├── capabilities.md │ ├── index.md │ ├── matmul.md │ ├── multaccess.md │ ├── views-and-slices.md │ ├── vsadd.md │ └── vvadd.md ├── seashellintro.md ├── spatial.md ├── tutorial │ ├── hwtute-01.md │ ├── hwtute-02.md │ └── index.md └── view.md ├── project ├── assembly.sbt ├── build.properties └── plugins.sbt ├── runt.toml ├── src ├── main │ ├── resources │ │ └── headers │ │ │ └── parser.cpp │ └── scala │ │ ├── Compiler.scala │ │ ├── GenerateExec.scala │ │ ├── Main.scala │ │ ├── Parser.scala │ │ ├── Utils.scala │ │ ├── backends │ │ ├── Backend.scala │ │ ├── CppLike.scala │ │ ├── CppRunnable.scala │ │ ├── VivadoBackend.scala │ │ └── calyx │ │ │ ├── Ast.scala │ │ │ ├── Backend.scala │ │ │ └── Helpers.scala │ │ ├── common │ │ ├── Checker.scala │ │ ├── CodeGenHelpers.scala │ │ ├── Configuration.scala │ │ ├── Document.scala │ │ ├── EnvHelpers.scala │ │ ├── Errors.scala │ │ ├── Logger.scala │ │ ├── MultiSet.scala │ │ ├── Pretty.scala │ │ ├── ScopeMap.scala │ │ ├── ScopedSet.scala │ │ ├── Syntax.scala │ │ └── Transformer.scala │ │ ├── passes │ │ ├── AddBitWidth.scala │ │ ├── BoundsCheck.scala │ │ ├── DependentLoops.scala │ │ ├── HoistMemoryReads.scala │ │ ├── HoistSlowBinop.scala │ │ ├── LoopCheck.scala │ │ ├── LowerForLoops.scala │ │ ├── LowerUnroll.scala │ │ ├── RewriteView.scala │ │ ├── Sequentialize.scala │ │ └── WellFormedCheck.scala │ │ └── typechecker │ │ ├── AffineCheck.scala │ │ ├── AffineEnv.scala │ │ ├── CapabilityChecker.scala │ │ ├── CapabilityEnv.scala │ │ ├── Gadget.scala │ │ ├── Info.scala │ │ ├── Subtyping.scala │ │ ├── TypeCheck.scala │ │ └── TypeEnv.scala ├── project │ └── build.properties └── test │ └── scala │ ├── ParsingPositive.scala │ ├── TestUtils.scala │ └── TypeCheckerSpec.scala ├── tools ├── array-access-visualizer │ ├── examples.rkt │ ├── gemm-blocked.rkt │ ├── image-gen-helpers.rkt │ ├── let-matrix.rkt │ ├── matrix-visualizer.rkt │ └── paper-images.rkt ├── emacs │ ├── README.md │ └── fuse-mode │ │ └── fuse-mode.el └── vim │ └── fuse │ ├── README.md │ ├── ftdetect │ └── fuse.vim │ └── syntax │ └── fuse.vim └── website ├── .gitignore ├── Makefile ├── core └── Footer.js ├── package.json ├── sidebars.json ├── siteConfig.js └── static ├── css ├── code-block-buttons.css └── custom.css ├── img ├── dahlia-compiler.svg └── dahlia-logo.png ├── index.html └── js └── code-block-buttons.js /.github/workflows/scala.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/.github/workflows/scala.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/.gitignore -------------------------------------------------------------------------------- /.hook.yaml: -------------------------------------------------------------------------------- 1 | deploy: onbuild make website 2 | -------------------------------------------------------------------------------- /.scalafmt.conf: -------------------------------------------------------------------------------- 1 | version = "3.8.0" 2 | align.tokens = [] 3 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/README.md -------------------------------------------------------------------------------- /bin/run-dahlia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/bin/run-dahlia -------------------------------------------------------------------------------- /docs/array-access-visualizer.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/array-access-visualizer.md -------------------------------------------------------------------------------- /docs/assets/banked-1d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/assets/banked-1d.png -------------------------------------------------------------------------------- /docs/binders.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/binders.md -------------------------------------------------------------------------------- /docs/cheat.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/cheat.md -------------------------------------------------------------------------------- /docs/cli-compile.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/cli-compile.md -------------------------------------------------------------------------------- /docs/cpp-runnable.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/cpp-runnable.md -------------------------------------------------------------------------------- /docs/headers.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/headers.md -------------------------------------------------------------------------------- /docs/imports.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/imports.md -------------------------------------------------------------------------------- /docs/install.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/install.md -------------------------------------------------------------------------------- /docs/literals.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/literals.md -------------------------------------------------------------------------------- /docs/overview.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/overview.md -------------------------------------------------------------------------------- /docs/testing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/testing.md -------------------------------------------------------------------------------- /docs/text-editors.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/text-editors.md -------------------------------------------------------------------------------- /docs/types.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/docs/types.md -------------------------------------------------------------------------------- /file-tests/cpp-out/convolution-1d.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/convolution-1d.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/convolution-with-aligned-view.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/convolution-with-aligned-view.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/dot-product-with-array-literal.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/dot-product-with-array-literal.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/dot-product.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/dot-product.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/for-reversed.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/for-reversed.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/local.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/local.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/matadd-fixed-point.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/matadd-fixed-point.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/matadd.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/matadd.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/nd-array-passed-to-function.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/nd-array-passed-to-function.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/records.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/records.expect -------------------------------------------------------------------------------- /file-tests/cpp-out/split-example.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/cpp-out/split-example.expect -------------------------------------------------------------------------------- /file-tests/data/atax.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/atax.expect -------------------------------------------------------------------------------- /file-tests/data/atax.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/atax.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/convolution-1d.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/convolution-1d.expect -------------------------------------------------------------------------------- /file-tests/data/convolution-1d.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/convolution-1d.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/convolution-with-aligned-view.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/convolution-with-aligned-view.expect -------------------------------------------------------------------------------- /file-tests/data/convolution-with-aligned-view.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/convolution-with-aligned-view.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/def-with-memory.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/def-with-memory.expect -------------------------------------------------------------------------------- /file-tests/data/def-with-memory.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/def-with-memory.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/dot-product-with-array-literal.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/dot-product-with-array-literal.expect -------------------------------------------------------------------------------- /file-tests/data/dot-product-with-array-literal.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/dot-product-with-array-literal.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/dot-product.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/dot-product.expect -------------------------------------------------------------------------------- /file-tests/data/dot-product.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/dot-product.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/for-reversed.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/for-reversed.expect -------------------------------------------------------------------------------- /file-tests/data/for-reversed.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/for-reversed.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/local.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/local.expect -------------------------------------------------------------------------------- /file-tests/data/local.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/local.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/matadd-fixed-point.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/matadd-fixed-point.expect -------------------------------------------------------------------------------- /file-tests/data/matadd-fixed-point.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/matadd-fixed-point.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/matadd.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/matadd.expect -------------------------------------------------------------------------------- /file-tests/data/matadd.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/matadd.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/mv-unroll.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/mv-unroll.expect -------------------------------------------------------------------------------- /file-tests/data/mv-unroll.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/mv-unroll.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/nd-array-passed-to-function.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/nd-array-passed-to-function.expect -------------------------------------------------------------------------------- /file-tests/data/nd-array-passed-to-function.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/nd-array-passed-to-function.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/records.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/records.expect -------------------------------------------------------------------------------- /file-tests/data/records.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/records.fuse.data.json -------------------------------------------------------------------------------- /file-tests/data/split-example.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/split-example.expect -------------------------------------------------------------------------------- /file-tests/data/split-example.fuse.data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/data/split-example.fuse.data.json -------------------------------------------------------------------------------- /file-tests/parent-map/block.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/parent-map/block.expect -------------------------------------------------------------------------------- /file-tests/parent-map/block.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/parent-map/block.fuse -------------------------------------------------------------------------------- /file-tests/parent-map/dot-product.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/parent-map/dot-product.expect -------------------------------------------------------------------------------- /file-tests/parent-map/dot-product.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/parent-map/dot-product.fuse -------------------------------------------------------------------------------- /file-tests/parent-map/nested.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/parent-map/nested.expect -------------------------------------------------------------------------------- /file-tests/parent-map/nested.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/parent-map/nested.fuse -------------------------------------------------------------------------------- /file-tests/should-compile/fully-unrolled-matrix-vector-mul.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-compile/fully-unrolled-matrix-vector-mul.fuse -------------------------------------------------------------------------------- /file-tests/should-compile/function.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-compile/function.fuse -------------------------------------------------------------------------------- /file-tests/should-compile/general-matrix-multiply-one-unroll.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-compile/general-matrix-multiply-one-unroll.fuse -------------------------------------------------------------------------------- /file-tests/should-compile/matadd.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-compile/matadd.fuse -------------------------------------------------------------------------------- /file-tests/should-compile/vsadd.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-compile/vsadd.fuse -------------------------------------------------------------------------------- /file-tests/should-compile/vvadd.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-compile/vvadd.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/emit-signed-op.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/emit-signed-op.expect -------------------------------------------------------------------------------- /file-tests/should-futil/emit-signed-op.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/emit-signed-op.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/fixed-point-constant.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/fixed-point-constant.expect -------------------------------------------------------------------------------- /file-tests/should-futil/fixed-point-constant.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/fixed-point-constant.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/fixed-point-multi-cycle.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/fixed-point-multi-cycle.expect -------------------------------------------------------------------------------- /file-tests/should-futil/fixed-point-multi-cycle.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/fixed-point-multi-cycle.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/for-multi-dim.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/for-multi-dim.expect -------------------------------------------------------------------------------- /file-tests/should-futil/for-multi-dim.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/for-multi-dim.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/for.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/for.expect -------------------------------------------------------------------------------- /file-tests/should-futil/for.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/for.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/invoke-with-fixed-point.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/invoke-with-fixed-point.expect -------------------------------------------------------------------------------- /file-tests/should-futil/invoke-with-fixed-point.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/invoke-with-fixed-point.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/invoke-with-memories.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/invoke-with-memories.expect -------------------------------------------------------------------------------- /file-tests/should-futil/invoke-with-memories.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/invoke-with-memories.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/invoke.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/invoke.expect -------------------------------------------------------------------------------- /file-tests/should-futil/invoke.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/invoke.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/sequentialize-reduce.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/sequentialize-reduce.expect -------------------------------------------------------------------------------- /file-tests/should-futil/sequentialize-reduce.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/sequentialize-reduce.fuse -------------------------------------------------------------------------------- /file-tests/should-futil/use-plus-equals.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/use-plus-equals.expect -------------------------------------------------------------------------------- /file-tests/should-futil/use-plus-equals.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-futil/use-plus-equals.fuse -------------------------------------------------------------------------------- /file-tests/should-lower-run/atax.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower-run/atax.fuse -------------------------------------------------------------------------------- /file-tests/should-lower-run/def-with-memory.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower-run/def-with-memory.fuse -------------------------------------------------------------------------------- /file-tests/should-lower-run/dot-product.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower-run/dot-product.fuse -------------------------------------------------------------------------------- /file-tests/should-lower-run/matadd-fixed-point.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower-run/matadd-fixed-point.fuse -------------------------------------------------------------------------------- /file-tests/should-lower-run/matadd.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower-run/matadd.fuse -------------------------------------------------------------------------------- /file-tests/should-lower-run/mv-unroll.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower-run/mv-unroll.fuse -------------------------------------------------------------------------------- /file-tests/should-lower-run/records.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower-run/records.fuse -------------------------------------------------------------------------------- /file-tests/should-lower/hoist.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/hoist.expect -------------------------------------------------------------------------------- /file-tests/should-lower/hoist.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/hoist.fuse -------------------------------------------------------------------------------- /file-tests/should-lower/lower-constant-access.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/lower-constant-access.expect -------------------------------------------------------------------------------- /file-tests/should-lower/lower-constant-access.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/lower-constant-access.fuse -------------------------------------------------------------------------------- /file-tests/should-lower/mat.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/mat.expect -------------------------------------------------------------------------------- /file-tests/should-lower/mat.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/mat.fuse -------------------------------------------------------------------------------- /file-tests/should-lower/nested.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/nested.expect -------------------------------------------------------------------------------- /file-tests/should-lower/nested.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/nested.fuse -------------------------------------------------------------------------------- /file-tests/should-lower/scopes.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/scopes.expect -------------------------------------------------------------------------------- /file-tests/should-lower/scopes.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/scopes.fuse -------------------------------------------------------------------------------- /file-tests/should-lower/sequentialize-nested-par.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/sequentialize-nested-par.expect -------------------------------------------------------------------------------- /file-tests/should-lower/sequentialize-nested-par.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-lower/sequentialize-nested-par.fuse -------------------------------------------------------------------------------- /file-tests/should-run/convolution-1d.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/convolution-1d.fuse -------------------------------------------------------------------------------- /file-tests/should-run/convolution-with-aligned-view.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/convolution-with-aligned-view.fuse -------------------------------------------------------------------------------- /file-tests/should-run/dot-product-with-array-literal.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/dot-product-with-array-literal.fuse -------------------------------------------------------------------------------- /file-tests/should-run/dot-product.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/dot-product.fuse -------------------------------------------------------------------------------- /file-tests/should-run/for-reversed.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/for-reversed.fuse -------------------------------------------------------------------------------- /file-tests/should-run/local.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/local.fuse -------------------------------------------------------------------------------- /file-tests/should-run/matadd-fixed-point.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/matadd-fixed-point.fuse -------------------------------------------------------------------------------- /file-tests/should-run/matadd.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/matadd.fuse -------------------------------------------------------------------------------- /file-tests/should-run/nd-array-passed-to-function.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/nd-array-passed-to-function.fuse -------------------------------------------------------------------------------- /file-tests/should-run/records.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/records.fuse -------------------------------------------------------------------------------- /file-tests/should-run/split-example.fuse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/should-run/split-example.fuse -------------------------------------------------------------------------------- /file-tests/vivado-out/fully-unrolled-matrix-vector-mul.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/vivado-out/fully-unrolled-matrix-vector-mul.expect -------------------------------------------------------------------------------- /file-tests/vivado-out/function.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/vivado-out/function.expect -------------------------------------------------------------------------------- /file-tests/vivado-out/general-matrix-multiply-one-unroll.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/vivado-out/general-matrix-multiply-one-unroll.expect -------------------------------------------------------------------------------- /file-tests/vivado-out/matadd.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/vivado-out/matadd.expect -------------------------------------------------------------------------------- /file-tests/vivado-out/vsadd.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/vivado-out/vsadd.expect -------------------------------------------------------------------------------- /file-tests/vivado-out/vvadd.expect: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/file-tests/vivado-out/vvadd.expect -------------------------------------------------------------------------------- /fuse: -------------------------------------------------------------------------------- 1 | target/scala-3.3.1/fuse.jar -------------------------------------------------------------------------------- /notes/.gitignore: -------------------------------------------------------------------------------- 1 | *.html 2 | style.css 3 | -------------------------------------------------------------------------------- /notes/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/Makefile -------------------------------------------------------------------------------- /notes/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/README.md -------------------------------------------------------------------------------- /notes/appendix.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/appendix.md -------------------------------------------------------------------------------- /notes/banking.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/banking.md -------------------------------------------------------------------------------- /notes/combine.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/combine.md -------------------------------------------------------------------------------- /notes/extra.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/extra.css -------------------------------------------------------------------------------- /notes/footer.html: -------------------------------------------------------------------------------- 1 |
2 | Top ⇑ 3 | -------------------------------------------------------------------------------- /notes/header.html: -------------------------------------------------------------------------------- 1 | Index ↩ 2 |
3 | -------------------------------------------------------------------------------- /notes/img/images.rkt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/images.rkt -------------------------------------------------------------------------------- /notes/img/row-imp-dyn-stride.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/row-imp-dyn-stride.png -------------------------------------------------------------------------------- /notes/img/row-imp-iterator-step.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/row-imp-iterator-step.png -------------------------------------------------------------------------------- /notes/img/row-slice-invalid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/row-slice-invalid.png -------------------------------------------------------------------------------- /notes/img/row-slice-stride.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/row-slice-stride.png -------------------------------------------------------------------------------- /notes/img/row-slice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/row-slice.png -------------------------------------------------------------------------------- /notes/img/row-view-seq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/row-view-seq.png -------------------------------------------------------------------------------- /notes/img/row-view-stride.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/row-view-stride.png -------------------------------------------------------------------------------- /notes/img/row-view.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/row-view.png -------------------------------------------------------------------------------- /notes/img/two-dim-slice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/img/two-dim-slice.png -------------------------------------------------------------------------------- /notes/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/index.md -------------------------------------------------------------------------------- /notes/indextype.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/indextype.md -------------------------------------------------------------------------------- /notes/logicalmemoryaccess.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/logicalmemoryaccess.md -------------------------------------------------------------------------------- /notes/modd.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/modd.conf -------------------------------------------------------------------------------- /notes/old/capabilities.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/old/capabilities.md -------------------------------------------------------------------------------- /notes/old/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/old/index.md -------------------------------------------------------------------------------- /notes/old/matmul.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/old/matmul.md -------------------------------------------------------------------------------- /notes/old/multaccess.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/old/multaccess.md -------------------------------------------------------------------------------- /notes/old/views-and-slices.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/old/views-and-slices.md -------------------------------------------------------------------------------- /notes/old/vsadd.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/old/vsadd.md -------------------------------------------------------------------------------- /notes/old/vvadd.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/old/vvadd.md -------------------------------------------------------------------------------- /notes/seashellintro.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/seashellintro.md -------------------------------------------------------------------------------- /notes/spatial.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/spatial.md -------------------------------------------------------------------------------- /notes/tutorial/hwtute-01.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/tutorial/hwtute-01.md -------------------------------------------------------------------------------- /notes/tutorial/hwtute-02.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/tutorial/hwtute-02.md -------------------------------------------------------------------------------- /notes/tutorial/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/tutorial/index.md -------------------------------------------------------------------------------- /notes/view.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/notes/view.md -------------------------------------------------------------------------------- /project/assembly.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/project/assembly.sbt -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.9.8 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/project/plugins.sbt -------------------------------------------------------------------------------- /runt.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/runt.toml -------------------------------------------------------------------------------- /src/main/resources/headers/parser.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/resources/headers/parser.cpp -------------------------------------------------------------------------------- /src/main/scala/Compiler.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/Compiler.scala -------------------------------------------------------------------------------- /src/main/scala/GenerateExec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/GenerateExec.scala -------------------------------------------------------------------------------- /src/main/scala/Main.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/Main.scala -------------------------------------------------------------------------------- /src/main/scala/Parser.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/Parser.scala -------------------------------------------------------------------------------- /src/main/scala/Utils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/Utils.scala -------------------------------------------------------------------------------- /src/main/scala/backends/Backend.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/backends/Backend.scala -------------------------------------------------------------------------------- /src/main/scala/backends/CppLike.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/backends/CppLike.scala -------------------------------------------------------------------------------- /src/main/scala/backends/CppRunnable.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/backends/CppRunnable.scala -------------------------------------------------------------------------------- /src/main/scala/backends/VivadoBackend.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/backends/VivadoBackend.scala -------------------------------------------------------------------------------- /src/main/scala/backends/calyx/Ast.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/backends/calyx/Ast.scala -------------------------------------------------------------------------------- /src/main/scala/backends/calyx/Backend.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/backends/calyx/Backend.scala -------------------------------------------------------------------------------- /src/main/scala/backends/calyx/Helpers.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/backends/calyx/Helpers.scala -------------------------------------------------------------------------------- /src/main/scala/common/Checker.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/Checker.scala -------------------------------------------------------------------------------- /src/main/scala/common/CodeGenHelpers.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/CodeGenHelpers.scala -------------------------------------------------------------------------------- /src/main/scala/common/Configuration.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/Configuration.scala -------------------------------------------------------------------------------- /src/main/scala/common/Document.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/Document.scala -------------------------------------------------------------------------------- /src/main/scala/common/EnvHelpers.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/EnvHelpers.scala -------------------------------------------------------------------------------- /src/main/scala/common/Errors.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/Errors.scala -------------------------------------------------------------------------------- /src/main/scala/common/Logger.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/Logger.scala -------------------------------------------------------------------------------- /src/main/scala/common/MultiSet.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/MultiSet.scala -------------------------------------------------------------------------------- /src/main/scala/common/Pretty.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/Pretty.scala -------------------------------------------------------------------------------- /src/main/scala/common/ScopeMap.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/ScopeMap.scala -------------------------------------------------------------------------------- /src/main/scala/common/ScopedSet.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/ScopedSet.scala -------------------------------------------------------------------------------- /src/main/scala/common/Syntax.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/Syntax.scala -------------------------------------------------------------------------------- /src/main/scala/common/Transformer.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/common/Transformer.scala -------------------------------------------------------------------------------- /src/main/scala/passes/AddBitWidth.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/AddBitWidth.scala -------------------------------------------------------------------------------- /src/main/scala/passes/BoundsCheck.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/BoundsCheck.scala -------------------------------------------------------------------------------- /src/main/scala/passes/DependentLoops.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/DependentLoops.scala -------------------------------------------------------------------------------- /src/main/scala/passes/HoistMemoryReads.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/HoistMemoryReads.scala -------------------------------------------------------------------------------- /src/main/scala/passes/HoistSlowBinop.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/HoistSlowBinop.scala -------------------------------------------------------------------------------- /src/main/scala/passes/LoopCheck.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/LoopCheck.scala -------------------------------------------------------------------------------- /src/main/scala/passes/LowerForLoops.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/LowerForLoops.scala -------------------------------------------------------------------------------- /src/main/scala/passes/LowerUnroll.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/LowerUnroll.scala -------------------------------------------------------------------------------- /src/main/scala/passes/RewriteView.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/RewriteView.scala -------------------------------------------------------------------------------- /src/main/scala/passes/Sequentialize.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/Sequentialize.scala -------------------------------------------------------------------------------- /src/main/scala/passes/WellFormedCheck.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/passes/WellFormedCheck.scala -------------------------------------------------------------------------------- /src/main/scala/typechecker/AffineCheck.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/typechecker/AffineCheck.scala -------------------------------------------------------------------------------- /src/main/scala/typechecker/AffineEnv.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/typechecker/AffineEnv.scala -------------------------------------------------------------------------------- /src/main/scala/typechecker/CapabilityChecker.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/typechecker/CapabilityChecker.scala -------------------------------------------------------------------------------- /src/main/scala/typechecker/CapabilityEnv.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/typechecker/CapabilityEnv.scala -------------------------------------------------------------------------------- /src/main/scala/typechecker/Gadget.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/typechecker/Gadget.scala -------------------------------------------------------------------------------- /src/main/scala/typechecker/Info.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/typechecker/Info.scala -------------------------------------------------------------------------------- /src/main/scala/typechecker/Subtyping.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/typechecker/Subtyping.scala -------------------------------------------------------------------------------- /src/main/scala/typechecker/TypeCheck.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/typechecker/TypeCheck.scala -------------------------------------------------------------------------------- /src/main/scala/typechecker/TypeEnv.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/main/scala/typechecker/TypeEnv.scala -------------------------------------------------------------------------------- /src/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.9.8 2 | -------------------------------------------------------------------------------- /src/test/scala/ParsingPositive.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/test/scala/ParsingPositive.scala -------------------------------------------------------------------------------- /src/test/scala/TestUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/test/scala/TestUtils.scala -------------------------------------------------------------------------------- /src/test/scala/TypeCheckerSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/src/test/scala/TypeCheckerSpec.scala -------------------------------------------------------------------------------- /tools/array-access-visualizer/examples.rkt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/array-access-visualizer/examples.rkt -------------------------------------------------------------------------------- /tools/array-access-visualizer/gemm-blocked.rkt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/array-access-visualizer/gemm-blocked.rkt -------------------------------------------------------------------------------- /tools/array-access-visualizer/image-gen-helpers.rkt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/array-access-visualizer/image-gen-helpers.rkt -------------------------------------------------------------------------------- /tools/array-access-visualizer/let-matrix.rkt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/array-access-visualizer/let-matrix.rkt -------------------------------------------------------------------------------- /tools/array-access-visualizer/matrix-visualizer.rkt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/array-access-visualizer/matrix-visualizer.rkt -------------------------------------------------------------------------------- /tools/array-access-visualizer/paper-images.rkt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/array-access-visualizer/paper-images.rkt -------------------------------------------------------------------------------- /tools/emacs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/emacs/README.md -------------------------------------------------------------------------------- /tools/emacs/fuse-mode/fuse-mode.el: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/emacs/fuse-mode/fuse-mode.el -------------------------------------------------------------------------------- /tools/vim/fuse/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/vim/fuse/README.md -------------------------------------------------------------------------------- /tools/vim/fuse/ftdetect/fuse.vim: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/vim/fuse/ftdetect/fuse.vim -------------------------------------------------------------------------------- /tools/vim/fuse/syntax/fuse.vim: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/tools/vim/fuse/syntax/fuse.vim -------------------------------------------------------------------------------- /website/.gitignore: -------------------------------------------------------------------------------- 1 | build/ 2 | i18n/ 3 | yarn.lock 4 | -------------------------------------------------------------------------------- /website/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/Makefile -------------------------------------------------------------------------------- /website/core/Footer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/core/Footer.js -------------------------------------------------------------------------------- /website/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/package.json -------------------------------------------------------------------------------- /website/sidebars.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/sidebars.json -------------------------------------------------------------------------------- /website/siteConfig.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/siteConfig.js -------------------------------------------------------------------------------- /website/static/css/code-block-buttons.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/static/css/code-block-buttons.css -------------------------------------------------------------------------------- /website/static/css/custom.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/static/css/custom.css -------------------------------------------------------------------------------- /website/static/img/dahlia-compiler.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/static/img/dahlia-compiler.svg -------------------------------------------------------------------------------- /website/static/img/dahlia-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/static/img/dahlia-logo.png -------------------------------------------------------------------------------- /website/static/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/static/index.html -------------------------------------------------------------------------------- /website/static/js/code-block-buttons.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cucapra/dahlia/HEAD/website/static/js/code-block-buttons.js --------------------------------------------------------------------------------