2015
DOI: 10.1145/2813885.2737960
|View full text |Cite
|
Sign up to set email alerts
|

Synthesis of machine code from semantics

Abstract: In this paper, we present a technique to synthesize machine-code instructions from a semantic specification, given as a Quantifier-Free Bit-Vector (QFBV) logic formula. Our technique uses an instantiation of the CounterExample Guided Inductive Synthesis (CEGIS) framework, in combination with search-space pruning heuristics to synthesize instruction-sequences. To counter the exponential cost inherent in enumerative synthesis, our technique uses a divide-and-conquer strategy to break the input QFBV formula into … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
34
0

Year Published

2015
2015
2016
2016

Publication Types

Select...
3
1
1

Relationship

2
3

Authors

Journals

citations
Cited by 14 publications
(34 citation statements)
references
References 23 publications
0
34
0
Order By: Relevance
“…McSynth [37] is a synthesizer that generates machine code instructions from semantic specifications of their behavior. While McSynth alone does not consider optimality, the authors note that it could be extended to generate optimal solutions with a naive algorithm that generates every solution to the synthesis problem and returns the one among them with minimum cost.…”
Section: Related Workmentioning
confidence: 99%
“…McSynth [37] is a synthesizer that generates machine code instructions from semantic specifications of their behavior. While McSynth alone does not consider optimality, the authors note that it could be extended to generate optimal solutions with a naive algorithm that generates every solution to the synthesis problem and returns the one among them with minimum cost.…”
Section: Related Workmentioning
confidence: 99%
“…A couple of designs that guarantee correctness have been developed by Joshi et al [193,194] and Crick et al [90], who applied automatic theorem proving and a method called answer set programming, respectively. Recently, a similar technique based on quantifier-free bit-vector logic formulas was introduced by Srinivasan and Reps [312].…”
Section: Further Developmentsmentioning
confidence: 99%
“…Component-based synthesis [13] introduces an alternative encoding, which significantly improves the performance of a symbolic search; however, even with this encoding, the symbolic solver from SyGus'14 competition still did not perform well [3]. Another pruning strategy using divide-and-conquer to break QFBV formula potentially reduces synthesis time by many orders of magnitude [28], but it is likely synthesizing the same program as given. The refutation-based approach used in the CVC4 solver [23], the winner of SyGus'15 competition, is also not suitable for superoptimization problems because it tends to produce very large solutions with many if-else constructs.…”
Section: Related Workmentioning
confidence: 99%