2024-05-22T00:04:31Z - 2024-11-22T00:04:31Z

Overview

150 Active Pull Requests
70 Active Issues
Excluding merges, 7 authors have pushed 302 commits to master and 441 commits to all branches. On master, 143 files have changed and there have been 30236 additions and 21729 deletions.

132 Pull requests merged by 7 users

Merged #554 Implement abstractions over Structs and NDArray 2024-11-21 18:16:28 +08:00

Merged #553 Terminate both binary operator branches with *_end basic blocks 2024-11-16 12:06:23 +08:00

Merged #552 Pass kernel return alongside attributes writeback 2024-11-16 12:04:05 +08:00

Merged #551 Treat not operator as logical not 2024-11-08 18:28:34 +08:00

Merged #550 refactor/lazylock 2024-10-30 13:21:31 +08:00

Merged #548 Add support for global variables without type annotation 2024-10-08 09:05:38 +08:00

Merged #547 Fix several issues with global variables 2024-10-07 13:58:44 +08:00

Merged #546 Implement support for global variables in nac3standalone 2024-10-04 14:00:10 +08:00

Merged #540 Async RPC support 2024-09-13 12:12:14 +08:00

Merged #544 Update dependencies and Inkwell 2024-09-13 11:13:38 +08:00

Merged #534 core: Miscellaneous fixes. 2024-09-11 16:00:45 +08:00

Merged #525 Fix several missing i1/i8 casts 2024-08-29 16:36:32 +08:00

Merged #527 Fix RPC of ndarrays from host to device 2024-08-29 16:26:58 +08:00

Merged #511 standalone & artiq: remove class_names from resolver 2024-08-28 11:18:48 +08:00

Merged #510 core/typecheck: add missing typecheck in matmul 2024-08-27 22:59:39 +08:00

Merged #508 ndstrides: Allow multi-file IRRT + Exceptions in IRRT 2024-08-27 22:50:15 +08:00

Merged #497 core: allow calling parent methods 2024-08-26 18:37:55 +08:00

Merged #507 [core] Fix resolution of exception names in raise short form 2024-08-26 18:35:02 +08:00

Merged #505 [core] Add codegen_unreachable 2024-08-26 18:33:07 +08:00

Merged #503 Implement support for string and tuple equality comparison 2024-08-21 18:39:06 +08:00

Merged #499 [artiq] Set private linkage for constants 2024-08-19 14:41:43 +08:00

Merged #454 Miscellanous fixes 2024-08-17 17:37:21 +08:00

Merged #412 Implement ndarray.array 2024-08-17 17:37:21 +08:00

Merged #413 Add cargo clippy and cargo fmt to pre-commit hooks 2024-08-17 17:37:21 +08:00

Merged #414 core: refactor to use TypeVarId and TypeVar 2024-08-17 17:37:21 +08:00

Merged #456 core: add np_argmax/np_argmin functions 2024-08-17 17:37:21 +08:00

Merged #445 Refactor List into TObj, Implement __add__, __mul__, __eq__ and __ne__ for lists 2024-08-17 17:37:21 +08:00

Merged #440 core: Fix crashes on invalid subscripting & iterating over non-iterables. 2024-08-17 17:37:21 +08:00

Merged #439 core: improve binop and cmpop error messages 2024-08-17 17:37:21 +08:00

Merged #434 core: support tuple and int32 input for np_empty, np_ones, and more 2024-08-17 17:37:21 +08:00

Merged #403 ndarray: Add support for slicing syntax 2024-08-17 17:37:21 +08:00

Merged #401 Implement numpy.{min,minimum,max,maximum}, fix missing TVar lowering 2024-08-17 17:37:21 +08:00

Merged #400 Allow numpy functions to accept scalars or ndarrays 2024-08-17 17:37:21 +08:00

Merged #398 ndarray: Implement 2D-2D matrix multiplication 2024-08-17 17:37:21 +08:00

Merged #395 Implement negative indices for ndarrays 2024-08-17 17:37:21 +08:00

Merged #394 Improvements to unary operators 2024-08-17 17:37:21 +08:00

Merged #393 Fix several internal errors 2024-08-17 17:37:21 +08:00

