[llvm] r252770 - Reverting r252760

Colin LeMahieu via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 11 19:09:21 PST 2015


On Hemant's request due to svn permission issues.  He re-applied it later.

-----Original Message-----
From: dexonsmith at apple.com [mailto:dexonsmith at apple.com] 
Sent: Wednesday, November 11, 2015 4:50 PM
To: Colin LeMahieu
Cc: llvm-commits at lists.llvm.org
Subject: Re: [llvm] r252770 - Reverting r252760

Why?

> On 2015-Nov-11, at 10:11, Colin LeMahieu via llvm-commits
<llvm-commits at lists.llvm.org> wrote:
> 
> 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-symboli
> zer/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-symboli
> zer/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/l
> lvm-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);
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list