lloda

lloda 推送了 main 分支的代碼到 lloda/ra-ra

2 周之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • a72390fce9 Merge big.hh and small.hh into arrays.hh * src/arrays.hh: As stated. * src/ply.hh: Move wlen/from here, from small.hh. Elsewhere fix references.
  • df2e410cff Trim size of ViewBig, CellBig This makes these the size of P when rank is 0. * ra/small.hh (SmallArray): Use special type for size 0. Remove prevent_zero_size. See also aad94465a94bcdd41b9d1e14c95dac30de06bc10.
  • 查看 2 次提交的內容比對 »

2 周之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • fe96b07727 Looking for an angle to from(iota, ...) * ra/expr.hh (clen): Renamed from maybe_len. (cadd, csub): New functions. (Ptr::constant): Unused, remove. (reverse(Ptr)): Reuse csub. * ra/ra.hh (opt): Renamed from optimize. Reuse cadd/csub. Fix users. * ra/small.hh (is_iota_any): Do not exclude UNB. (beatable): Move the iota/UNB exclusion here. (fromb): Fix iota predicate; must also be beatable.

2 周之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • a07a94727f Patch for bug10 * ra/small.hh (ViewSmall(nested braces)): Add barrier after init. * test/bug10.cc: Don't downgrade warning, check values. * test/ra-7.cc: Remove, merge into ra-9.cc. * ra/expr.hh (Scalar): Simplify operator*().

3 周之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • a4f3347665 Remove unnecessary forwarding * ra/ply.hh (ply_fixed, for_each, early): Expressions get consumed here, so there's no reason to forward.
  • c6d2a1b1c8 Clear spurious (?) warning in filldimv() * ra/expr.hh (filldimv): Resize, take Iterator, manually fill dimv[..].len. (default_dims): Adapt user. (Ptr::mov, Cell::mov): Remove aggressive-optimizations diagnostic override, caused by Seq<int>. * ra/big.hh: Adapt users. * test/wrank.c, test/small-1.cc: Don't use Seq<int>. * ra/ra.hh: Add binary op %.
  • 查看 2 次提交的內容比對 »

3 周之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • 8a08f22bbd Provide separate at(), at_view() This fixes an inconsistency where at(view, i) could return any prefix slice, but at(iter, i) only returned elements; moreover, at(view, i) could be a lot slower than at(start(view), i) because the rank of the result depended on the length of i, which can be dynamic. * ra/small.hh (ViewSmall::at): Do not support slicing; require size(i)==rank(a). * ra/big.hh (ViewBig::at): Idem. * ra/ra.hh (at_view): Redefine, including rank extension. (at): Define rank extension of expr.at(). * docs/ra-ra.texi (at): Update. (at_view): New defun. * test/at.cc: Examples from doc. Move misc at() tests here from fromu.cc. * test/at.cc, test/ra-0.cc, test/ra-11.cc, test/small-1.cc, test/operators.cc: Fix tests that assumed the old behavior of at() to use at_view() instead.
  • 0c6e24a47b Check check for non-constant ptr's length
  • 查看 2 次提交的內容比對 »

3 周之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • 16b5e6e948 No need to forward in Ptr::at(i) Forwarding hurt performance a lot in bench-at, but I'm not sure why that is -- if anything it should be the opposite, since start(RA_FW(i)) is a nop when i is a temp.
  • c9cad45df3 Fix scalar conversions for views * ra/big.hh (ViewBig): Scalar conversion returns *cp not T &. This fixes scalar conversion for sequence view, which returns rvalue. * ra/small.hh (ViewSmall): Likewise. * bench/bench-at.cc: Exercise the conversions here.
  • 查看 2 次提交的內容比對 »

3 周之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • 51626cb767 Look again at len/len_s vs global len_s In the end I didn't change much. * ra/expr.hh: Move Cell here, from small.hh. * ra/expr.hh (Match): New static member len(is_constant). * test/constexpr.cc: Test Match::len_s(k, check true or false).