Merged #390 Implement ndarray binary, unary and compare operators 2024-08-17 17:37:21 +08:00

Merged #387 Add miscellaneous abstraction 2024-08-17 17:37:21 +08:00

Merged #386 Implement ndarray.fill and ndarray.copy, miscellaneous bugs 2024-08-17 17:37:21 +08:00

Merged #426 Implement RPC for NDArrays 2024-08-17 17:37:21 +08:00

Merged #485 Implement partial support for variadic parameters 2024-08-17 17:37:21 +08:00

Merged #477 Fix codegen issues for 32-bit targets 2024-08-17 17:37:21 +08:00

Merged #478 add nalgebra::linalg methods 2024-08-17 17:37:21 +08:00

Merged #481 Updates to 32-bit codegen 2024-08-17 17:37:21 +08:00

Merged #408 core: Refactor PrimitiveDefinitionIds into an enum + refactor get_builtins() 2024-08-17 17:37:21 +08:00

Merged #463 Miscellanous ARTIQ fixes 2024-08-17 17:37:21 +08:00

Merged #410 core: Add more creator functions for ProxyType 2024-08-17 17:37:21 +08:00

Merged #376 Disallow return of non-primitive values 2024-08-17 17:37:20 +08:00

Merged #331 standalone: Add output_bool in demo library 2024-08-17 17:37:20 +08:00

Merged #318 Add command-line parser and some debug options 2024-08-17 17:37:20 +08:00

Merged #319 Use LLVM New Pass Manager 2024-08-17 17:37:20 +08:00

Merged #321 Use i8 for stack boolean variable allocation 2024-08-17 17:37:20 +08:00

Merged #322 Meta changes from #321 2024-08-17 17:37:20 +08:00

Merged #325 Meta Changes from #321 2024-08-17 17:37:20 +08:00

Merged #328 Demote dead code into a stdout warning 2024-08-17 17:37:20 +08:00

Merged #333 Fix restoration of stack address after invoking function with struct-typed arguments 2024-08-17 17:37:20 +08:00

Merged #334 Move more alloca to the beginning of function 2024-08-17 17:37:20 +08:00

Merged #335 Improvements to List Comprehension Codegen 2024-08-17 17:37:20 +08:00

Merged #339 Implement NumPy math functions 2024-08-17 17:37:20 +08:00

Merged #340 Fix thread safety with LLVM library 2024-08-17 17:37:20 +08:00

Merged #341 Minor improvements to multithreaded compilation in Standalone 2024-08-17 17:37:20 +08:00

Merged #343 ld: Fix remapping of FDEs with multiple CFIs 2024-08-17 17:37:20 +08:00

Merged #347 Fix behavior of with parallel 2024-08-17 17:37:20 +08:00

Merged #353 Implement several unimplemented integer operations and fix casting-related bugs 2024-08-17 17:37:20 +08:00

Merged #357 Prefix all NumPy/SciPy functions 2024-08-17 17:37:20 +08:00

Merged #360 Implement const-generics 2024-08-17 17:37:20 +08:00

Merged #363 Cleanup const generics implementation 2024-08-17 17:37:20 +08:00

Merged #364 Miscellaneous Code Cleanup 2024-08-17 17:37:20 +08:00

Merged #369 Temporarily disable multiple literal bounds 2024-08-17 17:37:20 +08:00

Merged #371 Implement ndarray class, constructor and creation functions 2024-08-17 17:37:20 +08:00

Merged #373 Fix for several compilation/test regressions 2024-08-17 17:37:20 +08:00

Merged #374 Miscellaneous Fixes to IRRT and Standalone Tests 2024-08-17 17:37:20 +08:00

Merged #375 Add LLVM value abstractions for List, Range and NDArray 2024-08-17 17:37:20 +08:00

Merged #377 Allow return of tuple of primitives 2024-08-17 17:37:20 +08:00

Merged #381 Implement indexing for ndarray 2024-08-17 17:37:20 +08:00

Merged #382 Update dependencies, apply clippy changes, and extract LLVM intrinsic functions 2024-08-17 17:37:20 +08:00

