[llvm] r252770 - Reverting r252760

Duncan P. N. Exon Smith via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 13 17:00:41 PST 2015


Thanks!

> On 2015-Nov-12, at 09:57, Colin LeMahieu <colinl at codeaurora.org> wrote:
> 
> Agreed.
> 
> There was a missing file causing a build failure and an issue with the
> documentation builder.
> 
> -----Original Message-----
> From: dexonsmith at apple.com [mailto:dexonsmith at apple.com] 
> Sent: Thursday, November 12, 2015 11:11 AM
> To: Colin LeMahieu
> Cc: llvm-commits at lists.llvm.org
> Subject: Re: [llvm] r252770 - Reverting r252760
> 
> Why did Hemant need to revert it?
> 
> (That should have been in the commit message!)
> 
>> On 2015-Nov-11, at 19:09, Colin LeMahieu <colinl at codeaurora.org> wrote:
>> 
>> 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/Symboliz
>>> e /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-symbol
>>> i 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-symbol
>>> i 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