Jeremy Kun

Results 336 comments of Jeremy Kun

Looking a bit more: - Internally there is a tag `opt_only` you can set on test rules and internal systems will respect it when running tests (via `--test_tag_filters='opt_only'` https://bazel.build/reference/command-line-reference#build-flag--test_tag_filters). So...

While we could get this to work, IMO making users of the third class just run with `-c opt` always would be simplest.

I read through this one and it's very straightforward and well written. They decompose each shift required into its constituent bits and shift by the corresponding powers of 2 (e.g.,...

I also think it's not necessarily better than the baseline approach in all cases, so we'd want to do both and pick the best for each input program.

I added an implementation of the basic graph coloring approach in https://github.com/j2kun/rotate-solver/blob/main/vos_vos_erkin.py (though I only added one simple test, may still be buggy). I computed the graph to partition the...

I also wrote a short blog post explaining the algorithm https://www.jeremykun.com/2024/09/02/shift-networks/

Some remaining failing tests ``` heir-opt: external/llvm-project/llvm/include/llvm/Support/Casting.h:566: decltype(auto) llvm::cast(const From &) [To = mlir::IntegerAttr, From = mlir::TypedAttr]: Assertion `isa(Val) && "cast() argument of incompatible type!"' failed. PLEASE submit a bug...

Figured out one problem: the plaintext backend is failing because mod_arith.constant doesn't support fold when the attribute it contains is a dense elements attr.

OK, aside from the two cleanup PRs https://github.com/google/heir/pull/1857 and https://github.com/google/heir/pull/1858, this is ready for review! @asraa I am at your disposal for walking you through the changes. The majority of...