[Lldb-commits] [PATCH] D50478: Add support for artificial tail call frames

Stella Stamenova via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Oct 15 15:47:26 PDT 2018


stella.stamenova added a comment.

In https://reviews.llvm.org/D50478#1262717, @vsk wrote:

> In https://reviews.llvm.org/D50478#1262710, @stella.stamenova wrote:
>
> > Unfortunately, the bots are broken because of the FileCheck issue, so I can't confirm with them, but I see a number of these tests fail in our local testing. Some fail on both Windows and Linux and some just fail on Linux. Here are the failing tests:
> >
> >   Linux:
> >   lldb-Suite :: functionalities/tail_call_frames/disambiguate_call_site/TestDisambiguateCallSite.py
> >   lldb-Suite :: functionalities/tail_call_frames/disambiguate_paths_to_common_sink/TestDisambiguatePathsToCommonSink.py
> >   lldb-Suite :: functionalities/tail_call_frames/disambiguate_tail_call_seq/TestDisambiguateTailCallSeq.py
> >   lldb-Suite :: functionalities/tail_call_frames/inlining_and_tail_calls/TestInliningAndTailCalls.py
> >   lldb-Suite :: functionalities/tail_call_frames/sbapi_support/TestTailCallFrameSBAPI.py
> >   lldb-Suite :: functionalities/tail_call_frames/thread_step_out_message/TestArtificialFrameStepOutMessage.py
> >   lldb-Suite :: functionalities/tail_call_frames/unambiguous_sequence/TestUnambiguousTailCalls.py
> >  
> >   Windows:
> >   lldb-Suite :: functionalities/tail_call_frames/sbapi_support/TestTailCallFrameSBAPI.py
> >   lldb-Suite :: functionalities/tail_call_frames/thread_step_out_or_return/TestSteppingOutWithArtificialFrames.py
> >
> >
> > Let me know what you need to investigate.
>
>
> Strange, I didn't get any bot failure notifications in the days after this landed. Could you share the output from the failing tests?


All the failures on Windows are happening when validating the function name. For example:

  ======================================================================
  
  FAIL: test_tail_call_frame_sbapi (TestTailCallFrameSBAPI.TestTailCallFrameSBAPI)
  
  ----------------------------------------------------------------------
  
  Traceback (most recent call last):
  
    File "E:\_work\55\s\llvm\tools\lldb\packages\Python\lldbsuite\test\functionalities\tail_call_frames\sbapi_support\TestTailCallFrameSBAPI.py", line 19, in test_tail_call_frame_sbapi
  
      self.do_test()
  
    File "E:\_work\55\s\llvm\tools\lldb\packages\Python\lldbsuite\test\functionalities\tail_call_frames\sbapi_support\TestTailCallFrameSBAPI.py", line 64, in do_test
  
      self.assertTrue(frame.GetDisplayFunctionName() == name)
  
  AssertionError: False is not True
  
  Config=x86_64-E:\_work\55\b\LLVMBuild\Release\bin\clang.exe
  
  ----------------------------------------------------------------------

There are several different failures on Linux. Here's the first one:

  FAIL: LLDB (/vstsdrive/_work/38/b/LLVMBuild/bin/clang-8-x86_64) :: test_dwarf (lldbsuite.test.lldbtest.TestDisambiguateCallSite)
  
  --- FileCheck trace (code=1) ---
  /vstsdrive/_work/38/b/LLVMBuild/bin/FileCheck /vstsdrive/_work/38/s/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/tail_call_frames/disambiguate_call_site/main.cpp -implicit-check-not=artificial
  
  FileCheck input:
  * thread #1, name = 'a.out', stop reason = breakpoint 1.1
    * frame #0: 0x0000000000400580 a.out`sink() at main.cpp:13:4 [opt]
      frame #1: 0x00000000004005b8 a.out`main(argc=1, (null)=<unavailable>) at main.cpp:28:3 [opt]
      frame #2: 0x00007f980aff7830 libc.so.6`__libc_start_main + 240
      frame #3: 0x00000000004004a9 a.out`_start + 41
  
  
  FileCheck output:
  
  /vstsdrive/_work/38/s/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/tail_call_frames/disambiguate_call_site/main.cpp:15:17: error: CHECK-NEXT: expected string not found in input
   // CHECK-NEXT: func2{{.*}} [opt] [artificial]
                  ^
  <stdin>:3:2: note: scanning from here
   frame #1: 0x00000000004005b8 a.out`main(argc=1, (null)=<unavailable>) at main.cpp:28:3 [opt]
   ^
  <stdin>:3:80: note: possible intended match here
   frame #1: 0x00000000004005b8 a.out`main(argc=1, (null)=<unavailable>) at main.cpp:28:3 [opt]
                                                                                ^

Let me know if you need more logs.


Repository:
  rLLDB LLDB

https://reviews.llvm.org/D50478





More information about the lldb-commits mailing list