c11tester.git
2 years agorename mypthread.h to pthread.h
weiyu [Fri, 14 Jun 2019 17:56:48 +0000 (10:56 -0700)]
rename mypthread.h to pthread.h

2 years agoMerge branch 'new_fuzzer' of /home/git/random-fuzzer into branch-weiyu
weiyu [Fri, 14 Jun 2019 17:48:12 +0000 (10:48 -0700)]
Merge branch 'new_fuzzer' of /home/git/random-fuzzer into branch-weiyu

2 years agonew cyclegraph
bdemsky [Thu, 13 Jun 2019 02:40:25 +0000 (19:40 -0700)]
new cyclegraph

2 years agoMerge branch 'new_fuzzer' into tmp
bdemsky [Wed, 12 Jun 2019 22:41:49 +0000 (15:41 -0700)]
Merge branch 'new_fuzzer' into tmp

2 years agoDon't do complete checks until we choose store to read from
Brian Demsky [Wed, 12 Jun 2019 22:32:50 +0000 (18:32 -0400)]
Don't do complete checks until we choose store to read from

2 years agopartial edits
bdemsky [Wed, 12 Jun 2019 22:30:30 +0000 (15:30 -0700)]
partial edits

2 years agoRemove backedges from cyclegraph
bdemsky [Wed, 12 Jun 2019 20:38:39 +0000 (13:38 -0700)]
Remove backedges from cyclegraph

2 years agofix tabbing comment issue
bdemsky [Wed, 12 Jun 2019 20:25:50 +0000 (13:25 -0700)]
fix tabbing comment issue

2 years agouncrustify options
bdemsky [Wed, 12 Jun 2019 20:06:40 +0000 (13:06 -0700)]
uncrustify options

2 years agoreorder fields to save space
bdemsky [Wed, 12 Jun 2019 20:02:23 +0000 (13:02 -0700)]
reorder fields to save space

2 years agofix tabbing
bdemsky [Tue, 11 Jun 2019 04:39:38 +0000 (21:39 -0700)]
fix tabbing

2 years agofix tabbing
bdemsky [Tue, 11 Jun 2019 04:37:55 +0000 (21:37 -0700)]
fix tabbing

2 years agoremove extra cyclegraph calls
bdemsky [Tue, 11 Jun 2019 04:21:19 +0000 (21:21 -0700)]
remove extra cyclegraph calls

2 years agoFix RMW bug
bdemsky [Tue, 11 Jun 2019 03:43:00 +0000 (20:43 -0700)]
Fix RMW bug

2 years agoMerge branch 'branch-weiyu' of /home/git/random-fuzzer into branch-weiyu
weiyu [Mon, 10 Jun 2019 18:07:54 +0000 (11:07 -0700)]
Merge branch 'branch-weiyu' of /home/git/random-fuzzer into branch-weiyu

2 years agoadd subdirectory for tests
weiyu [Mon, 10 Jun 2019 18:06:47 +0000 (11:06 -0700)]
add subdirectory for tests

2 years agoadd uncrustify option
bdemsky [Thu, 6 Jun 2019 05:32:30 +0000 (22:32 -0700)]
add uncrustify option

2 years agorefactor choices into own class
bdemsky [Thu, 6 Jun 2019 05:28:53 +0000 (22:28 -0700)]
refactor choices into own class

2 years agomake some changes with hacks
bdemsky [Wed, 5 Jun 2019 06:01:15 +0000 (23:01 -0700)]
make some changes with hacks

2 years agoMore fuzzing changes
bdemsky [Tue, 4 Jun 2019 22:35:47 +0000 (15:35 -0700)]
More fuzzing changes

2 years agoremove another field
bdemsky [Tue, 4 Jun 2019 20:05:00 +0000 (13:05 -0700)]
remove another field

2 years agoRevert "delete plugins"
bdemsky [Tue, 4 Jun 2019 19:52:07 +0000 (12:52 -0700)]
Revert "delete plugins"

This reverts commit 6535eebefaea5a67d17fd074d2b446a51df7c6a4.

2 years agoRevert "remove plugins"
bdemsky [Tue, 4 Jun 2019 19:51:19 +0000 (12:51 -0700)]
Revert "remove plugins"