Merged #383 Use TObj to represent NDArrays and remove TNDArray 2024-08-17 17:37:20 +08:00

Merged #2 basic type inference 2024-08-17 17:37:19 +08:00

Merged #104 Polymorphism Fixes 2024-08-17 17:37:19 +08:00

Merged #126 len support for list and range (#103) 2024-08-17 17:37:19 +08:00

Merged #155 Add file name to error messages (#70) 2024-08-17 17:37:19 +08:00

Merged #168 Error Message Improvement for Host Variables (#116) 2024-08-17 17:37:19 +08:00

Merged #174 Tuple by value (#172) 2024-08-17 17:37:19 +08:00

Merged #181 Exception and RPC implementation 2024-08-17 17:37:19 +08:00

Merged #195 Better error messages 2024-08-17 17:37:19 +08:00

Merged #213 Unsigned Integer Support 2024-08-17 17:37:19 +08:00

Merged #216 min, max, abs support (#201, #206) 2024-08-17 17:37:19 +08:00

Merged #218 builtin errors 2024-08-17 17:37:19 +08:00

Merged #238 Fixed typevar with fixed range 2024-08-17 17:37:19 +08:00

Merged #247 Tuple Fix (#246) 2024-08-17 17:37:19 +08:00

Merged #252 Default Parameter 2024-08-17 17:37:19 +08:00

Merged #255 Add bound check for list and range (#185) 2024-08-17 17:37:19 +08:00

Merged #259 Get llvm value with expected type (#256) 2024-08-17 17:37:19 +08:00

Merged #261 Optimize Kernel Invariant on Unwrap and Tuple 2024-08-17 17:37:19 +08:00

Merged #267 Debug Location Info 2024-08-17 17:37:19 +08:00

Merged #292 Replace ld.lld with nac3ld for non-host targets 2024-08-17 17:37:19 +08:00

Merged #295 Fix Call Type Error of Inheritance 2024-08-17 17:37:19 +08:00

Merged #316 Fix #284 2024-08-17 17:37:19 +08:00

Merged #317 Improve IR variable naming 2024-08-17 17:37:19 +08:00

Merged #495 [artiq] Fix RPC of ndarrays to host 2024-08-16 17:16:40 +08:00

Merged #493 [artiq] Fix LLVM representation of strings 2024-08-14 09:30:09 +08:00

Merged #492 core: Add compile-time feature to disable escape analysis 2024-08-14 09:29:48 +08:00

Merged #488 Implement core_log and rtio_log to ARTIQ 2024-08-13 15:19:03 +08:00

Merged #489 core: Implement len() on tuples. 2024-08-13 15:02:59 +08:00

Merged #490 core/typecheck: fix np_array ndmin bug 2024-08-13 15:02:20 +08:00

Merged #483 core: reimplement assignment type inference and codegen + other minor changes & refactor 2024-08-05 19:31:06 +08:00

Merged #479 Cleanup PrimDef 2024-07-27 21:57:47 +08:00

Merged #462 standalone: fix __nac3_raise def in demo.c 2024-07-18 11:27:27 +08:00

Merged #455 core: support raise exception short form 2024-07-12 18:58:35 +08:00

Merged #453 core: reduce code duplication in codegen/extern_fns 2024-07-09 16:31:12 +08:00

Merged #450 core: reduce code duplication in codegen/llvm_intrinsic 2024-07-09 16:30:32 +08:00

Merged #452 Make range a type so that it can be used as parameters 2024-07-09 04:44:40 +08:00

Merged #449 meta: use clang -x c++ instead of clang++ 2024-07-09 04:43:23 +08:00

Merged #448 core: use C++ for irrt source 2024-07-07 14:36:11 +08:00

Merged #447 core/llvm_intrinsic: use llvm.rint for rounding 2024-07-07 14:24:33 +08:00

Merged #446 core: workaround inkwell on llvm.stackrestore 2024-07-05 14:51:28 +08:00

Merged #428 core/llvm_intrinsics: remove llvm.roundeven call from call_float_roundeven (issue 396) 2024-07-03 14:17:52 +08:00

Merged #442 core: fix __nac3_ndarray_calc_size crash due to incorrect typing 2024-07-03 13:03:15 +08:00

