Hahn: A Coq library
CSL and RGSep soundness proofs
LLVM based cfrontend for verification tools
ARM8 weak memory model
Mirror of official llvm git repository located at http://llvm.org/git/llvm. Updated every five minutes.
issue closedMPI-SWS/genmc
Avoid blocked executions when reading with __VERIFIER_assume
The possibility of reading from values that immediately result in blocked executions results in an exponential number of blocked executions.
In case a __VERIFIER_assume condition only depends on one remaining atomic read, and between the atomic read and the __VERIFIER_assume no other memory operations are generated, we do not need to explore the graphs in which the atomic read results in a blocked execution.
The code below should result in 1 execution but results in 2^NTHREADS many executions (of which all but 1 are blocked).
#include <pthread.h>
#include <assert.h>
#include <stdatomic.h>
#ifndef NTHREADS
#define NTHREADS 3
#endif
#include <stdbool.h>
#include <stdint.h>
#include <stdio.h>
#include <genmc.h>
struct task {
atomic_bool run_worker;
} TASK[NTHREADS];
void *run(void * task_v) {
struct task *task = task_v;
__VERIFIER_assume(task->run_worker);
return 0;
}
int main()
{
pthread_t t[NTHREADS];
for (size_t i = 0; i < NTHREADS; i++)
{
TASK[i].run_worker = false;
pthread_create(&t[i], 0, run, &TASK[i]);
TASK[i].run_worker = true;
}
for (uintptr_t i = 0; i < NTHREADS; i++)
pthread_join(t[i], NULL);
return 0;
}
closed time in 20 days
JonasOberhauserissue commentMPI-SWS/genmc
Avoid blocked executions when reading with __VERIFIER_assume
Thanks again for the suggestion, Jonas. GenMC v0.6 does something similar for assume statements.
comment created time in 20 days
issue closedMPI-SWS/genmc
Is a nop in C, but segfaults in GenMC
closed time in 20 days
JonasOberhauserissue closedMPI-SWS/genmc
malloc + pthread_mutex_init does not seem to work
#include <stdio.h>
#include <pthread.h>
#include <stdlib.h>
typedef struct {
pthread_mutex_t m;
} lock;
int main(void)
{
lock *t = malloc(sizeof(lock));
pthread_mutex_init(&t->m, NULL);
pthread_mutex_lock(&t->m);
return 0;
}
Considered access to uninitialized memory
closed time in 20 days
JonasOberhauserissue commentMPI-SWS/genmc
malloc + pthread_mutex_init does not seem to work
This is fixed in v0.6.
comment created time in 20 days
push eventMPI-SWS/genmc
commit sha 1142c61028eea365c01a2d370210b6350ce2452f
Delete unused script
push time in 20 days
push eventMPI-SWS/genmc
commit sha 73de7623d6a3b38d8e1886e4962d9bbedf3b6ad8
Delete tmp file
push time in 20 days
push eventMPI-SWS/genmc
commit sha 364e02afa1dec0e5c9fbedca6a2306d0ed5f1abf
Release GenMC v0.6 Signed-off-by: Michalis Kokologiannakis <[email protected]>
push time in 20 days
push eventJonathanMace/xtrace-cpp
commit sha 19a3136f7f1fabe8b8856322c2a3dc2b3939ef8b
Changes
commit sha 52b8b3a8643a96f6ed450a298610d1d84eca3279
Add flatbuf reporting to xtraceserver
push time in a month
push eventJonathanMace/xtrace-cpp
commit sha 9ea894b8e1f28c2ebd1d000f25e7b29609486f54
Quick tweak of main
push time in a month
push eventJonathanMace/xtrace-cpp
commit sha 9ecd2e5bf87f2d20e88aaa3c7241531610e3aa33
Fix protobuf include in build script
push time in a month
push eventsnu-sf/promising-coq
commit sha a2dc5960a2debdc630c1cdc319f87c0986c0c584
Remove travis
push time in 2 months
push eventsnu-sf/promising-coq
commit sha 54907b5e78857b16002597404e617148698ddaab
Remove warnings regarding hints
commit sha 3cf6b675c353f0da70591d03dde4ff206bde8535
Remove more warnings
push time in 2 months
startedvafeiadis/cslsound
started time in 2 months
startedvafeiadis/cslsound
started time in 2 months
startedvafeiadis/hahn
started time in 3 months