This reverts commit e92e6791f399195438d687925a7e6020047b4c60.

2 years agotowards fuzzing only
bdemsky [Tue, 4 Jun 2019 06:20:59 +0000 (23:20 -0700)]
towards fuzzing only

2 years agoremove old release sequences
bdemsky [Tue, 4 Jun 2019 04:53:31 +0000 (21:53 -0700)]
remove old release sequences

2 years agoRemove promises
bdemsky [Sat, 1 Jun 2019 06:19:23 +0000 (23:19 -0700)]
Remove promises

2 years agochange snapshot mode
weiyu [Wed, 29 May 2019 00:07:13 +0000 (17:07 -0700)]
change snapshot mode

2 years agoclean up
weiyu [Wed, 29 May 2019 00:02:31 +0000 (17:02 -0700)]
clean up

2 years agoadd futex.o as a recipe for libmodel
weiyu [Wed, 29 May 2019 00:00:31 +0000 (17:00 -0700)]
add futex.o as a recipe for libmodel

2 years agoimplement futex.cc
weiyu [Tue, 28 May 2019 23:56:49 +0000 (16:56 -0700)]
implement futex.cc

2 years agofix the case where no waiter is waiting
weiyu [Tue, 28 May 2019 23:50:58 +0000 (16:50 -0700)]
fix the case where no waiter is waiting

2 years agoadd NOOP to action type
weiyu [Tue, 28 May 2019 23:50:06 +0000 (16:50 -0700)]
add NOOP to action type

2 years agochange the namespace of mutex from std to cdsc
weiyu [Tue, 28 May 2019 23:48:28 +0000 (16:48 -0700)]
change the namespace of mutex from std to cdsc

3 years agoadd support for condition variable
weiyu [Fri, 1 Mar 2019 23:03:40 +0000 (15:03 -0800)]
add support for condition variable

3 years agoclean up unnecessary member functions
weiyu [Fri, 15 Feb 2019 01:50:20 +0000 (17:50 -0800)]
clean up unnecessary member functions

3 years agomove pthread_map and mutex_map inside of execution.h
weiyu [Fri, 15 Feb 2019 01:42:08 +0000 (17:42 -0800)]
move pthread_map and mutex_map inside of execution.h

3 years agopthread_join is able to return values
weiyu [Fri, 1 Feb 2019 20:35:42 +0000 (12:35 -0800)]
pthread_join is able to return values

3 years agoadd support for pthread_mutex
weiyu [Thu, 24 Jan 2019 21:31:35 +0000 (13:31 -0800)]
add support for pthread_mutex

3 years agopthread join seems to be working
weiyu [Tue, 22 Jan 2019 21:58:14 +0000 (13:58 -0800)]
pthread join seems to be working

3 years agopthread_create is working now
weiyu [Tue, 22 Jan 2019 19:22:57 +0000 (11:22 -0800)]
pthread_create is working now

3 years agoadd support for pthread_create (in progress)
weiyu [Fri, 18 Jan 2019 03:06:30 +0000 (19:06 -0800)]
add support for pthread_create (in progress)

3 years agoadd a new thread constructor for pthread
weiyu [Thu, 17 Jan 2019 21:17:01 +0000 (13:17 -0800)]
add a new thread constructor for pthread

3 years agotry to add support for pthread_create/pthread_join
weiyu [Wed, 16 Jan 2019 20:43:42 +0000 (12:43 -0800)]
try to add support for pthread_create/pthread_join

3 years agoremove two unnecessary files
weiyu [Tue, 8 Jan 2019 19:52:17 +0000 (11:52 -0800)]
remove two unnecessary files

3 years agochange cds checker to accomdate llvm pass
weiyu [Tue, 8 Jan 2019 19:50:41 +0000 (11:50 -0800)]
change cds checker to accomdate llvm pass

3 years agoimprove randomization
weiyu [Fri, 9 Nov 2018 00:08:24 +0000 (16:08 -0800)]
improve randomization

3 years agodelete plugins
weiyu [Fri, 26 Oct 2018 01:15:57 +0000 (18:15 -0700)]
delete plugins

3 years agoremove plugins
weiyu [Fri, 26 Oct 2018 01:15:10 +0000 (18:15 -0700)]
remove plugins

