Skip to content
  1. Mar 09, 2012
    • Ted Kremenek's avatar
      [analyzer] Implement basic path diagnostic pruning based on "interesting" symbols and regions. · 1e809b4c
      Ted Kremenek authored
      Essentially, a bug centers around a story for various symbols and regions.  We should only include
      the path diagnostic events that relate to those symbols and regions.
      
      The pruning is done by associating a set of interesting symbols and regions with a BugReporter, which
      can be modified at BugReport creation or by BugReporterVisitors.
      
      This patch reduces the diagnostics emitted in several of our test cases.  I've vetted these as
      having desired behavior.  The only regression is a missing null check diagnostic for the return
      value of realloc() in test/Analysis/malloc-plist.c.  This will require some investigation to fix,
      and I have added a FIXME to the test case.
      
      llvm-svn: 152361
      1e809b4c
    • Andrew Trick's avatar
      misched: allow the default scheduler to be one chosen by the target. · 45300687
      Andrew Trick authored
      llvm-svn: 152360
      45300687
    • Andrew Trick's avatar
      Added TargetPassConfig::enablePass · a6fe207f
      Andrew Trick authored
      llvm-svn: 152359
      a6fe207f
    • Enrico Granata's avatar
      eb55ad4a
    • Johnny Chen's avatar
      Change the test driver so that, by default, it takes into consideration of... · 5a9a9883
      Johnny Chen authored
      Change the test driver so that, by default, it takes into consideration of both 'x86_64' and 'i386' architectures
      when building the inferior programs.
      
      Example:
      
      /Volumes/data/lldb/svn/ToT/test $ ./dotest.py -v functionalities/watchpoint
      LLDB build dir: /Volumes/data/lldb/svn/ToT/build/Debug
      LLDB-123
      Path: /Volumes/data/lldb/svn/ToT
      URL: https://johnny@llvm.org/svn/llvm-project/lldb/trunk
      Repository Root: https://johnny@llvm.org/svn/llvm-project
      Repository UUID: 91177308-0d34-0410-b5e6-96231b3b80d8
      Revision: 152244
      Node Kind: directory
      Schedule: normal
      Last Changed Author: gclayton
      Last Changed Rev: 152244
      Last Changed Date: 2012-03-07 13:03:09 -0800 (Wed, 07 Mar 2012)
      
      
      
      Session logs for test failures/errors/unexpected successes will go into directory '2012-03-08-16_43_51'
      Command invoked: python ./dotest.py -v functionalities/watchpoint
      
      Configuration: arch=x86_64
      ----------------------------------------------------------------------
      Collected 21 tests
      
       1: test_hello_watchlocation_with_dsym (TestWatchLocation.HelloWatchLocationTestCase)
          Test watching a location with '-x size' option. ... ok
       2: test_hello_watchlocation_with_dwarf (TestWatchLocation.HelloWatchLocationTestCase)
          Test watching a location with '-x size' option. ... ok
       3: test_hello_watchpoint_with_dsym_using_watchpoint_set (TestMyFirstWatchpoint.HelloWatchpointTestCase)
          Test a simple sequence of watchpoint creation and watchpoint hit. ... ok
       4: test_hello_watchpoint_with_dwarf_using_watchpoint_set (TestMyFirstWatchpoint.HelloWatchpointTestCase)
          Test a simple sequence of watchpoint creation and watchpoint hit. ... ok
       5: test_watchpoint_multiple_threads_with_dsym (TestWatchpointMultipleThreads.WatchpointForMultipleThreadsTestCase)
          Test that lldb watchpoint works for multiple threads. ... ok
       6: test_watchpoint_multiple_threads_with_dwarf (TestWatchpointMultipleThreads.WatchpointForMultipleThreadsTestCase)
          Test that lldb watchpoint works for multiple threads. ... ok
       7: test_rw_disable_after_first_stop__with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint but disable it after the first stop. ... ok
       8: test_rw_disable_after_first_stop_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint but disable it after the first stop. ... ok
       9: test_rw_disable_then_enable_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint, disable initially, then enable it. ... ok
      10: test_rw_disable_then_enable_with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint, disable initially, then enable it. ... ok
      11: test_rw_watchpoint_delete_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test delete watchpoint and expect not to stop for watchpoint. ... ok
      12: test_rw_watchpoint_delete_with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test delete watchpoint and expect not to stop for watchpoint. ... ok
      13: test_rw_watchpoint_set_ignore_count_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test watchpoint ignore count and expect to not to stop at all. ... ok
      14: test_rw_watchpoint_set_ignore_count_with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test watchpoint ignore count and expect to not to stop at all. ... ok
      15: test_rw_watchpoint_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint and expect to stop two times. ... ok
      16: test_rw_watchpoint_with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint and expect to stop two times. ... ok
      17: test_watchpoint_cond_with_dsym (TestWatchpointConditionCmd.WatchpointConditionCmdTestCase)
          Test watchpoint condition. ... ok
      18: test_watchpoint_cond_with_dwarf (TestWatchpointConditionCmd.WatchpointConditionCmdTestCase)
          Test watchpoint condition. ... ok
      19: test_watchlocation_with_dsym_using_watchpoint_set (TestWatchLocationWithWatchSet.WatchLocationUsingWatchpointSetTestCase)
          Test watching a location with 'watchpoint set expression -w write -x size' option. ... ok
      20: test_watchlocation_with_dwarf_using_watchpoint_set (TestWatchLocationWithWatchSet.WatchLocationUsingWatchpointSetTestCase)
          Test watching a location with 'watchpoint set expression -w write -x size' option. ... ok
      21: test_error_cases_with_watchpoint_set (TestWatchpointSetErrorCases.WatchpointSetErrorTestCase)
          Test error cases with the 'watchpoint set' command. ... ok
      
      ----------------------------------------------------------------------
      Ran 21 tests in 74.590s
      
      OK
      
      Configuration: arch=i386
      ----------------------------------------------------------------------
      Collected 21 tests
      
       1: test_hello_watchlocation_with_dsym (TestWatchLocation.HelloWatchLocationTestCase)
          Test watching a location with '-x size' option. ... ok
       2: test_hello_watchlocation_with_dwarf (TestWatchLocation.HelloWatchLocationTestCase)
          Test watching a location with '-x size' option. ... ok
       3: test_hello_watchpoint_with_dsym_using_watchpoint_set (TestMyFirstWatchpoint.HelloWatchpointTestCase)
          Test a simple sequence of watchpoint creation and watchpoint hit. ... ok
       4: test_hello_watchpoint_with_dwarf_using_watchpoint_set (TestMyFirstWatchpoint.HelloWatchpointTestCase)
          Test a simple sequence of watchpoint creation and watchpoint hit. ... ok
       5: test_watchpoint_multiple_threads_with_dsym (TestWatchpointMultipleThreads.WatchpointForMultipleThreadsTestCase)
          Test that lldb watchpoint works for multiple threads. ... ok
       6: test_watchpoint_multiple_threads_with_dwarf (TestWatchpointMultipleThreads.WatchpointForMultipleThreadsTestCase)
          Test that lldb watchpoint works for multiple threads. ... ok
       7: test_rw_disable_after_first_stop__with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint but disable it after the first stop. ... ok
       8: test_rw_disable_after_first_stop_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint but disable it after the first stop. ... ok
       9: test_rw_disable_then_enable_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint, disable initially, then enable it. ... ok
      10: test_rw_disable_then_enable_with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint, disable initially, then enable it. ... ok
      11: test_rw_watchpoint_delete_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test delete watchpoint and expect not to stop for watchpoint. ... ok
      12: test_rw_watchpoint_delete_with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test delete watchpoint and expect not to stop for watchpoint. ... ok
      13: test_rw_watchpoint_set_ignore_count_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test watchpoint ignore count and expect to not to stop at all. ... ok
      14: test_rw_watchpoint_set_ignore_count_with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test watchpoint ignore count and expect to not to stop at all. ... ok
      15: test_rw_watchpoint_with_dsym (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint and expect to stop two times. ... ok
      16: test_rw_watchpoint_with_dwarf (TestWatchpointCommands.WatchpointCommandsTestCase)
          Test read_write watchpoint and expect to stop two times. ... ok
      17: test_watchpoint_cond_with_dsym (TestWatchpointConditionCmd.WatchpointConditionCmdTestCase)
          Test watchpoint condition. ... ok
      18: test_watchpoint_cond_with_dwarf (TestWatchpointConditionCmd.WatchpointConditionCmdTestCase)
          Test watchpoint condition. ... ok
      19: test_watchlocation_with_dsym_using_watchpoint_set (TestWatchLocationWithWatchSet.WatchLocationUsingWatchpointSetTestCase)
          Test watching a location with 'watchpoint set expression -w write -x size' option. ... ok
      20: test_watchlocation_with_dwarf_using_watchpoint_set (TestWatchLocationWithWatchSet.WatchLocationUsingWatchpointSetTestCase)
          Test watching a location with 'watchpoint set expression -w write -x size' option. ... ok
      21: test_error_cases_with_watchpoint_set (TestWatchpointSetErrorCases.WatchpointSetErrorTestCase)
          Test error cases with the 'watchpoint set' command. ... ok
      
      ----------------------------------------------------------------------
      Ran 21 tests in 67.059s
      
      OK
      
      llvm-svn: 152357
      5a9a9883
    • Evan Cheng's avatar
      bc3b4e3f
    • Benjamin Kramer's avatar
      398ecd62
    • Jason Molenda's avatar
      Bump to lldb-125. · e83bc02b
      Jason Molenda authored
      llvm-svn: 152353
      e83bc02b
    • Anna Zaks's avatar
      [analyzer] Use call graph to determine order in which functions are · eee91107
      Anna Zaks authored
      analyzed.
      
      The CallGraph is used when inlining is on, which is the current default.
      
      This alone does not bring any performance improvement. It's a
      stepping stone for the upcoming optimization in which we do not
      re-analyze a function that has already been analyzed while inlined in
      other functions. Using the call graph makes it easier to play with
      the order of functions to minimize redundant analyzes.
      
      llvm-svn: 152352
      eee91107
    • Anna Zaks's avatar
      [analyzer] Rework inlining related command line options. · 0af3e06f
      Anna Zaks authored
       - Remove -analyzer-inline-call.
       - Add -analyzer-ipa=[none|inlining]
       - Add -analyzer-inlining-mode to allow experimentation for
      different performance tuning methods.
      
      llvm-svn: 152351
      0af3e06f
    • Anna Zaks's avatar
      Call Graph: Only the root node is allowed to have an invalid Decl*. · 9a008bb7
      Anna Zaks authored
      llvm-svn: 152350
      9a008bb7
    • Richard Smith's avatar
      Remove a test FIXME for a case which is already fixed. · bf79fc49
      Richard Smith authored
      llvm-svn: 152349
      bf79fc49
    • Richard Smith's avatar
      Fix a couple of issues with literal-operator-id parsing, and provide recovery · 7d182a79
      Richard Smith authored
      for a few kinds of error. Specifically:
      
      Since we're after translation phase 6, the "" token might be formed by multiple
      source-level string literals. Checking the token width is not a correct way of
      detecting empty string literals, due to escaped newlines. Diagnose and recover
      from a missing space between "" and suffix, and from string literals other than
      "", which are followed by a suffix.
      
      llvm-svn: 152348
      7d182a79
  2. Mar 08, 2012
Loading