[llvm] r252770 - Reverting r252760
Colin LeMahieu via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 11 10:11:07 PST 2015
Author: colinl
Date: Wed Nov 11 12:11:06 2015
New Revision: 252770
URL: http://llvm.org/viewvc/llvm-project?rev=252770&view=rev
Log:
Reverting r252760
Modified:
llvm/trunk/docs/CommandGuide/llvm-symbolizer.rst
llvm/trunk/include/llvm/DebugInfo/Symbolize/DIPrinter.h
llvm/trunk/lib/DebugInfo/Symbolize/DIPrinter.cpp
llvm/trunk/test/tools/llvm-symbolizer/Inputs/addr.exe
llvm/trunk/test/tools/llvm-symbolizer/sym.test
llvm/trunk/tools/llvm-symbolizer/llvm-symbolizer.cpp
Modified: llvm/trunk/docs/CommandGuide/llvm-symbolizer.rst
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CommandGuide/llvm-symbolizer.rst?rev=252770&r1=252769&r2=252770&view=diff
==============================================================================
--- llvm/trunk/docs/CommandGuide/llvm-symbolizer.rst (original)
+++ llvm/trunk/docs/CommandGuide/llvm-symbolizer.rst Wed Nov 11 12:11:06 2015
@@ -56,14 +56,6 @@ EXAMPLE
foo(int)
/tmp/a.cc:12
- $cat addr.txt
- 0x40054d
- $llvm-symbolizer -inlining -print-address -pretty-print -obj=addr.exe < addr.txt
- 0x40054d: inc at /tmp/x.c:3:3
- (inlined by) main at /tmp/x.c:9:0
- $llvm-symbolizer -inlining -pretty-print -obj=addr.exe < addr.txt
- inc at /tmp/x.c:3:3
- (inlined by) main at /tmp/x.c:9:0
OPTIONS
-------
@@ -109,10 +101,6 @@ OPTIONS
.. option:: -print-address
Print address before the source code location. Defaults to false.
-.. option:: -pretty-print
- Print human readable output. If ``-inlining`` is specified, enclosing scope is
- prefixed by (inlined by). Refer to listed examples.
-
EXIT STATUS
-----------
Modified: llvm/trunk/include/llvm/DebugInfo/Symbolize/DIPrinter.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/Symbolize/DIPrinter.h?rev=252770&r1=252769&r2=252770&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/Symbolize/DIPrinter.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/Symbolize/DIPrinter.h Wed Nov 11 12:11:06 2015
@@ -27,14 +27,10 @@ namespace symbolize {
class DIPrinter {
raw_ostream &OS;
bool PrintFunctionNames;
- bool PrintPretty;
- void printName(const DILineInfo &Info, bool Inlined);
public:
- DIPrinter(raw_ostream &OS, bool PrintFunctionNames = true,
- bool PrintPretty = false)
- : OS(OS), PrintFunctionNames(PrintFunctionNames),
- PrintPretty(PrintPretty) {}
+ DIPrinter(raw_ostream &OS, bool PrintFunctionNames = true)
+ : OS(OS), PrintFunctionNames(PrintFunctionNames) {}
DIPrinter &operator<<(const DILineInfo &Info);
DIPrinter &operator<<(const DIInliningInfo &Info);
Modified: llvm/trunk/lib/DebugInfo/Symbolize/DIPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/Symbolize/DIPrinter.cpp?rev=252770&r1=252769&r2=252770&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/Symbolize/DIPrinter.cpp (original)
+++ llvm/trunk/lib/DebugInfo/Symbolize/DIPrinter.cpp Wed Nov 11 12:11:06 2015
@@ -24,35 +24,27 @@ namespace symbolize {
static const char kDILineInfoBadString[] = "<invalid>";
static const char kBadString[] = "??";
-void DIPrinter::printName(const DILineInfo &Info, bool Inlined) {
+DIPrinter &DIPrinter::operator<<(const DILineInfo &Info) {
if (PrintFunctionNames) {
std::string FunctionName = Info.FunctionName;
if (FunctionName == kDILineInfoBadString)
FunctionName = kBadString;
-
- StringRef Delimiter = (PrintPretty == true) ? " at " : "\n";
- StringRef Prefix = (PrintPretty && Inlined) ? " (inlined by) " : "";
- OS << Prefix << FunctionName << Delimiter;
+ OS << FunctionName << "\n";
}
std::string Filename = Info.FileName;
if (Filename == kDILineInfoBadString)
Filename = kBadString;
OS << Filename << ":" << Info.Line << ":" << Info.Column << "\n";
-}
-
-DIPrinter &DIPrinter::operator<<(const DILineInfo &Info) {
- printName(Info, false);
return *this;
}
DIPrinter &DIPrinter::operator<<(const DIInliningInfo &Info) {
uint32_t FramesNum = Info.getNumberOfFrames();
- if (FramesNum == 0) {
- printName(DILineInfo(), false);
- return *this;
+ if (FramesNum == 0)
+ return (*this << DILineInfo());
+ for (uint32_t i = 0; i < FramesNum; i++) {
+ *this << Info.getFrame(i);
}
- for (uint32_t i = 0; i < FramesNum; i++)
- printName(Info.getFrame(i), i > 0);
return *this;
}
Modified: llvm/trunk/test/tools/llvm-symbolizer/Inputs/addr.exe
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-symbolizer/Inputs/addr.exe?rev=252770&r1=252769&r2=252770&view=diff
==============================================================================
Binary files - no diff available.
Modified: llvm/trunk/test/tools/llvm-symbolizer/sym.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-symbolizer/sym.test?rev=252770&r1=252769&r2=252770&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-symbolizer/sym.test (original)
+++ llvm/trunk/test/tools/llvm-symbolizer/sym.test Wed Nov 11 12:11:06 2015
@@ -1,30 +1,19 @@
#Source:
##include <stdio.h>
-#static inline int inctwo (int *a) {
-# printf ("%d\n",(*a)++);
-# return (*a)++;
-#}
#static inline int inc (int *a) {
-# printf ("%d\n",inctwo(a));
+# printf ("%d\n",(*a)++);
# return (*a)++;
#}
#
-#
#int main () {
# int x = 1;
# return inc(&x);
#}
-#
#Build as : clang -g -O2 addr.c
-RUN: llvm-symbolizer -print-address -obj=%p/Inputs/addr.exe < %p/Inputs/addr.inp | FileCheck %s
-RUN: llvm-symbolizer -inlining -print-address -pretty-print -obj=%p/Inputs/addr.exe < %p/Inputs/addr.inp | FileCheck --check-prefix="PRETTY" %s
+RUN: llvm-symbolizer -inlining -print-address -obj=%p/Inputs/addr.exe < %p/Inputs/addr.inp | FileCheck %s
#CHECK: 0x40054d
#CHECK: main
-#CHECK: {{[/\]+}}tmp{{[/\]+}}x.c:14:0
-#
-#PRETTY: {{[0x]+}}40054d: inctwo at {{[/\]+}}tmp{{[/\]+}}x.c:3:3
-#PRETTY: (inlined by) inc at {{[/\]+}}tmp{{[/\]+}}x.c:7:0
-#PRETTY (inlined by) main at {{[/\]+}}tmp{{[/\]+}}x.c:14:0
+#CHECK: {{[/\]+}}tmp{{[/\]+}}x.c:9:0
Modified: llvm/trunk/tools/llvm-symbolizer/llvm-symbolizer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-symbolizer/llvm-symbolizer.cpp?rev=252770&r1=252769&r2=252770&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-symbolizer/llvm-symbolizer.cpp (original)
+++ llvm/trunk/tools/llvm-symbolizer/llvm-symbolizer.cpp Wed Nov 11 12:11:06 2015
@@ -78,10 +78,6 @@ static cl::opt<bool>
ClPrintAddress("print-address", cl::init(false),
cl::desc("Show address before line information"));
-static cl::opt<bool>
- ClPrettyPrint("pretty-print", cl::init(false),
- cl::desc("Make the output more human friendly"));
-
static bool error(std::error_code ec) {
if (!ec)
return false;
@@ -147,7 +143,6 @@ int main(int argc, char **argv) {
cl::ParseCommandLineOptions(argc, argv, "llvm-symbolizer\n");
LLVMSymbolizer::Options Opts(ClPrintFunctions, ClUseSymbolTable, ClDemangle,
ClUseRelativeAddress, ClDefaultArch);
-
for (const auto &hint : ClDsymHint) {
if (sys::path::extension(hint) == ".dSYM") {
Opts.DsymHints.push_back(hint);
@@ -161,15 +156,13 @@ int main(int argc, char **argv) {
bool IsData = false;
std::string ModuleName;
uint64_t ModuleOffset;
- DIPrinter Printer(outs(), ClPrintFunctions != FunctionNameKind::None,
- ClPrettyPrint);
+ DIPrinter Printer(outs(), ClPrintFunctions != FunctionNameKind::None);
while (parseCommand(IsData, ModuleName, ModuleOffset)) {
if (ClPrintAddress) {
outs() << "0x";
outs().write_hex(ModuleOffset);
- StringRef Delimiter = (ClPrettyPrint == true) ? ": " : "\n";
- outs() << Delimiter;
+ outs() << "\n";
}
if (IsData) {
auto ResOrErr = Symbolizer.symbolizeData(ModuleName, ModuleOffset);
More information about the llvm-commits
mailing list