forked from swiftlang/swift
- Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDwarfReader.swift
36 lines (31 loc) · 864 Bytes
/
DwarfReader.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// RUN: %empty-directory(%t)
// RUN: %target-build-swift %S/Inputs/Inlining.swift -parse-as-library -g -o %t/Inlining
// RUN: %target-build-swift %s -parse-as-library -g -o %t/DwarfReader
// RUN: %target-run %t/DwarfReader %t/Inlining | %FileCheck %s
// REQUIRES: OS=linux-gnu
// REQUIRES: backtracing
@_spi(DwarfTest)import Runtime
#if canImport(Darwin)
import Darwin
#elseif canImport(SwiftWASILibc)
import SwiftWASILibc
#elseif canImport(ucrt)
import ucrt
#elseif canImport(SwiftGlibc)
import SwiftGlibc
#endif
@main
structDwarfReader{
staticfunc main(){
ifCommandLine.argc !=2{
print("usage: DwarfReader <path-to-binary>")
return
}
// CHECK: {{.*}}/Inlining is a {{32|64}}-bit ELF image
// CHECK: Units:
// CHECK: Call Sites:
if !testDwarfReaderFor(path:CommandLine.arguments[1]){
exit(1)
}
}
}