Title
An Analysis of x86-64 Inline Assembly in C Programs.
Abstract
C codebases frequently embed nonportable and unstandardized elements such as inline assembly code. Such elements are not well understood, which poses a problem to tool developers who aspire to support C code. This paper investigates the use of x86-64 inline assembly in 1264 C projects from GitHub and combines qualitative and quantitative analyses to answer questions that tool authors may have. We found that 28.1% of the most popular projects contain inline assembly code, although the majority contain only a few fragments with just one or two instructions. The most popular instructions constitute a small subset concerned largely with multicore semantics, performance optimization, and hardware control. Our findings are intended to help developers of C-focused tools, those testing compilers, and language designers seeking to reduce the reliance on inline assembly. They may also aid the design of tools focused on inline assembly itself.
Year
DOI
Venue
2018
10.1145/3186411.3186418
VEE
Keywords
Field
DocType
C, Empirical Survey, GitHub, Inline Assembly
x86,Programming language,Computer science,Inline assembler,Compiler,Empirical survey,Multi-core processor,Semantics
Conference
Volume
Issue
ISSN
53
3
0362-1340
ISBN
Citations 
PageRank 
978-1-4503-5579-7
0
0.34
References 
Authors
44
5
Name
Order
Citations
PageRank
Manuel Rigger1265.86
Stefan Marr212421.54
Stephen Kell300.68
David Leopoldseder462.46
Hanspeter Mössenböck578188.17