swiftlang / swift

The Swift Programming Language
https://swift.org
Apache License 2.0
67.58k stars 10.36k forks source link

[SR-4349] Lock down the function signature lowering scheme #46928

Open bob-wilson opened 7 years ago

bob-wilson commented 7 years ago
Previous ID SR-4349
Radar rdar://problem/31408027
Original Reporter @bob-wilson
Type Task
Additional Detail from JIRA | | | |------------------|-----------------| |Votes | 0 | |Component/s | Compiler | |Labels | Task, AffectsABI | |Assignee | None | |Priority | Medium | md5: f7713ba5019cd1e466fc98e9d247f548

Issue Description:

From the ABI Stability manifesto:

Function signature lowering is the mapping of a function's source-language type, which includes formal parameters and results, all the way down to a physical convention, which dictates what values are stored in what registers and what values to pass on the stack.

ABI stability requires nailing down and fully specifying this algorithm so that future Swift versions can lower Swift types to the same physical call signature as prior Swift versions

bob-wilson commented 7 years ago

@swift-ci create

bob-wilson commented 6 years ago

We do not anticipate making any changes here, so the only thing left to do here is to document the existing behavior.