mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-03 17:32:59 +00:00
[llvm-opt-report] Use -no-demangle to disable demangling
As this is intended to be a user-facing option, -no-demangle seems much better than -demangle=0. Add testing for the option. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@283516 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
a425991140
commit
28b12d7747
@ -1,4 +1,5 @@
|
|||||||
RUN: llvm-opt-report -r %p %p/Inputs/qx.yaml | FileCheck -strict-whitespace %s
|
RUN: llvm-opt-report -r %p %p/Inputs/qx.yaml | FileCheck -strict-whitespace %s
|
||||||
|
RUN: llvm-opt-report -no-demangle -r %p %p/Inputs/qx.yaml | FileCheck -strict-whitespace -check-prefix=CHECK-NODEM %s
|
||||||
RUN: llvm-opt-report -s -r %p %p/Inputs/qx.yaml | FileCheck -strict-whitespace -check-prefix=CHECK-SUCCINCT %s
|
RUN: llvm-opt-report -s -r %p %p/Inputs/qx.yaml | FileCheck -strict-whitespace -check-prefix=CHECK-SUCCINCT %s
|
||||||
|
|
||||||
; CHECK: < {{.*[/\]}}q.cpp
|
; CHECK: < {{.*[/\]}}q.cpp
|
||||||
@ -22,6 +23,27 @@ RUN: llvm-opt-report -s -r %p %p/Inputs/qx.yaml | FileCheck -strict-whitespace -
|
|||||||
; CHECK-NEXT: 13 | }
|
; CHECK-NEXT: 13 | }
|
||||||
; CHECK-NEXT: 14 |
|
; CHECK-NEXT: 14 |
|
||||||
|
|
||||||
|
; CHECK-NODEM: < {{.*[/\]}}q.cpp
|
||||||
|
; CHECK-NODEM-NEXT: 1 | void bar();
|
||||||
|
; CHECK-NODEM-NEXT: 2 | void foo(int n) {
|
||||||
|
; CHECK-NODEM-NEXT: {{\[\[}}
|
||||||
|
; CHECK-NODEM-NEXT: > _Z3fooi:
|
||||||
|
; CHECK-NODEM-NEXT: 3 | for (int i = 0; i < n; ++i)
|
||||||
|
; CHECK-NODEM-NEXT: > _Z5quackv, _Z6quack2v:
|
||||||
|
; CHECK-NODEM-NEXT: 3 U4 | for (int i = 0; i < n; ++i)
|
||||||
|
; CHECK-NODEM-NEXT: {{\]\]}}
|
||||||
|
; CHECK-NODEM-NEXT: 4 | bar();
|
||||||
|
; CHECK-NODEM-NEXT: 5 | }
|
||||||
|
; CHECK-NODEM-NEXT: 6 |
|
||||||
|
; CHECK-NODEM-NEXT: 7 | void quack() {
|
||||||
|
; CHECK-NODEM-NEXT: 8 I | foo(4);
|
||||||
|
; CHECK-NODEM-NEXT: 9 | }
|
||||||
|
; CHECK-NODEM-NEXT: 10 |
|
||||||
|
; CHECK-NODEM-NEXT: 11 | void quack2() {
|
||||||
|
; CHECK-NODEM-NEXT: 12 I | foo(4);
|
||||||
|
; CHECK-NODEM-NEXT: 13 | }
|
||||||
|
; CHECK-NODEM-NEXT: 14 |
|
||||||
|
|
||||||
; CHECK-SUCCINCT: < {{.*[/\]}}q.cpp
|
; CHECK-SUCCINCT: < {{.*[/\]}}q.cpp
|
||||||
; CHECK-SUCCINCT-NEXT: 1 | void bar();
|
; CHECK-SUCCINCT-NEXT: 1 | void bar();
|
||||||
; CHECK-SUCCINCT-NEXT: 2 | void foo(int n) {
|
; CHECK-SUCCINCT-NEXT: 2 | void foo(int n) {
|
||||||
|
@ -59,8 +59,8 @@ static cl::opt<bool>
|
|||||||
cl::init(false), cl::cat(OptReportCategory));
|
cl::init(false), cl::cat(OptReportCategory));
|
||||||
|
|
||||||
static cl::opt<bool>
|
static cl::opt<bool>
|
||||||
Demangle("demangle", cl::desc("Demangle function names"), cl::init(true),
|
NoDemangle("no-demangle", cl::desc("Don't demangle function names"),
|
||||||
cl::cat(OptReportCategory));
|
cl::init(false), cl::cat(OptReportCategory));
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
// For each location in the source file, the common per-transformation state
|
// For each location in the source file, the common per-transformation state
|
||||||
@ -378,7 +378,7 @@ static bool writeReport(LocationInfoTy &LocationInfo) {
|
|||||||
OS << ", ";
|
OS << ", ";
|
||||||
|
|
||||||
bool Printed = false;
|
bool Printed = false;
|
||||||
if (Demangle) {
|
if (!NoDemangle) {
|
||||||
int Status = 0;
|
int Status = 0;
|
||||||
char *Demangled =
|
char *Demangled =
|
||||||
itaniumDemangle(FuncName.c_str(), nullptr, nullptr, &Status);
|
itaniumDemangle(FuncName.c_str(), nullptr, nullptr, &Status);
|
||||||
|
Loading…
Reference in New Issue
Block a user