3 years agoRemove SC Analysis
bdemsky [Tue, 16 Oct 2018 21:51:59 +0000 (14:51 -0700)]
Remove SC Analysis

4 years agoFix snapshot code
bdemsky [Fri, 13 Oct 2017 05:29:13 +0000 (22:29 -0700)]
Fix snapshot code

5 years agoWork around changes in newer versions of glibc
bdemsky [Thu, 24 Nov 2016 20:40:03 +0000 (12:40 -0800)]
Work around changes in newer versions of glibc

6 years agobug in fence support fixed
bdemsky [Wed, 24 Feb 2016 00:07:39 +0000 (16:07 -0800)]
bug in fence support fixed

6 years agoIncrease size of bootstrap bytes as some Linux distributions need more space.
bdemsky [Thu, 17 Dec 2015 08:37:52 +0000 (00:37 -0800)]
Increase size of bootstrap bytes as some Linux distributions need more space.

6 years agoedits
Peizhao Ou [Wed, 9 Sep 2015 18:47:28 +0000 (11:47 -0700)]
edits

6 years agoAdd SCFence analysis
bdemsky [Tue, 4 Aug 2015 18:22:44 +0000 (11:22 -0700)]
Add SCFence analysis

6 years agobug fix for atomic adds/subtracts on pointers
bdemsky [Mon, 22 Jun 2015 18:47:36 +0000 (11:47 -0700)]
bug fix for atomic adds/subtracts on pointers

7 years agomove thread stack to thread allocator
bdemsky [Thu, 9 Apr 2015 06:03:47 +0000 (23:03 -0700)]
move thread stack to thread allocator

7 years agoSC Reads can read from things mo'd before the last sc write, they just can't happen...
bdemsky [Fri, 18 Jul 2014 21:59:59 +0000 (14:59 -0700)]
SC Reads can read from things mo'd before the last sc write, they just can't happen before it

8 years agoBug fixes from running Coverity
bdemsky [Tue, 6 May 2014 20:13:36 +0000 (16:13 -0400)]
Bug fixes from running Coverity

8 years agofix signed/unsigned warning
bdemsky [Tue, 6 May 2014 17:25:57 +0000 (13:25 -0400)]
fix signed/unsigned warning

8 years agobug fix with missing coherence condition for promises
bdemsky [Wed, 16 Apr 2014 22:01:00 +0000 (15:01 -0700)]
bug fix with missing coherence condition for promises

8 years agoBug fix for broken treatment of promises + coherence based pruning to regain pruning...
bdemsky [Sat, 25 Jan 2014 22:11:22 +0000 (14:11 -0800)]
Bug fix for broken treatment of promises + coherence based pruning to regain pruning lost by bug fix

8 years agoSupport for -x option
bdemsky [Sat, 25 Jan 2014 22:07:08 +0000 (14:07 -0800)]
Support for -x option

8 years agoAnnotation Support
bdemsky [Sat, 25 Jan 2014 22:04:13 +0000 (14:04 -0800)]
Annotation Support

8 years agoMerge remote-tracking branch 'origin/master'
Brian Norris [Wed, 4 Sep 2013 02:19:25 +0000 (19:19 -0700)]
Merge remote-tracking branch 'origin/master'

8 years agorun.sh: support running from a different directory
Brian Norris [Wed, 4 Sep 2013 02:03:44 +0000 (19:03 -0700)]
run.sh: support running from a different directory

8 years agoREADME.md: use HTML URL, not PHP
Brian Norris [Thu, 15 Aug 2013 19:04:59 +0000 (12:04 -0700)]
README.md: use HTML URL, not PHP

8 years agoREADME.md: move copyright down
Brian Norris [Wed, 14 Aug 2013 17:02:36 +0000 (10:02 -0700)]
README.md: move copyright down

8 years agoREADME.md: add detail for benchmarks
Brian Norris [Wed, 14 Aug 2013 17:01:08 +0000 (10:01 -0700)]
README.md: add detail for benchmarks

8 years agoREADME.md: improve wording
Brian Norris [Wed, 14 Aug 2013 16:59:03 +0000 (09:59 -0700)]
README.md: improve wording

