A Formal C Memory Model Supporting Integer-Pointer Casts

Cited 21 time in webofscience Cited 21 time in scopus
  • Hit : 737
  • Download : 0
The ISO C standard does not specify the semantics of many valid programs that use non-portable idioms such as integer-pointer casts. Recent efforts at formal definitions and verified implementation of the C language inherit this feature. By adopting high-level abstract memory models, they validate common optimizations. On the other hand, this prevents reasoning about much low-level code relying on the behavior of common implementations, where formal verification has many applications. We present the first formal memory model that allows many common optimizations and fully supports operations on the representation of pointers. All arithmetic operations are well-defined for pointers that have been cast to integers. Crucially, our model is also simple to understand and program with. All our results are fully formalized in Coq.
Publisher
ASSOC COMPUTING MACHINERY
Issue Date
2015-06
Language
English
Article Type
Article; Proceedings Paper
Citation

ACM SIGPLAN NOTICES, v.50, no.6, pp.326 - 335

ISSN
0362-1340
DOI
10.1145/2737924.2738005
URI
http://hdl.handle.net/10203/261889
Appears in Collection
CS-Journal Papers(저널논문)
Files in This Item
There are no files associated with this item.
This item is cited by other documents in WoS
⊙ Detail Information in WoSⓡ Click to see webofscience_button
⊙ Cited 21 items in WoS Click to see citing articles in records_button

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0