# # ChangeLog for libcfa/src/concurrency/kernel.cfa # # Generated by Trac 1.2.1 # Nov 20, 2024, 2:40:48 AM Mon, 13 Sep 2021 20:56:13 GMT Thierry Delisle [445f984] * libcfa/src/concurrency/kernel.cfa (modified) Forgot to commit changes to include. Mon, 13 Sep 2021 17:41:57 GMT Thierry Delisle [56e5b24] * libcfa/src/concurrency/kernel.cfa (modified) Manually read from event fd instead of calling eventfd_read, which ... Wed, 07 Jul 2021 22:24:42 GMT Thierry Delisle [c86ee4c] * benchmark/readyQ/rq_bench.hfa (modified) * benchmark/readyQ/transfer.cfa (modified) * benchmark/size/size.cfa (modified) * doc/theses/andrew_beach_MMath/code/CondCatch.java (moved) * doc/theses/andrew_beach_MMath/code/CrossCatch.java (modified) * doc/theses/andrew_beach_MMath/code/CrossFinally.java (modified) * doc/theses/andrew_beach_MMath/code/ThrowEmpty.java (modified) * doc/theses/andrew_beach_MMath/code/ThrowFinally.java (modified) * doc/theses/andrew_beach_MMath/code/ThrowOther.java (modified) * doc/theses/andrew_beach_MMath/code/cond-catch.cfa (moved) * doc/theses/andrew_beach_MMath/code/cond-catch.cpp (moved) * doc/theses/andrew_beach_MMath/code/cond-fixup.cfa (moved) * doc/theses/andrew_beach_MMath/code/cross-catch.cfa (modified) * doc/theses/andrew_beach_MMath/code/cross-catch.cpp (modified) * doc/theses/andrew_beach_MMath/code/cross-finally.cfa (modified) * doc/theses/andrew_beach_MMath/code/cross-resume.cfa (modified) * doc/theses/andrew_beach_MMath/code/resume-detor.cfa (modified) * doc/theses/andrew_beach_MMath/code/resume-empty.cfa (modified) * doc/theses/andrew_beach_MMath/code/resume-finally.cfa (modified) * doc/theses/andrew_beach_MMath/code/resume-other.cfa (modified) * doc/theses/andrew_beach_MMath/code/test.sh (added) * doc/theses/andrew_beach_MMath/code/throw-detor.cfa (modified) * doc/theses/andrew_beach_MMath/code/throw-detor.cpp (modified) * doc/theses/andrew_beach_MMath/code/throw-empty.cfa (modified) * doc/theses/andrew_beach_MMath/code/throw-empty.cpp (modified) * doc/theses/andrew_beach_MMath/code/throw-finally.cfa (modified) * doc/theses/andrew_beach_MMath/code/throw-other.cfa (modified) * doc/theses/andrew_beach_MMath/code/throw-other.cpp (modified) * libcfa/prelude/builtins.c (modified) * libcfa/src/bits/weakso_locks.cfa (modified) * libcfa/src/bits/weakso_locks.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/exception.cfa (modified) * libcfa/src/concurrency/future.hfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/locks.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/monitor.hfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/mutex.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * src/Concurrency/Keywords.cc (modified) * src/Concurrency/Waitfor.cc (modified) * src/ResolvExpr/AlternativeFinder.cc (modified) * src/ResolvExpr/CandidateFinder.cpp (modified) * tests/concurrent/semaphore.cfa (modified) * tests/concurrent/signal/block.cfa (modified) * tests/concurrent/spinaphore.cfa (modified) * tests/unified_locking/fast.cfa (modified) * tests/unified_locking/mcs.cfa (modified) * tests/unified_locking/thread_test.cfa (added) * tools/gdb/utils-gdb.py (modified) * tools/perf/process_stat_array.py (modified) * tools/vscode/uwaterloo.cforall-0.1.0/syntaxes/cfa.tmLanguage.json (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Wed, 07 Jul 2021 22:24:22 GMT Thierry Delisle [1f45c7d] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Now tracking cpu migrations using push_stat. Some minor fixes to the ... Mon, 05 Jul 2021 20:44:20 GMT Thierry Delisle [e84ab3d] * libcfa/prelude/builtins.c (modified) * libcfa/src/bits/weakso_locks.cfa (modified) * libcfa/src/bits/weakso_locks.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/exception.cfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/locks.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/monitor.hfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/mutex.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * src/Concurrency/Keywords.cc (modified) Step 1 of changing $thread to thread$ Thu, 17 Jun 2021 19:05:54 GMT Thierry Delisle [12daa43] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Added a define switch for using cpu workstealing. Not Fully implemented. Tue, 15 Jun 2021 21:00:28 GMT Thierry Delisle [43784ac] * benchmark/io/io_uring.h (modified) * libcfa/prelude/defines.hfa.in (modified) * libcfa/src/bits/signal.hfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Changed libcfathread to consistently define _GNU_SOURCE Mon, 14 Jun 2021 18:55:08 GMT Thierry Delisle [733fd3d] * libcfa/src/concurrency/kernel.cfa (modified) Added missing corctx_flag in assertion Mon, 14 Jun 2021 18:01:38 GMT Thierry Delisle [50871b4] * libcfa/src/concurrency/kernel.cfa (modified) Whitespace clean-up Wed, 02 Jun 2021 22:22:47 GMT Thierry Delisle [96bfdde7] * libcfa/src/concurrency/kernel.cfa (modified) Forgot to add symmetric change to last verify change Wed, 02 Jun 2021 21:22:57 GMT Thierry Delisle [ab5baab] * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Attempt to fix the stack checker for when coroutines are interrupted ... Wed, 19 May 2021 17:37:49 GMT Thierry Delisle [b808625] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Added option to ready-queue to push ignoring locality. Thu, 13 May 2021 19:49:30 GMT Thierry Delisle [e2f601f] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/containers/list2.hfa (deleted) * libcfa/src/executor.baseline.txt (added) * libcfa/src/executor.cfa (modified) * src/Concurrency/Keywords.cc (modified) * tests/list/.expect/dlist-insert-remove-2.txt (deleted) * tests/list/.expect/dlist-insert-remove.txt (modified) * tests/list/dlist-insert-remove-2.cfa (deleted) * tests/list/dlist-insert-remove.cfa (modified) * tests/zombies/linked-list-perf/experiment.koad (modified) * tests/zombies/linked-list-perf/mike-old.hfa (added) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Thu, 13 May 2021 19:47:26 GMT Thierry Delisle [57f70ab] * libcfa/src/concurrency/kernel.cfa (modified) New main now uses proper define. + tweak to loop count Thu, 13 May 2021 19:46:03 GMT Thierry Delisle [a9172b5] * libcfa/src/concurrency/kernel.cfa (modified) Removed push stats in alternate main Thu, 13 May 2021 19:45:35 GMT Thierry Delisle [fb4ccdf] * libcfa/src/concurrency/kernel.cfa (modified) Updated alternate main for processors Wed, 12 May 2021 20:30:27 GMT Michael Brooks [69914cbc] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/containers/list2.hfa (deleted) * libcfa/src/executor.baseline.txt (added) * libcfa/src/executor.cfa (modified) * tests/list/.expect/dlist-insert-remove-2.txt (deleted) * tests/list/.expect/dlist-insert-remove.txt (modified) * tests/list/dlist-insert-remove-2.cfa (deleted) * tests/list/dlist-insert-remove.cfa (modified) * tests/zombies/linked-list-perf/experiment.koad (modified) * tests/zombies/linked-list-perf/mike-old.hfa (added) Replacing "Mike's old linked list" with "Mike's new linked list," ... Wed, 05 May 2021 20:53:25 GMT Thierry Delisle [8464edf] * libcfa/src/concurrency/kernel.cfa (modified) 'print_stats_now' now pulls stats from processors. Thu, 29 Apr 2021 20:44:09 GMT Thierry Delisle [34b2796] * libcfa/src/concurrency/kernel.cfa (modified) Changed comments to ifdef Thu, 29 Apr 2021 20:26:25 GMT Thierry Delisle [c993b15] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Changed RW lock to avoid hitting the global array on schedule. Wed, 28 Apr 2021 20:00:03 GMT Thierry Delisle [b7fd2db6] * libcfa/src/concurrency/kernel.cfa (modified) Pushing changed to RWlock with io_drain. I forget a few lines of the ... Sun, 25 Apr 2021 01:05:30 GMT Thierry Delisle [e9c0b4c] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) I/O drain now keeps the schedlock for the duration of the call. ... Sat, 24 Apr 2021 23:45:02 GMT Thierry Delisle [cfff639] * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/startup.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Sat, 24 Apr 2021 23:44:52 GMT Thierry Delisle [89eff25] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Some changes to stats and added back preferred Sat, 24 Apr 2021 23:36:42 GMT Thierry Delisle [fc59df78] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Split ready-queue routines in 3 instead of 2. Sat, 24 Apr 2021 23:24:09 GMT Thierry Delisle [254ad1b] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Separate schedule_thread from the scheduler lock Sat, 24 Apr 2021 23:20:49 GMT Thierry Delisle [734908c] * libcfa/src/concurrency/kernel.cfa (modified) Fudge variable in __schedule_thread so it's not accidently used. Sat, 24 Apr 2021 23:03:47 GMT Thierry Delisle [a3821fa] * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/startup.cfa (modified) Changed enable interrupts: - no longer save the caller for ... Sat, 24 Apr 2021 22:35:43 GMT Thierry Delisle [c6c7e6c] * libcfa/src/concurrency/kernel.cfa (modified) Seperated semphore and scheduling logic in unpark Sat, 24 Apr 2021 22:07:42 GMT Thierry Delisle [c1c95b1] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) io_drain now returns true if anything was unparked Fri, 16 Apr 2021 16:40:27 GMT Thierry Delisle [431cd4f] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Added alternative to relaxed-fifo scheduler. Disabled by default Wed, 14 Apr 2021 20:40:19 GMT Thierry Delisle [fc59b580] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Clusters now keep track of the active processors as well Wed, 14 Apr 2021 20:28:55 GMT Thierry Delisle [6a9b12b] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Incremental change towards having the cluster keep a list of active ... Mon, 12 Apr 2021 19:52:49 GMT Thierry Delisle [73f4d08] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added stats implementation for dumping a big array of timestamped ... Mon, 05 Apr 2021 23:06:37 GMT Thierry Delisle [ec43cf9] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Kernel now keeps track of the how many threads each processor has ... Mon, 05 Apr 2021 20:04:46 GMT Thierry Delisle [b0904bf] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) Removed alarm stats, they are now tallied directly into the cluster Mon, 05 Apr 2021 19:18:12 GMT Thierry Delisle [5cb51502] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Fix stats so they are correctly tallied when called from outside the ... Wed, 17 Mar 2021 17:56:12 GMT Thierry Delisle [a5e7233] * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * tests/concurrent/.expect/clib_tls.txt (added) * tests/concurrent/clib.c (modified) * tests/concurrent/clib_tls.c (added) C interface now runs worker init routine in dedicated thread. Also ... Fri, 12 Mar 2021 21:30:39 GMT Thierry Delisle [a1538cd] * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/clib/cfathread.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Implemented part of the same C api for threads as libfibre. Tue, 02 Mar 2021 19:41:03 GMT Thierry Delisle [55d6affb] * libcfa/src/concurrency/kernel.cfa (modified) Fixed stupid copy past mistake where I used eventfd_read (wait) ... Tue, 02 Mar 2021 18:58:12 GMT Thierry Delisle [dddb3dd0] * libcfa/src/bits/defs.hfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/call.cfa.in (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/iofwd.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Changed io to use ring per kernel threads. Fri, 12 Feb 2021 17:27:08 GMT Thierry Delisle [da3963a] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Moved __bin_sem_t out of kernel.hfa since it's not needed. Wed, 20 Jan 2021 22:35:39 GMT Thierry Delisle [454f478] * libcfa/src/bits/defs.hfa (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/locks.hfa (modified) * tests/concurrent/thread.cfa (modified) Re-arranged and commented low-level headers. Main goal was for ... Wed, 20 Jan 2021 21:40:28 GMT Thierry Delisle [92bfda0] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/interpose.cfa (modified) Revisited abort again to be more streamlined and simple. Fri, 15 Jan 2021 20:18:37 GMT Thierry Delisle [4f449d2] * libcfa/src/concurrency/kernel.cfa (modified) Fixed interted abort condition. Fri, 15 Jan 2021 19:23:08 GMT Thierry Delisle [804c0ff] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/interpose.cfa (modified) Simplified abort handling in the case of concurrent abort. I used to ... Thu, 14 Jan 2021 19:55:49 GMT Thierry Delisle [325e6ea] * libcfa/src/concurrency/kernel.cfa (modified) Kernel now tallies stats regularly Thu, 03 Dec 2020 20:15:55 GMT Thierry Delisle [6011658] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/interpose.cfa (modified) Fixed abort to no longer deadlock when calling itself recursively. ... Mon, 23 Nov 2020 22:10:23 GMT Thierry Delisle [32a8b61] * libcfa/src/concurrency/kernel.cfa (modified) Tentative fix for the recurring crash, caching the current cluster to ... Wed, 18 Nov 2020 19:28:02 GMT Thierry Delisle [3ea8ad1] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Added more checks for thread termination synchronization Tue, 17 Nov 2020 21:29:51 GMT Thierry Delisle [9d6e1b8a] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) Minor improvments to assertions and comments Fri, 13 Nov 2020 16:37:11 GMT Thierry Delisle [ac12f1f] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) canary is now a void * so it prints in hexa in gdb Fri, 13 Nov 2020 16:32:15 GMT Thierry Delisle [1b033b8] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Alarm loop now has it's own stats block Fri, 06 Nov 2020 16:22:57 GMT Thierry Delisle [8fc652e0] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Change usage of TLS to more strongly segregate in kernel and out of ... Tue, 03 Nov 2020 18:16:38 GMT Thierry Delisle [58688bf] * libcfa/src/concurrency/kernel.cfa (modified) Added assertion to check there aren't pending unparks Mon, 02 Nov 2020 17:44:43 GMT Thierry Delisle [e873838] * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Removed __unpark and added support for unpark from the kernel ... Fri, 30 Oct 2020 16:01:12 GMT Thierry Delisle [6a77224] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Changed park/unpark ticket to be -1,0,1 instead of 0,1,2 because it's ... Fri, 30 Oct 2020 15:18:52 GMT Thierry Delisle [7ee8153] * libcfa/src/concurrency/kernel.cfa (modified) Improved the error handling output for mismatched park/unparks Fri, 16 Oct 2020 19:31:02 GMT Thierry Delisle [5afb49a] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) Split thread_leave so backend is called from the kernel once the ... Thu, 01 Oct 2020 18:41:30 GMT Thierry Delisle [b4b63e8] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Fixed missing changes to park/unpark. Added canary to threads to ... Thu, 01 Oct 2020 17:52:53 GMT Thierry Delisle [e235429] * benchmark/io/http/main.cfa (modified) * benchmark/io/http/worker.cfa (modified) * benchmark/io/readv.cfa (modified) * benchmark/readyQ/yield.cfa (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * tests/concurrent/park/contention.cfa (modified) * tests/concurrent/park/force_preempt.cfa (modified) * tests/concurrent/park/start_parked.cfa (modified) Removed last parker/unparker information is it was not particularly ... Thu, 24 Sep 2020 20:22:05 GMT Thierry Delisle [58d64a4] * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) __processor_id_t now have a bool to state if it is a full processor. ... Mon, 31 Aug 2020 11:09:01 GMT Peter A. Buhr [0190480] * libcfa/src/concurrency/kernel.cfa (modified) update for 32-bit ARM Fri, 21 Aug 2020 03:48:15 GMT Peter A. Buhr [e67a82d] * benchmark/benchcltr.hfa (modified) * benchmark/io/http/options.cfa (modified) * benchmark/io/readv-posix.c (added) * benchmark/io/readv.cfa (modified) * benchmark/readyQ/yield.cfa (modified) * configure.ac (modified) * driver/cc1.cc (modified) * driver/cfa.cc (modified) * libcfa/prelude/bootloader.cf (modified) * libcfa/src/Makefile.am (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/common.hfa (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/iocall.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/exception.c (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/iostream.cfa (modified) * libcfa/src/iostream.hfa (modified) * libcfa/src/parseargs.cfa (moved) * libcfa/src/parseargs.hfa (moved) * libcfa/src/stdlib.hfa (modified) * src/AST/Attribute.hpp (modified) * src/AST/CVQualifiers.hpp (modified) * src/AST/Convert.cpp (modified) * src/AST/Copy.hpp (added) * src/AST/Decl.cpp (modified) * src/AST/Decl.hpp (modified) * src/AST/Eval.hpp (added) * src/AST/Expr.cpp (modified) * src/AST/Expr.hpp (modified) * src/AST/ForallSubstitutionTable.cpp (added) * src/AST/ForallSubstitutionTable.hpp (added) * src/AST/ForallSubstitutor.hpp (added) * src/AST/Fwd.hpp (modified) * src/AST/GenericSubstitution.cpp (modified) * src/AST/Init.hpp (modified) * src/AST/Node.cpp (modified) * src/AST/Node.hpp (modified) * src/AST/Pass.hpp (modified) * src/AST/Pass.impl.hpp (modified) * src/AST/Pass.proto.hpp (modified) * src/AST/Print.cpp (modified) * src/AST/Stmt.hpp (modified) * src/AST/Type.cpp (modified) * src/AST/Type.hpp (modified) * src/AST/TypeEnvironment.cpp (modified) * src/AST/TypeEnvironment.hpp (modified) * src/AST/TypeSubstitution.cpp (modified) * src/AST/TypeSubstitution.hpp (modified) * src/AST/module.mk (modified) * src/AST/porting.md (modified) * src/Common/Eval.cc (modified) * src/Common/ScopedMap.h (modified) * src/Common/Stats/Heap.cc (modified) * src/Common/Stats/Heap.h (modified) * src/CompilationState.cc (modified) * src/CompilationState.h (modified) * src/InitTweak/InitTweak.cc (modified) * src/Parser/ExpressionNode.cc (modified) * src/ResolvExpr/AdjustExprType.cc (modified) * src/ResolvExpr/Candidate.hpp (modified) * src/ResolvExpr/CandidateFinder.cpp (modified) * src/ResolvExpr/CandidateFinder.hpp (modified) * src/ResolvExpr/CastCost.cc (modified) * src/ResolvExpr/CommonType.cc (modified) * src/ResolvExpr/ConversionCost.cc (modified) * src/ResolvExpr/ConversionCost.h (modified) * src/ResolvExpr/CurrentObject.cc (modified) * src/ResolvExpr/PolyCost.cc (modified) * src/ResolvExpr/PtrsAssignable.cc (modified) * src/ResolvExpr/PtrsCastable.cc (modified) * src/ResolvExpr/RenameVars.cc (modified) * src/ResolvExpr/ResolveTypeof.cc (modified) * src/ResolvExpr/Resolver.cc (modified) * src/ResolvExpr/SatisfyAssertions.cpp (modified) * src/ResolvExpr/SatisfyAssertions.hpp (modified) * src/ResolvExpr/SpecCost.cc (modified) * src/ResolvExpr/Unify.cc (modified) * src/ResolvExpr/typeops.h (modified) * src/SymTab/Autogen.h (modified) * src/SymTab/FixFunction.cc (modified) * src/SymTab/Mangler.cc (modified) * src/SynTree/ApplicationExpr.cc (modified) * src/SynTree/Expression.cc (modified) * src/SynTree/Statement.h (modified) * src/Tuples/Explode.cc (modified) * src/Tuples/Explode.h (modified) * src/Tuples/TupleAssignment.cc (modified) * src/Tuples/TupleExpansion.cc (modified) * src/Tuples/Tuples.cc (modified) * src/config.h.in (modified) * src/main.cc (modified) * tests/.expect/alloc-ERROR.txt (modified) * tests/.expect/castError.txt (modified) * tests/.expect/declarationSpecifier.x64.txt (modified) * tests/.expect/declarationSpecifier.x86.txt (modified) * tests/.expect/gccExtensions.x64.txt (modified) * tests/.expect/gccExtensions.x86.txt (modified) * tests/.expect/init1.txt (modified) * tests/.expect/minmax.txt (modified) * tests/Makefile.am (modified) * tests/alloc.cfa (modified) * tests/errors/.expect/completeType.x64.txt (modified) * tests/errors/.expect/completeType.x86.txt (modified) * tests/exceptions/.expect/conditional-threads.txt (added) * tests/exceptions/.expect/defaults-threads.txt (added) * tests/exceptions/.expect/finally-threads.txt (added) * tests/exceptions/.expect/resume-threads.txt (added) * tests/exceptions/.expect/terminate-threads.txt (added) * tests/exceptions/.expect/trash.txt (added) * tests/exceptions/terminate.cfa (modified) * tests/exceptions/trash.cfa (added) * tests/exceptions/with-threads.hfa (added) * tests/heap.cfa (modified) * tests/linking/.expect/exception-nothreads.txt (added) * tests/linking/.expect/exception-withthreads.txt (added) * tests/linking/exception-nothreads.cfa (added) * tests/linking/exception-withthreads.cfa (added) * tests/linking/withthreads.cfa (modified) * tests/literals.cfa (modified) * tests/minmax.cfa (modified) * tests/pybin/tools.py (modified) * tests/raii/.expect/ctor-autogen-ERR1.txt (modified) * tests/resolutionErrors.cfa (added) * tests/warnings/.expect/self-assignment.txt (modified) fix conflicts Fri, 21 Aug 2020 02:58:51 GMT Peter A. Buhr [74f5c83] * libcfa/src/concurrency/kernel.cfa (modified) assembler for save/restore registers FPSR/FPCR for ARM Tue, 18 Aug 2020 17:58:59 GMT Thierry Delisle [f2384c9a] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Added forward/reverse rng for later use in the ready queue Fri, 14 Aug 2020 19:03:05 GMT Thierry Delisle [7fdae38] * libcfa/src/concurrency/kernel.cfa (modified) Replaced unnecessary thread fence with sufficient compiler fence Wed, 12 Aug 2020 17:33:00 GMT Thierry Delisle [dab09ad] * libcfa/src/concurrency/kernel.cfa (modified) Added unnecessary thread-fence to work around incorrect reorder Mon, 10 Aug 2020 18:43:02 GMT Thierry Delisle [1eb239e4] * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Removed snzi and replaced it with a fast/slow path Mon, 03 Aug 2020 18:23:17 GMT Thierry Delisle [95789be] * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/iostream.hfa (modified) * libcfa/src/stdlib.hfa (modified) * src/Common/ScopedMap.h (modified) * src/Concurrency/Keywords.cc (modified) * src/Concurrency/Waitfor.cc (modified) * src/Parser/ExpressionNode.cc (modified) * src/ResolvExpr/AlternativeFinder.cc (modified) * src/ResolvExpr/ConversionCost.cc (modified) * src/ResolvExpr/ConversionCost.h (modified) * src/SynTree/Expression.h (modified) * src/Virtual/ExpandCasts.cc (modified) * tests/.expect/castError.txt (modified) * tests/.expect/init1.txt (added) * tests/avltree/avl1.cfa (modified) * tests/bugs/140.cfa (added) * tests/bugs/203-2.cfa (added) * tests/bugs/203-7.cfa (added) * tests/bugs/203-9.cfa (added) * tests/bugs/66.cfa (modified) * tests/castError.cfa (modified) * tests/concurrent/signal/block.cfa (modified) * tests/exceptions/conditional.cfa (modified) * tests/exceptions/defaults.cfa (modified) * tests/init1.cfa (added) * tests/io2.cfa (modified) * tests/searchsort.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Fri, 31 Jul 2020 20:02:04 GMT Thierry Delisle [e660761] * libcfa/src/bits/defs.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (added) * libcfa/src/concurrency/kernel/startup.cfa (added) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/preemption.hfa (modified) First attempt at reducing complation time by restructuring the code. ... Thu, 30 Jul 2020 19:00:19 GMT Thierry Delisle [f00b26d4] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/iocall.cfa (modified) * libcfa/src/concurrency/iofwd.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Re-worked IO to use epoll and support multiple io_contexts per ... Thu, 30 Jul 2020 03:29:01 GMT Michael Brooks [b81fd95] * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/iostream.hfa (modified) * libcfa/src/stdlib.hfa (modified) * src/Concurrency/Keywords.cc (modified) * src/Concurrency/Waitfor.cc (modified) * src/Parser/ExpressionNode.cc (modified) * src/ResolvExpr/AlternativeFinder.cc (modified) * src/SynTree/Expression.h (modified) * tests/.expect/init1.txt (added) * tests/avltree/avl1.cfa (modified) * tests/bugs/66.cfa (modified) * tests/concurrent/signal/block.cfa (modified) * tests/exceptions/conditional.cfa (modified) * tests/exceptions/defaults.cfa (modified) * tests/init1.cfa (added) * tests/io2.cfa (modified) * tests/searchsort.cfa (modified) Fix bug where pointer and reference types allow unsound ... Fri, 24 Jul 2020 19:42:32 GMT Thierry Delisle [39fc03e] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Fixed ready_queue working with 0/1 processors on cluster Fri, 24 Jul 2020 17:11:39 GMT Thierry Delisle [320ec6fc] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/snzi.hfa (modified) Changed ready_queue_(grow/shrink) to take a target instead of going ... Mon, 20 Jul 2020 19:30:25 GMT Thierry Delisle [28d73c1] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/snzi.hfa (modified) Moved processor registration to constructor Thu, 16 Jul 2020 21:27:50 GMT Thierry Delisle [efc171d1] * libcfa/src/concurrency/iocall.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Fixed several concurrency warnings Sat, 11 Jul 2020 22:35:19 GMT Peter A. Buhr [bb83b47] * libcfa/src/concurrency/kernel.cfa (modified) change initialization of kernelTLS to use @= and remove spurious ... Wed, 01 Jul 2020 16:13:30 GMT Thierry Delisle [398e8e9] * libcfa/src/concurrency/kernel.cfa (modified) Tentative deadlock fix Fri, 26 Jun 2020 17:08:36 GMT Thierry Delisle [f2b18d01] * libcfa/src/concurrency/kernel.cfa (modified) * tools/perf/process_halts.sh (added) * tools/perf/view_halts.py (added) First version of tools to view halts Thu, 25 Jun 2020 18:30:46 GMT Thierry Delisle [69fbc61] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Clusters/Processors can now select which stats to print. Instead of ... Thu, 25 Jun 2020 17:34:34 GMT Thierry Delisle [c34ebf2] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Processors now have their own print stats flag Wed, 24 Jun 2020 19:37:32 GMT Thierry Delisle [29cb302] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) cfa stats now count number of migrations Tue, 23 Jun 2020 20:42:58 GMT Thierry Delisle [13c5e19] * libcfa/src/bits/random.hfa (added) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (added) * libcfa/src/concurrency/snzi.hfa (added) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) - Moved snzi and subqueues outside of ready_queue.cfa. - Added ... Fri, 19 Jun 2020 20:59:19 GMT Thierry Delisle [68f36f4] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added Idle Sleep stats and removed extra call to unsafe_remove Fri, 19 Jun 2020 19:49:43 GMT Thierry Delisle [64a7146] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/containers/stackLockFree.hfa (modified) Fixed idle sleep to no-longer use a spinlock, broke registration and ... Fri, 19 Jun 2020 15:22:32 GMT Thierry Delisle [04b5cef] * benchmark/readyQ/yield.cfa (modified) * benchmark/readyQ/yield.cpp (added) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/containers/stackLockFree.hfa (modified) Added BIAS option to ready_queue Added yield test for LibFibre ... Tue, 16 Jun 2020 16:53:58 GMT Thierry Delisle [8834751] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (added) Moved statistics to stats.cfa to combine ready Q stats and IO stats Fri, 12 Jun 2020 21:01:21 GMT Thierry Delisle [ff79d5e] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * tools/gdb/utils-gdb.py (modified) Fixed park unpark to support park as first step of main() [[Fixes #170]] Fri, 12 Jun 2020 17:49:17 GMT Thierry Delisle [9b1dcc2] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Changed scheduling API to adapt to non-Processors scheduling threads. Thu, 11 Jun 2020 22:47:27 GMT Thierry Delisle [b388ee81] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Changed ready RW-Lock to be a single global lock instead of per ... Wed, 10 Jun 2020 20:19:30 GMT Thierry Delisle [97392b69] * benchmark/creation/node_cor.js (modified) * benchmark/creation/rust_tokio_thrd.rs (added) * benchmark/ctxswitch/node_cor.js (modified) * benchmark/ctxswitch/rust_await.rs (added) * benchmark/ctxswitch/rust_tokio_thrd.rs (added) * benchmark/exclude (modified) * doc/bibliography/pl.bib (modified) * doc/papers/AMA/AMA-stix/ama/WileyNJD-v2.cls (modified) * doc/papers/concurrency/Paper.tex (modified) * doc/papers/concurrency/mail2 (modified) * doc/papers/concurrency/response2 (added) * driver/cc1.cc (modified) * driver/cfa.cc (modified) * examples/hashtable.cfa (added) * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/bitmanip.hfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/executor.cfa (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/heap.hfa (added) * libcfa/src/memory.cfa (added) * libcfa/src/memory.hfa (added) * libcfa/src/stdhdr/malloc.h (modified) * libcfa/src/stdhdr/sys/mman.h (added) * libcfa/src/stdhdr/sys/ucontext.h (deleted) * libcfa/src/stdlib.cfa (modified) * libcfa/src/stdlib.hfa (modified) * src/ControlStruct/ExceptTranslate.cc (modified) * src/ControlStruct/ExceptTranslate.h (modified) * src/Parser/parser.yy (modified) * src/Virtual/ExpandCasts.cc (modified) * tests/.expect/copyfile.txt (modified) * tests/.expect/smart-pointers.txt (added) * tests/.in/copyfile.txt (modified) * tests/copyfile.cfa (modified) * tests/exceptions/.expect/type-check.txt (added) * tests/exceptions/type-check.cfa (added) * tests/smart-pointers.cfa (added) Merge branch 'master' into relaxed_ready Wed, 27 May 2020 19:14:50 GMT Peter A. Buhr [ada0246d] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/heap.hfa (added) * libcfa/src/stdhdr/malloc.h (modified) * libcfa/src/stdhdr/sys/mman.h (added) * libcfa/src/stdhdr/sys/ucontext.h (deleted) * libcfa/src/stdlib.hfa (modified) create heap.hfa, use it in malloc.h, and cleanup includes with ... Fri, 22 May 2020 15:49:29 GMT Thierry Delisle [0e4df2e] * driver/cfa.cc (modified) * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/containers/stackLockFree.hfa (added) * libcfa/src/exception.c (modified) * libcfa/src/exception.h (modified) * libcfa/src/exception.hfa (modified) * libcfa/src/executor.cfa (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/stdlib.hfa (modified) * src/ControlStruct/ExceptTranslate.cc (modified) * src/ControlStruct/ExceptTranslate.h (modified) * src/main.cc (modified) * tests/errors/.expect/completeType.txt (modified) * tests/exceptions/.expect/defaults.txt (added) * tests/exceptions/conditional.cfa (modified) * tests/exceptions/data-except.cfa (modified) * tests/exceptions/defaults.cfa (added) * tests/exceptions/finally.cfa (modified) * tests/exceptions/interact.cfa (modified) * tests/exceptions/resume.cfa (modified) * tests/exceptions/terminate.cfa (modified) * tests/list/.expect/dlist-insert-remove.txt (modified) * tests/list/dlist-insert-remove.cfa (modified) Merge branch 'master' into relaxed_ready Thu, 21 May 2020 20:33:22 GMT Thierry Delisle [d47349b] * libcfa/src/concurrency/kernel.cfa (modified) Added a little bit more debug information for parking Tue, 12 May 2020 20:58:53 GMT Thierry Delisle [2f1cb37] * benchmark/io/readv.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Merge branch 'master' into relaxed_ready Tue, 12 May 2020 20:55:42 GMT Thierry Delisle [70ac8d0] * configure (modified) * configure.ac (modified) * doc/proposals/vtable.md (modified) * libcfa/Makefile.in (modified) * libcfa/configure (modified) * libcfa/configure.ac (modified) * libcfa/prelude/Makefile.am (modified) * libcfa/prelude/Makefile.in (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/exception.c (modified) * tests/exceptions/.expect/resume.txt (modified) * tests/exceptions/.expect/terminate.txt (modified) * tests/exceptions/data-except.cfa (modified) * tests/exceptions/resume.cfa (modified) * tests/exceptions/terminate.cfa (modified) * tools/build/push2dist.sh (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Tue, 12 May 2020 17:32:45 GMT Thierry Delisle [504a7dc] * libcfa/src/bits/debug.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Some fixes after the merge, compiles but still has livelocks Mon, 11 May 2020 17:53:29 GMT Thierry Delisle [6a490b2] * Jenkinsfile (modified) * benchmark/Makefile.am (modified) * benchmark/Makefile.in (modified) * benchmark/creation/cfa_gen.cfa (modified) * benchmark/ctxswitch/cfa_cor.cfa (modified) * benchmark/ctxswitch/cfa_gen.cfa (modified) * benchmark/io/readv.cfa (added) * benchmark/size/size.cfa (added) * configure (modified) * configure.ac (modified) * doc/bibliography/pl.bib (modified) * doc/papers/concurrency/Paper.tex (modified) * doc/papers/concurrency/examples/DatingServiceThread.cfa (added) * doc/papers/concurrency/examples/Fib.js (added) * doc/papers/concurrency/examples/Fib.py (modified) * doc/papers/concurrency/examples/Fib2.c (modified) * doc/papers/concurrency/examples/Fib2.py (modified) * doc/papers/concurrency/examples/Fib3.c (modified) * doc/papers/concurrency/examples/FibRefactor.py (modified) * doc/papers/concurrency/examples/Format.c (modified) * doc/papers/concurrency/examples/Format.cc (modified) * doc/papers/concurrency/examples/Format.cfa (modified) * doc/papers/concurrency/examples/Format.data (modified) * doc/papers/concurrency/examples/Format.js (added) * doc/papers/concurrency/examples/Format.py (modified) * doc/papers/concurrency/examples/Format1.c (modified) * doc/papers/concurrency/examples/PingPong.c (modified) * doc/papers/concurrency/examples/Pingpong.py (modified) * doc/papers/concurrency/examples/ProdCons.py (modified) * doc/papers/concurrency/examples/RWMonitorEXT.cfa (moved) * doc/papers/concurrency/examples/RWMonitorINT.cfa (added) * doc/papers/concurrency/examples/Refactor.py (modified) * doc/papers/concurrency/examples/channels.go (added) * doc/papers/concurrency/examples/channels.rs (added) * doc/papers/concurrency/examples/future.rs (added) * doc/papers/concurrency/figures/FullCoroutinePhases.fig (modified) * doc/papers/concurrency/figures/RunTimeStructure.fig (modified) * doc/papers/concurrency/mail2 (modified) * doc/papers/concurrency/response (added) * doc/proposals/vtable.md (modified) * doc/theses/andrew_beach_MMath/.gitignore (added) * doc/theses/andrew_beach_MMath/Makefile (added) * doc/theses/andrew_beach_MMath/cfalab.sty (added) * doc/theses/andrew_beach_MMath/thesis-frontpgs.tex (added) * doc/theses/andrew_beach_MMath/thesis.bib (added) * doc/theses/andrew_beach_MMath/thesis.tex (added) * doc/theses/andrew_beach_MMath/unwinding.tex (added) * doc/theses/andrew_beach_MMath/uw-ethesis.cls (added) * doc/theses/thierry_delisle_PhD/.gitignore (modified) * doc/theses/thierry_delisle_PhD/code/bts.cpp (added) * doc/theses/thierry_delisle_PhD/comp_II/Makefile (modified) * doc/theses/thierry_delisle_PhD/comp_II/comp_II.tex (modified) * doc/theses/thierry_delisle_PhD/comp_II/comp_II_PAB.tex (added) * doc/theses/thierry_delisle_PhD/comp_II/img/base.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/empty.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/emptybit.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/emptytls.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/emptytree.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/resize.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/system.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/local.bib (modified) * doc/user/user.tex (modified) * driver/cfa.cc (modified) * examples/io/filereader.c (added) * examples/io/simple/client.c (added) * examples/io/simple/server.c (added) * examples/io/simple/server.cfa (added) * examples/io_uring.c (added) * examples/io_uring.txt (added) * libcfa/Makefile.in (modified) * libcfa/configure (modified) * libcfa/configure.ac (modified) * libcfa/prelude/Makefile.am (modified) * libcfa/prelude/Makefile.in (modified) * libcfa/prelude/builtins.c (modified) * libcfa/prelude/defines.hfa.in (added) * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/bitmanip.hfa (added) * libcfa/src/bits/containers.hfa (modified) * libcfa/src/bits/debug.hfa (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/bits/signal.hfa (modified) * libcfa/src/concurrency/CtxSwitch-arm.S (modified) * libcfa/src/concurrency/CtxSwitch-i386.S (modified) * libcfa/src/concurrency/CtxSwitch-x86_64.S (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/asyncio.hfa (added) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (added) * libcfa/src/concurrency/iofwd.hfa (added) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/monitor.hfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/mutex.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * libcfa/src/containers/list.hfa (added) * libcfa/src/exception.c (modified) * libcfa/src/exception.h (modified) * libcfa/src/exception.hfa (added) * libcfa/src/heap.cfa (modified) * libcfa/src/interpose.cfa (modified) * libcfa/src/iostream.cfa (modified) * libcfa/src/startup.cfa (modified) * libcfa/src/stdhdr/malloc.h (modified) * libcfa/src/stdlib.cfa (modified) * libcfa/src/stdlib.hfa (modified) * src/AST/Convert.cpp (modified) * src/AST/Decl.hpp (modified) * src/AST/Fwd.hpp (modified) * src/AST/Pass.hpp (modified) * src/AST/Pass.impl.hpp (modified) * src/AST/Print.cpp (modified) * src/AST/Stmt.hpp (modified) * src/AST/Visitor.hpp (modified) * src/Common/PassVisitor.h (modified) * src/Common/PassVisitor.impl.h (modified) * src/CompilationState.cc (modified) * src/CompilationState.h (modified) * src/Concurrency/Keywords.cc (modified) * src/Concurrency/Waitfor.cc (modified) * src/ControlStruct/ExceptTranslate.cc (modified) * src/Parser/ParseNode.h (modified) * src/Parser/StatementNode.cc (modified) * src/Parser/TypeData.cc (modified) * src/Parser/lex.ll (modified) * src/Parser/parser.yy (modified) * src/ResolvExpr/AlternativeFinder.cc (modified) * src/ResolvExpr/Resolver.cc (modified) * src/ResolvExpr/TypeEnvironment.cc (modified) * src/SynTree/Declaration.h (modified) * src/SynTree/LinkageSpec.cc (modified) * src/SynTree/LinkageSpec.h (modified) * src/SynTree/Mutator.h (modified) * src/SynTree/Statement.cc (modified) * src/SynTree/Statement.h (modified) * src/SynTree/SynTree.h (modified) * src/SynTree/Visitor.h (modified) * src/main.cc (modified) * tests/.expect/alloc-ERROR.txt (modified) * tests/.expect/alloc.txt (modified) * tests/.expect/bitmanip1.x64.txt (added) * tests/.expect/bitmanip1.x86.txt (added) * tests/.expect/bitmanip2.x64.txt (added) * tests/.expect/bitmanip2.x86.txt (added) * tests/.expect/bitmanip3.x64.txt (added) * tests/.expect/bitmanip3.x86.txt (added) * tests/Makefile.am (modified) * tests/Makefile.in (modified) * tests/alloc.cfa (modified) * tests/bitmanip1.cfa (added) * tests/bitmanip2.cfa (added) * tests/bitmanip3.cfa (added) * tests/concurrent/.expect/monitor.txt (modified) * tests/concurrent/.expect/suspend_then.txt (added) * tests/concurrent/coroutineYield.cfa (modified) * tests/concurrent/monitor.cfa (modified) * tests/concurrent/multi-monitor.cfa (modified) * tests/concurrent/park/.expect/contention.txt (added) * tests/concurrent/park/.expect/force_preempt.txt (added) * tests/concurrent/park/contention.cfa (added) * tests/concurrent/park/force_preempt.cfa (added) * tests/concurrent/signal/block.cfa (modified) * tests/concurrent/suspend_then.cfa (moved) * tests/coroutine/.expect/fmtLines.txt (modified) * tests/coroutine/.in/fmtLines.txt (modified) * tests/coroutine/cntparens.cfa (modified) * tests/coroutine/devicedriver.cfa (modified) * tests/coroutine/fibonacci.cfa (modified) * tests/coroutine/fibonacci_1.cfa (modified) * tests/coroutine/fmtLines.cfa (modified) * tests/coroutine/raii.cfa (modified) * tests/coroutine/runningTotal.cfa (modified) * tests/coroutine/suspend_then.cfa (modified) * tests/errors/.expect/completeType.txt (modified) * tests/errors/suspend.cfa (added) * tests/exceptions/.expect/conditional.txt (added) * tests/exceptions/.expect/data-except.txt (added) * tests/exceptions/.expect/except-0.txt (deleted) * tests/exceptions/.expect/except-1.txt (deleted) * tests/exceptions/.expect/except-2.txt (deleted) * tests/exceptions/.expect/except-3.txt (deleted) * tests/exceptions/.expect/finally.txt (added) * tests/exceptions/.expect/interact.txt (added) * tests/exceptions/.expect/resume.txt (added) * tests/exceptions/.expect/terminate.txt (added) * tests/exceptions/conditional.cfa (added) * tests/exceptions/data-except.cfa (added) * tests/exceptions/except-0.cfa (deleted) * tests/exceptions/except-1.cfa (deleted) * tests/exceptions/except-2.cfa (deleted) * tests/exceptions/except-3.cfa (deleted) * tests/exceptions/except-io.hfa (added) * tests/exceptions/except-mac.hfa (deleted) * tests/exceptions/finally.cfa (added) * tests/exceptions/interact.cfa (added) * tests/exceptions/resume.cfa (added) * tests/exceptions/terminate.cfa (added) * tests/generator/.expect/fibonacci.txt (added) * tests/generator/.expect/fmtLines.txt (added) * tests/generator/.expect/suspend_then.txt (added) * tests/generator/.in/fmtLines.txt (added) * tests/generator/fibonacci.cfa (added) * tests/generator/fmtLines.cfa (added) * tests/generator/suspend_then.cfa (added) * tests/list/.expect/dlist-insert-remove.txt (added) * tests/list/dlist-insert-remove.cfa (added) * tests/manipulatorsOutput1.cfa (modified) * tests/manipulatorsOutput3.cfa (added) * tests/pybin/settings.py (modified) * tests/pybin/test_run.py (modified) * tests/pybin/tools.py (modified) * tests/test.py (modified) * tests/vector.cfa (modified) * tools/auto-complete.md (added) * tools/build/push2dist.sh (modified) * tools/cfa.nanorc (modified) * tools/gdb/.gdbinit (added) * tools/gdb/README (added) * tools/gdb/utils-gdb.gdb (added) * tools/gdb/utils-gdb.py (added) * tools/langserver/cfa-ls (added) * tools/langserver/src/json.hpp (added) * tools/langserver/src/log.cpp (added) * tools/langserver/src/log.hpp (added) * tools/langserver/src/main.cpp (added) * tools/langserver/src/server.cpp (added) * tools/langserver/src/server.hpp (added) * tools/vscode/uwaterloo.cforall-0.1.0/client/main.js (added) * tools/vscode/uwaterloo.cforall-0.1.0/images/icon.png (added) * tools/vscode/uwaterloo.cforall-0.1.0/package.json (modified) * tools/vscode/uwaterloo.cforall-0.1.0/server/out/server (added) * tools/vscode/uwaterloo.cforall-0.1.0/syntaxes/cfa.tmLanguage.json (added) Merge branch 'master' into relaxed_ready Mon, 11 May 2020 17:31:00 GMT Thierry Delisle [a7b486b] * libcfa/src/concurrency/kernel.cfa (modified) Added verify to __run_thread, which would inexplicably have failed in ...