Merged #437 core: improve function call errors 2024-06-27 14:06:56 +08:00

Merged #438 standalone: prettify TopLevelComposer error reporting 2024-06-27 14:04:10 +08:00

Merged #425 core: add support for class attributes (issue-102) 2024-06-25 16:06:34 +08:00

Merged #433 core: name codegen worker threads 2024-06-25 12:43:35 +08:00

Merged #429 Implement/Fix support for tuple-indexing into ndarrays 2024-06-20 12:50:31 +08:00

Merged #422 core: reduce code duplication in codegen/builtin_fns 2024-06-20 12:48:45 +08:00

Merged #423 Add handling for np.bool_ and np.str_ 2024-06-19 15:15:03 +08:00

Merged #416 nac3artiq: add support string attributes in classes 2024-06-17 16:53:51 +08:00

Merged #419 Run Clippy on test sources as well in pre-commit hook 2024-06-17 13:14:58 +08:00

Merged #409 core: Refactor class abstractions 2024-06-06 14:17:39 +08:00

Merged #406 nac3core: add assertion message in TopLevelComposer::new 2024-06-05 15:30:03 +08:00

Merged #407 core: Refactor to get LLVM intrinsics via Intrinsics::find 2024-06-05 15:29:40 +08:00

Merged #405 flake: add llvmPackages_14.llvm to devShells linux default 2024-06-05 11:11:57 +08:00

18 Pull requests proposed by 4 users

Proposed #424 core: implement np.any() & np.all() 2024-06-19 17:30:06 +08:00

Proposed #451 meta: Use mold as linker 2024-07-08 12:39:41 +08:00

Proposed #509 ndstrides: [1] Introduce models 2024-08-27 10:48:56 +08:00

Proposed #512 ndstrides: [2] {Any,Tuple,List}Object + Implement np_{zeros,ones,full,empty} and len() 2024-08-28 13:40:45 +08:00

Proposed #513 ndstrides: [3] Implement indexing/slicing 2024-08-28 13:48:48 +08:00

Proposed #514 ndstrides: [4] Implement np_array() 2024-08-28 13:51:23 +08:00

Proposed #515 ndstrides: [5] Implement np_{identity,eye,shape,strides,size} and ndarray.{fill.copy} 2024-08-28 13:56:16 +08:00

Proposed #516 ndstrides: [6] Implement np_reshape() 2024-08-28 13:59:10 +08:00

Proposed #517 ndstrides: [7] implement broadcasting & np_broadcast_to() 2024-08-28 14:02:20 +08:00

Proposed #518 ndstrides: [8] implement np_transpose() (with no axes argument) 2024-08-28 14:04:51 +08:00

Proposed #519 ndstrides: [9] Implement ndarray subscript assignment 2024-08-28 14:08:10 +08:00

Proposed #520 ndstrides: [10] Reimplement binops, unary ops, and cmpops. 2024-08-28 14:11:27 +08:00

Proposed #521 ndstrides: [11] Implement general matmul & np_dot() 2024-08-28 14:14:38 +08:00

Proposed #522 ndstrides: [12] Reimplement builtins 2024-08-28 14:21:23 +08:00

Proposed #523 ndstrides: [13] Enhance ndarray.py tests 2024-08-28 14:25:16 +08:00

Proposed #524 ndstrides: [14] Final cleanups 2024-08-28 14:27:15 +08:00

Proposed #535 refactor_composer 2024-08-30 18:36:45 +08:00

Proposed #555 nac3artiq: support kernels sent by content 2024-11-21 11:15:33 +08:00

47 Issues closed from 4 users

Closed #101 pass return value of kernels to host 2024-11-18 15:54:23 +08:00

Closed #541 globals support in nac3standalone 2024-11-04 13:14:25 +08:00

Closed #182 async RPC support 2024-09-19 20:12:34 +08:00

Closed #537 remove llvm-nac3 from buildInputs 2024-09-06 17:11:40 +08:00

Closed #494 nac3artiq bloat 2024-09-02 13:13:15 +08:00

Closed #536 unittest runner blows up 2024-09-02 12:48:44 +08:00