1 月之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • f76f5cfd3b Reorder declarations, looking to replace Ptr() * ra/small.hh (Wlen): Move after all Iterators have been defined. (start(is_builtin_array)): Use Cell<> directly. * ra/expr.hh (wlen): Move together with Len, Wlen forward decl.

1 月之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • 563da6ab25 Bug in assignment to nested type This bug is also in 5cccf4a963aae54690b0fe257cc3de19e237611b (Before slicer rewrite), so it's not related to the new slicer patches. * test/bug10.cc: As stated. * ra/ply.hh (format): Avoid every() + ops, which come in a later header.

1 月之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • d024383856 Update version and fix manual error * docs/ra-ra.texi: As stated. (Slicing): Correct condition for from(...) to be a view.

1 月之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • 734d37552d Adopt new slicer Some loose ends remain, but nothing that didn't exist before. * ra/small.hh (from etc.): As stated. (ViewSmall::operator()): Reuse from(). * ra/big.hh (ViewBig::operator()): Reuse from(). * test/genfrom.cc: New tests. * test/bench-at.cc: Bench newly enabled from(small, var rank). * test/frame-old.cc, test/from.cc, test/ra-5.cc: Fix tests for (rank 2 A)(rank 1 i) which is now rank 2 and not nested rank 1 of rank 1. * test/fromb.cc, test/view-ops.cc: Test mixed u/b cases that weren't supported before.
  • 5cccf4a963 Before slicer rewrite
  • 查看 2 次提交的內容比對 »

1 月之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • de8728184a Fix fmt(..., scalar) and -DRA_CHECK=2 * ra/ply.hh (std::formatter<ra::Fmt>): start() arg to be formatted. * test/io.cc: New test.
  • a635c72d65 Minor fixes * ra/ra.hh (at): No need to forward a. (lexical_compare): Renamed. * ra/base.hh (mp::append, mp::cons): Simplify. * ra/small.hh (cat): Simplify.
  • 查看 2 次提交的內容比對 »

2 月之前

lloda 推送了標籤 last-gcc-11lloda/ra-ra

2 月之前

lloda 推送了標籤 last-c++20lloda/ra-ra

2 月之前

lloda 已經刪除在 lloda/ra-ra 上的標籤 c++17-last

3 月之前

lloda 推送了標籤 last-c++17lloda/ra-ra

3 月之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • 0258eadcb9 Fix explode for zero-sized sub * ra/small.hh (explode_dims): As stated. * test/explode-0.cc: New test.
  • 32422a3e97 Reuse to_scalar for all scalar conversions * ra/expr.hh (to_scalar): Fix ambiguous overload. * ra/small.hh, ra/big.hh: As stated.
  • 查看 2 次提交的內容比對 »

3 月之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • d532d3171f Fix static conditions in Match * ra/expr.hh (Match): As stated.
  • 04174d97f2 Fix type bug in bench/bench-gemm Was missing update in BLAS section, which isn't exercised consistently. * bench/bench-gemm.cc: As stated. * .github/workflows/gcc-14-no-sanitize.yml: Use cmake sanitize flag.
  • 查看 2 次提交的內容比對 »

4 月之前

lloda 推送了 main 分支的代碼到 lloda/ra-ra

  • 85653fd786 Restrict forward in array constructors Generic (auto && x) grabbed (Container & x) or (T & x), which required extra overloads to patch it all up. * ra/big.hh (ViewBig): Forward only for Iterator argument. (Container): Remove (Container &) constructor and operator=. * ra/small.hh (ViewSmall): Forward only for Iterator argument. (SmallArray): Remove (X && x) constructor for non-T.
  • 8a6f6f9716 Do not forward in array constructors This caused caused conflicts by (auto && x) grabbing (Container & x), which required extra overloads, etc. In principle, temp iterators get copied if start()ed after going through (auto const &). Might bring (auto && x) back if I find that matters. * ra/big.hh (ViewBig): Remove special operator=(X && x), just reuse macro. (Container): Remove (Container &) constructor and operator=. * ra/small.hh (ViewSmall): Remove special operator=(X && x), just reuse macro. (SmallArray): Remove (X && x) constructor for non-T.
  • 查看 2 次提交的內容比對 »

4 月之前