Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages 2016
DOI: 10.1145/2837614.2837615
|View full text |Cite
|
Sign up to set email alerts
|

Modelling the ARMv8 architecture, operationally: concurrency and ISA

Abstract: In this paper we develop semantics for key aspects of the ARMv8 multiprocessor architecture: the concurrency model and much of the 64-bit application-level instruction set (ISA). Our goal is to clarify what the range of architecturally allowable behaviour is, and thereby to support future work on formal verification, analysis, and testing of concurrent ARM software and hardware.Establishing such models with high confidence is intrinsically difficult: it involves capturing the vendor's architectural intent, asp… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
132
0
2

Year Published

2018
2018
2021
2021

Publication Types

Select...
5
2
2

Relationship

2
7

Authors

Journals

citations
Cited by 109 publications
(134 citation statements)
references
References 20 publications
0
132
0
2
Order By: Relevance
“…In their seminal paper introducing lock elision, Rajwar and Goodman argued that "correctness is guaranteed without any dependence on memory ordering" [46, §9]. In fact, by drawing on a decade of weak memory formalisations [5,24,45] and by extending state-of-the-art tools [4,40,55], we show it is straightforward to contradict this claim automatically. x ← The crux of our counterexample is that a (non-transactional) CR can start executing after the lock has been observed to be free, but before it has actually been taken.…”
Section: Motivating Example: Lock Elision In Armv8mentioning
confidence: 86%
“…In their seminal paper introducing lock elision, Rajwar and Goodman argued that "correctness is guaranteed without any dependence on memory ordering" [46, §9]. In fact, by drawing on a decade of weak memory formalisations [5,24,45] and by extending state-of-the-art tools [4,40,55], we show it is straightforward to contradict this claim automatically. x ← The crux of our counterexample is that a (non-transactional) CR can start executing after the lock has been observed to be free, but before it has actually been taken.…”
Section: Motivating Example: Lock Elision In Armv8mentioning
confidence: 86%
“…Note that we do not include fri in ppo since it is not preserved in ARMv7 [Alglave et al 2014] (unlike in x86-TSO, POWER, and ARMv8). Thus, as ARMv7 (as well as the Flowing and POP models of ARM in [Flur et al 2016]), IMM allows the weak behavior from [Lahav and Vafeiadis 2016, Âğ6].…”
Section: Global Ordering Constraintmentioning
confidence: 99%
“…It features substantial ISA models for ARM and RISC-V. Moreover it is integrated into the rmem tool [22,23,[39][40][41] that supports exhaustive and interactive exploration, a web user interface, debugging facilities, etc. The biggest example exhaustively checked with Flat so far is a spinlock example from the Linux kernel.…”
Section: Introductionmentioning
confidence: 99%