Closed #502 initialization of large int64 attribute fails 2024-08-30 12:43:15 +08:00

Closed #496 RPC of ndarray from host to device results in garbage data 2024-08-29 16:26:58 +08:00

Closed #467 wrong error message on matrix multiplication type error 2024-08-27 23:11:39 +08:00

Closed #466 incorrect ndarray indexing crashes compiler 2024-08-27 14:09:06 +08:00

Closed #133 fields broken with inheritance 2024-08-26 18:37:56 +08:00

Closed #501 Various ARTIQ crashes with get_llvm_type on TFunc 2024-08-26 18:35:03 +08:00

Closed #504 Add utility function for emitting code location if unreachable code error is encountered 2024-08-26 18:33:07 +08:00

Closed #500 Crash with list[tuple] comparison 2024-08-22 22:12:01 +08:00

Closed #498 nac3artiq.CompileError: Linking globals named '..._const': symbol multiply defined! 2024-08-19 14:41:43 +08:00

Closed #465 print_rpc of ndarray freezes 2024-08-16 17:16:40 +08:00

Closed #384 list might not need a specific type category 2024-08-16 16:54:13 +08:00

Closed #470 [nac3standalone 32-bit error] ./loop_try_break.py without --lli: Executable segfault and output is corrupted 2024-08-14 17:39:50 +08:00

Closed #472 [nac3standalone 32-bit error] ./classes.py without --lli: Executable segfault and output is corrupted 2024-08-14 17:39:48 +08:00

Closed #473 [nac3standalone 32-bit error] ./lists.py: Bad LLVM codegen 2024-08-14 17:39:45 +08:00

Closed #474 [nac3standalone 32-bit error] ./demo_test.py without --lli: Executable segfault and output is corrupted 2024-08-14 17:39:43 +08:00

Closed #476 [nac3standalone 32-bit error] ./ndarray.py: Bad LLVM codegen 2024-08-14 17:39:40 +08:00

Closed #431 support precompilation in ARTIQ 2024-08-14 17:21:19 +08:00

Closed #491 Cannot pass str into kernels from outside 2024-08-14 09:30:09 +08:00

Closed #464 Cannot type-annotate ndarray RPC parameter in ARTIQ 2024-08-13 16:03:25 +08:00

Closed #297 support core_log and rtio_log 2024-08-13 15:19:03 +08:00

Closed #484 core: Implement len() on tuples. 2024-08-13 15:13:54 +08:00

Closed #482 core: Inferencer should treat item assignments differently than direct assignments 2024-08-06 09:47:27 +08:00

Closed #460 core: Inferencer fold_stmt() on StmtKind::Assign should not force unify value_ty with target_ty for __setitem__ assignments. 2024-07-31 10:51:02 +08:00

Closed #480 remaining issues from PR #477 2024-07-29 16:39:34 +08:00

Closed #471 [nac3standalone 32-bit error] ./loop_try_break.py WITH --lli: Executable segfault and output is corrupted 2024-07-27 22:00:55 +08:00

Closed #475 [nac3standalone 32-bit error] ./demo_test.py WITH --lli: Executable segfault and output is corrupted 2024-07-27 22:00:50 +08:00

Closed #469 [nac3standalone 32-bit error] ./list_slice_issue315.py without --lli: Executable segfault and output is corrupted 2024-07-27 21:55:36 +08:00

Closed #457 Bug: nac3standalone: __nac3_raise produces different outputs depending on optimization level 2024-07-18 11:27:35 +08:00

Closed #396 do not use roundeven 2024-07-12 19:07:04 +08:00

Closed #194 support "raise Exception" short form 2024-07-12 19:01:38 +08:00

Closed #432 type inferencer crash on artiq_sinara_tester 2024-07-07 14:22:04 +08:00

Closed #436 Improve type error messages for operator functions. 2024-07-07 14:21:20 +08:00

Closed #441 ndarray crash in ARTIQ 2024-07-03 13:56:25 +08:00

Closed #427 Allow numpy factories to take in shape parameter as tuple 2024-06-27 15:01:32 +08:00

Closed #435 unify_call() has imprecise error report. 2024-06-27 14:33:46 +08:00

