Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation 2016
DOI: 10.1145/2908080.2908119
|View full text |Cite
|
Sign up to set email alerts
|

Polymorphic type inference for machine code

Abstract: For many compiled languages, source-level types are erased very early in the compilation process. As a result, further compiler passes may convert type-safe source into type-unsafe machine code. Type-unsafe idioms in the original source and type-unsafe optimizations mean that type information in a stripped binary is essentially nonexistent. The problem of recovering high-level types by performing type inference over stripped machine code is called type reconstruction, and offers a useful capability in support … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
10
0

Year Published

2016
2016
2022
2022

Publication Types

Select...
3
2
1

Relationship

1
5

Authors

Journals

citations
Cited by 19 publications
(11 citation statements)
references
References 31 publications
0
10
0
Order By: Relevance
“…Let us briefly see how operations in the original program translate to type constraints, using C-like pseudocode for clarity. The full conversion from disassembly to type constraints is described in Appendix A of [22]. Value copies: When a value is moved between program variables in an assignment like x := y, we make the conservative assumption that the type of x may be upcast to a supertype of y.…”
Section: Set Of Base Type Variablesmentioning
confidence: 99%
See 4 more Smart Citations
“…Let us briefly see how operations in the original program translate to type constraints, using C-like pseudocode for clarity. The full conversion from disassembly to type constraints is described in Appendix A of [22]. Value copies: When a value is moved between program variables in an assignment like x := y, we make the conservative assumption that the type of x may be upcast to a supertype of y.…”
Section: Set Of Base Type Variablesmentioning
confidence: 99%
“…But we still maintain this capability at procedure invocations due to our use of polymorphic type schemes. An explanation of how type-scheme instantiation enables us to forget fields of an object appears in §3.4, with more details in §E.1.2 of [22].…”
Section: T-inheritl and T-inheritrmentioning
confidence: 99%
See 3 more Smart Citations