With this change, most 'g' options are rejected by CompilerInvocation.
They remain only as Driver options. The new way to request debug info
from cc1 is with "-debug-info-kind={line-tables-only|limited|standalone}"
and "-dwarf-version={2|3|4}". In the absence of a command-line option
to specify Dwarf version, the Toolchain decides it, rather than placing
Toolchain-specific logic in CompilerInvocation.
Also fix a bug in the Windows compatibility argument parsing
in which the "rightmost argument wins" principle failed.
Differential Revision: http://reviews.llvm.org/D13221
llvm-svn: 249655
21 lines
641 B
C
21 lines
641 B
C
// RUN: %clang_cc1 -debug-info-kind=limited -emit-llvm < %s | FileCheck %s
|
|
|
|
// Check that, just because we emitted a function from a different file doesn't
|
|
// mean we insert a file-change inside the next function.
|
|
|
|
// CHECK: ret void, !dbg [[F1_LINE:![0-9]*]]
|
|
// CHECK: ret void, !dbg [[F2_LINE:![0-9]*]]
|
|
// CHECK: [[F1:![0-9]*]] = distinct !DISubprogram(name: "f1",{{.*}} isDefinition: true
|
|
// CHECK: [[F2:![0-9]*]] = distinct !DISubprogram(name: "f2",{{.*}} isDefinition: true
|
|
// CHECK: [[F1_LINE]] = !DILocation({{.*}}, scope: [[F1]])
|
|
// CHECK: [[F2_LINE]] = !DILocation({{.*}}, scope: [[F2]])
|
|
|
|
void f1() {
|
|
}
|
|
|
|
# 2 "foo.c"
|
|
|
|
void f2() {
|
|
}
|
|
|