forked from swiftlang/swift
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add an argument-number field to DebugValueInst and friends.
This commit adds a DebugVariable field that is shared by - AllocBoxInst - AllocStackInst - DebugValueInst - DebugValueAddrInst Currently DebugVariable only holds the Swift argument number. This allows us to retire several expensive heuristics in IRGen that attempted to identify which local variables actually where arguments and recover their relative order. Memory footprint notes: This commit adds a 4-byte field to 4 SILInstructin subclasses. This was offset by 8ab1e2d which removed 20 bytes from *every* SILInstruction. Caveats: This commit surfaces a known bug in FunctionSigantureOpts, tracked in rdar://problem/23727705 — debug info for exploded function arguments cannot be expressed until this is fixed. This reapplies ed2b16d with a bugfix for generic function arrguments and an additional testcase. <rdar://problem/21185379&22705926>
- Loading branch information
1 parent
c2448f4
commit 7821341
Showing
35 changed files
with
326 additions
and
271 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.