8 years agoREADME.md: add more fairness notes
Brian Norris [Wed, 14 Aug 2013 06:29:20 +0000 (23:29 -0700)]
README.md: add more fairness notes

8 years agoMakefile: add README.pdf target
Brian Norris [Wed, 14 Aug 2013 06:24:13 +0000 (23:24 -0700)]
Makefile: add README.pdf target

Using pandoc:

  http://johnmacfarlane.net/pandoc/

8 years agoREADME.md: remove <pre></pre> tags
Brian Norris [Wed, 14 Aug 2013 05:38:39 +0000 (22:38 -0700)]
README.md: remove <pre></pre> tags

It's better to just use pure Markdown.

8 years agothreads: kill clang warnings about struct/class Thread
Brian Norris [Wed, 14 Aug 2013 05:16:20 +0000 (22:16 -0700)]
threads: kill clang warnings about struct/class Thread

We just need an opaque pointer for C, so we can retain the type safety
for C++ by conditionally compiling a '__thread_identifier' type as
'class Thread' for C++.

The warning:

  clang++ -MMD -MF .threads.o.d -fPIC -c threads.cc -Wall -g -O3 -Iinclude -I.
  In file included from schedule.cc:4:
  ./threads-model.h:41:1: warning: 'Thread' defined as a class here but previously declared as a struct [-Wmismatched-tags]
  class Thread {
  ^
  include/threads.h:9:1: note: did you mean class here?
  struct Thread; /* actually, class; but this is safe */
  ^~~~~~
  class

8 years agomalloc: modify compiler warning workarounds
Brian Norris [Wed, 14 Aug 2013 05:05:23 +0000 (22:05 -0700)]
malloc: modify compiler warning workarounds

clang will complain when (in a function like this) we try to silence
"unused" warnings with a self-assignment. It's equivalently useless to
just cast to (void), and I think it will still silence the warning it
was originally trying to silence.

8 years agoimpatomic: silence more clang warnings
Brian Norris [Wed, 14 Aug 2013 04:51:56 +0000 (21:51 -0700)]
impatomic: silence more clang warnings

These 'return' values produce unused value warnings when the value
returned by _ATOMIC_STORE_, _ATOMIC_INIT_, and _ATOMIC_MODIFY_ aren't
used. Silence these warnings (but leave the ones for _ATOMIC_LOAD_)
because we expect that the result of RMW's or stores may rightly be
discarded in many cases.

8 years agotest: silence some unused-value warnings
Brian Norris [Wed, 14 Aug 2013 04:49:55 +0000 (21:49 -0700)]
test: silence some unused-value warnings

clang gives some warnings for unused values, like the following:

  clang -MMD -MF ./.rmw2prog.o.d -o rmw2prog.o rmw2prog.c -Wall -g -O3 -I.. -I../include -L.. -lmodel
  nestedpromise.c:14:2: warning: expression result unused [-Wunused-value]
          atomic_load_explicit(&z, memory_order_relaxed); // this is only for schedule control
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  ../include/impatomic.h:2901:46: note: expanded from:
  #define atomic_load_explicit( __a__, __x__ ) \
                                               ^
  ../include/impatomic.h:85:17: note: expanded from:
                  __r__; })
                  ^~~~~
  1 warning generated.

8 years agoREADME.md: have to include our headers
Brian Norris [Wed, 14 Aug 2013 04:16:34 +0000 (21:16 -0700)]
README.md: have to include our headers

8 years agoREADME.md: reverse store/load
Brian Norris [Wed, 14 Aug 2013 04:13:14 +0000 (21:13 -0700)]
README.md: reverse store/load

8 years agoREADME.md: add supported API section
Brian Norris [Wed, 14 Aug 2013 04:09:30 +0000 (21:09 -0700)]
README.md: add supported API section

8 years agoREADME.md: add End of Execution Summary section
Brian Norris [Wed, 14 Aug 2013 01:00:56 +0000 (18:00 -0700)]
README.md: add End of Execution Summary section

8 years agoREADME.md: reporting multiple data races for the same access?
Brian Norris [Wed, 14 Aug 2013 00:33:22 +0000 (17:33 -0700)]
README.md: reporting multiple data races for the same access?

