Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Robin Morisset

dblp:45/8730 · DBLP profile ↗
← Back
5ranked-venue papers
2as first author
0since 2021 · last 2017
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 5 · 2 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Concurrent programming · 53% Compilers and program optimization · 35% Software testing · 12%

Topics — the 8 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Concurrent programming › memory models › weak memory models
c11 memory model
0.422015
Common Compiler Optimisations are Invalid in the C11 Memory Model and what we can do about it · POPL 2015
Compiler testing via a theory of sound optimisations in the C11/C++11 memory model · PLDI 2013
Concurrent programming
memory models
0.422015
Common Compiler Optimisations are Invalid in the C11 Memory Model and what we can do about it · POPL 2015
Compiler testing via a theory of sound optimisations in the C11/C++11 memory model · PLDI 2013
Compilers and program optimization
compiler correctness
0.212015
Common Compiler Optimisations are Invalid in the C11 Memory Model and what we can do about it · POPL 2015
Compilers and program optimization
compiler optimization
0.212015
Common Compiler Optimisations are Invalid in the C11 Memory Model and what we can do about it · POPL 2015
Compilers and program optimization › program transformation
source-to-source transformation
0.212015
Common Compiler Optimisations are Invalid in the C11 Memory Model and what we can do about it · POPL 2015
Concurrent programming › memory models
weak memory models
0.212015
Common Compiler Optimisations are Invalid in the C11 Memory Model and what we can do about it · POPL 2015
Software testing
compiler testing
0.212013
Compiler testing via a theory of sound optimisations in the C11/C++11 memory model · PLDI 2013
Software testing
differential testing
0.012013
Compiler testing via a theory of sound optimisations in the C11/C++11 memory model · PLDI 2013

Methods — techniques the papers use, named apart from their topics

coq proofs · 0.2memory trace comparison · 0.2differential testing · 0.2
YearPublicationVenuePosition
2017 Partially redundant fence elimination for x86, ARM, and power processors
Robin Morisset, Francesco Zappa Nardelli
CC1
2015 Common Compiler Optimisations are Invalid in the C11 Memory Model and what we can do about it
abstract
We show that the weak memory model introduced by the 2011 C and C++ standards does not permit many common source-to-source program transformations (such as expression linearisation and "roach motel" reorderings) that modern compilers perform and that are deemed to be correct. As such it cannot be used to define the semantics of intermediate languages of compilers, as, for instance, LLVM aimed to. We consider a number of possible local fixes, some strengthening and some weakening the model. We evaluate the proposed fixes by determining which program transformations are valid with respect to each of the patched models. We provide formal Coq proofs of their correctness or counterexamples as appropriate.
Viktor Vafeiadis, Thibaut Balabonski, Soham Chakraborty 0001, Robin Morisset, Francesco Zappa Nardelli
POPL4
2013 Compiler testing via a theory of sound optimisations in the C11/C++11 memory model
abstract
Compilers sometimes generate correct sequential code but break the concurrency memory model of the programming language: these subtle compiler bugs are observable only when the miscompiled functions interact with concurrent contexts, making them particularly hard to detect. In this work we design a strategy to reduce the hard problem of hunting concurrency compiler bugs to differential testing of sequential code and build a tool that puts this strategy to work. Our first contribution is a theory of sound optimisations in the C11/C++11 memory model, covering most of the optimisations we have observed in real compilers and validating the claim that common compiler optimisations are sound in the C11/C++11 memory model. Our second contribution is to show how, building on this theory, concurrency compiler bugs can be identified by comparing the memory trace of compiled code against a reference memory trace for the source code. Our tool identified several mistaken write introductions and other unexpected behaviours in the latest release of the gcc compiler.
Robin Morisset, Pankaj Pawan, Francesco Zappa Nardelli
PLDI1
2011 Preliminary design of the SAFE platform
abstract
Safe is a clean-slate design for a secure host architecture. It integrates advances in programming languages, operating systems, and hardware and incorporates formal methods at every step. Though the project is still at an early stage, we have assembled a set of basic architectural choices that we believe will yield a high-assurance system. We sketch the current state of the design and discuss several of these choices.
André DeHon, Ben Karel, Thomas F. Knight Jr., Gregory Malecha, Benoît Montagu, Robin Morisset, J. Gregory Morrisett, Benjamin C. Pierce, Randy Pollack, Sumit Ray, Olin Shivers, Jonathan M. Smith, Greg Sullivan
PLOS@SOSP6
2010 Copilot: A Hard Real-Time Runtime Monitor
Lee Pike, Alwyn Goodloe, Robin Morisset, Sebastian Niller
RV3