Skip to content

Commit 1113c75

Browse files
committed
Improve function convention printing.
1 parent 20905b2 commit 1113c75

File tree

3 files changed

+12
-4
lines changed

3 files changed

+12
-4
lines changed

SwiftCompilerSources/Sources/Optimizer/FunctionPasses/LifetimeDependenceDiagnostics.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ let lifetimeDependenceDiagnosticsPass = FunctionPass(
3636
#endif
3737
log(prefix: false, "\n--- Diagnosing lifetime dependence in \(function.name)")
3838
log("\(function)")
39+
log("\(function.convention)")
3940

4041
for argument in function.arguments
4142
where !argument.type.isEscapable(in: function)

SwiftCompilerSources/Sources/SIL/Argument.swift

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,8 +291,11 @@ public struct ArgumentConventions : Collection, CustomStringConvertible {
291291
}
292292
for idx in indirectSILResultCount..<endIndex {
293293
str += "\n[\(idx)] parameter: " + self[idx].description
294+
if let deps = self[parameterDependencies: idx] {
295+
str += "\n lifetime: \(deps)"
296+
}
294297
if let dep = self[resultDependsOn: idx] {
295-
str += "resultDependsOn: " + dep.description
298+
str += "\n result dependence: " + dep.description
296299
}
297300
}
298301
return str

SwiftCompilerSources/Sources/SIL/FunctionConvention.swift

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,11 +91,15 @@ public struct FunctionConvention : CustomStringConvertible {
9191

9292
public var description: String {
9393
var str = String(taking: bridgedFunctionType.getDebugDescription())
94-
parameters.forEach { str += "\nparameter: " + $0.description }
94+
for paramIdx in 0..<parameters.count {
95+
str += "\nparameter: " + parameters[paramIdx].description
96+
if let deps = parameterDependencies(for: paramIdx) {
97+
str += "\n lifetime: \(deps)"
98+
}
99+
}
95100
results.forEach { str += "\n result: " + $0.description }
96-
str += (hasLoweredAddresses ? "\n[lowered_address]" : "\n[sil_opaque]")
97101
if let deps = resultDependencies {
98-
str += "\nresult dependences \(deps)"
102+
str += "\n lifetime: \(deps)"
99103
}
100104
return str
101105
}

0 commit comments

Comments
 (0)