8 years agomodel: only print 'Total nodes' for verbose printing
Brian Norris [Wed, 14 Aug 2013 00:32:43 +0000 (17:32 -0700)]
model: only print 'Total nodes' for verbose printing

Average users don't need to see this.

8 years agoREADME.md: reformat
Brian Norris [Wed, 14 Aug 2013 00:13:55 +0000 (17:13 -0700)]
README.md: reformat

8 years agoREADME.md: add linux locks example
Brian Norris [Wed, 14 Aug 2013 00:12:06 +0000 (17:12 -0700)]
README.md: add linux locks example

8 years agoREADME.md: update title
Brian Norris [Wed, 14 Aug 2013 00:08:34 +0000 (17:08 -0700)]
README.md: update title

8 years agoREADME.md: point non-git users to gitweb
Brian Norris [Wed, 14 Aug 2013 00:04:24 +0000 (17:04 -0700)]
README.md: point non-git users to gitweb

8 years agoREADME.md: push URLs down to See Also section
Brian Norris [Tue, 13 Aug 2013 23:50:17 +0000 (16:50 -0700)]
README.md: push URLs down to See Also section

8 years agoREADME.md: add extra blank lines
Brian Norris [Tue, 13 Aug 2013 23:50:03 +0000 (16:50 -0700)]
README.md: add extra blank lines

8 years agoREADME.md: update much of the README
Brian Norris [Tue, 13 Aug 2013 23:43:08 +0000 (16:43 -0700)]
README.md: update much of the README

Integrate some info from the website and the OOPSLA artifact submission,
and improve the whole thing to be a single reference document.

8 years agomain: suggest thrd_yield() for -y fairness
Brian Norris [Tue, 13 Aug 2013 22:42:47 +0000 (15:42 -0700)]
main: suggest thrd_yield() for -y fairness

8 years agorun.sh: set Mac OSX DYLD_LIBRARY_PATH
Brian Norris [Tue, 13 Aug 2013 22:34:22 +0000 (15:34 -0700)]
run.sh: set Mac OSX DYLD_LIBRARY_PATH

DYLD_LIBRARY_PATH is the Mac OSX equivalent of Unix LD_LIBRARY_PATH.

8 years agodelete README symlink
Brian Norris [Tue, 13 Aug 2013 22:11:12 +0000 (15:11 -0700)]
delete README symlink

Readers should just look at README.md, or the generated README.html.

8 years agoLICENSE: add newline at end of file
Brian Norris [Tue, 13 Aug 2013 22:09:36 +0000 (15:09 -0700)]
LICENSE: add newline at end of file

8 years agotest: insanesync: consolidate lines
Brian Norris [Wed, 17 Jul 2013 02:31:20 +0000 (19:31 -0700)]
test: insanesync: consolidate lines

8 years agotest: insanesync: remove unnecessary casting
Brian Norris [Wed, 17 Jul 2013 02:28:35 +0000 (19:28 -0700)]
test: insanesync: remove unnecessary casting

8 years agotest: insanesync: convert to C++
Brian Norris [Wed, 17 Jul 2013 02:22:52 +0000 (19:22 -0700)]
test: insanesync: convert to C++

The syntax is clearer this way, and I can make it more consistent with
the other satisfaction cycle examples I wrote.

8 years agotest: addr-satcycle: add new address-based sat. cycle example
Brian Norris [Tue, 16 Jul 2013 20:22:43 +0000 (13:22 -0700)]
test: addr-satcycle: add new address-based sat. cycle example

See the comments and assertion in the program for the description.

8 years agorun.sh: don't silently ignore a non-executable file argument
Brian Norris [Wed, 10 Jul 2013 01:44:19 +0000 (18:44 -0700)]
run.sh: don't silently ignore a non-executable file argument

If we use a file which exists but is not executable as an argument to
run.sh, run.sh will silently ignore it. This is wrong.

Instead, just check for existence of the file (or directory), and error
out with a "Permission denied" message later, when we try to run it.

8 years agotest: mo-satcycle: add new MO satisfaction cycle example
Brian Norris [Wed, 10 Jul 2013 01:33:33 +0000 (18:33 -0700)]
test: mo-satcycle: add new MO satisfaction cycle example

See the comments at the top of the file.