Closed #102 support class attributes 2024-06-27 11:09:07 +08:00

Closed #337 string attributes 2024-06-27 11:07:47 +08:00

Closed #280 ndarray: Elementwise negation for bool arrays 2024-06-21 09:44:03 +08:00

Closed #420 Type Error for equality between a subscripted ndarray and a scalar 2024-06-20 12:50:31 +08:00

Closed #385 Refactor PrimitiveDefinitionIds into an enum 2024-06-12 16:34:55 +08:00

Closed #404 get rid of nac3core/src/codegen/demo_fns.rs 2024-06-03 10:01:02 +08:00

23 Issues created by 4 users

Opened #411 Implement subscript-assignment for NDArrays 2024-06-11 15:48:40 +08:00

Opened #421 Missing string equality operator 2024-06-18 13:24:21 +08:00

Opened #430 support subkernels 2024-06-20 15:27:15 +08:00

Opened #443 compilation of empty kernel emits undefined llvm.stackrestore.p0i8 2024-07-03 13:55:45 +08:00

Opened #444 Genericize unifier implementation to remove all special case handling for lists and ndarrays 2024-07-04 15:26:36 +08:00

Opened #458 Add add_global and add_array_global to ProxyValue classes 2024-07-15 16:55:53 +08:00

Opened #459 Assignment with list patterns does not work. 2024-07-16 11:35:42 +08:00

Opened #461 Allow passing, returning, storing function pointers 2024-07-17 16:13:08 +08:00

Opened #486 core: Generalize ExprKind::Slice and Constant::Ellipsis. 2024-08-09 17:04:05 +08:00

Opened #487 core: Generalize __setitem__ and __getitem__ 2024-08-09 17:23:32 +08:00

Opened #526 Refactor demo.c to C++ or Rust 2024-08-28 16:39:02 +08:00

Opened #528 test_embedding.DefaultArgTest fails 2024-08-30 13:23:27 +08:00

Opened #529 test_embedding.ListTupleTest fails 2024-08-30 13:24:13 +08:00

Opened #530 test_embedding.AssertTest fails 2024-08-30 13:29:04 +08:00

Opened #531 assorted exception bugs 2024-08-30 13:35:42 +08:00

Opened #532 test_pulse_rate fails 2024-08-30 13:43:38 +08:00

Opened #533 support passing keyword arguments to RPC 2024-08-30 14:28:28 +08:00

Opened #538 using nac3core externally is way too much boilerplate 2024-09-06 17:33:56 +08:00

Opened #539 KernelInvariant suggestions 2024-09-10 07:57:22 +08:00

Opened #542 ndarray subscript assignment has to be implemented 2024-09-12 23:07:11 +08:00

Opened #543 implement np.linspace and np.arange 2024-09-12 23:09:17 +08:00

Opened #545 remove all knowledge of "rpc" from nac3core 2024-09-13 12:11:02 +08:00

Opened #549 nac3ld rustc 1.81.0 incompatibility 2024-10-08 11:34:03 +08:00

13 Unresolved Conversations

Open #226 support experiments submitted by content in ARTIQ 2024-11-21 11:15:33 +08:00

Open #74 define parallel/sequential in nac3artiq Rust side 2024-11-16 19:10:33 +08:00

Open #40 module type support 2024-11-16 19:05:43 +08:00

Open #137 support user-defined iterators 2024-08-29 10:16:16 +08:00

Open #135 implement enumerate() 2024-08-29 10:16:16 +08:00

Open #278 ndarray: Implement reshaping 2024-08-29 09:57:22 +08:00

Open #397 ndarray 1D matrix multiplication 2024-08-28 14:14:38 +08:00

Open #136 implement super() 2024-08-19 10:46:33 +08:00

Open #7 make output deterministic 2024-08-16 16:41:49 +08:00

Open #279 ndarray: all/any for bool arrays 2024-06-20 15:50:51 +08:00

Open #51 escape analysis 2024-06-20 15:49:22 +08:00

Open #52 Objects with non-primitive fields 2024-06-20 15:48:55 +08:00

Open #149 implement numpy arrays, math functions, and matrix math 2024-06-20 15:48:45 +08:00