- Mar 09, 2012
-
-
Eli Friedman authored
Make sure we update the static local decl address map when we are forced to rebuild a global because of the initializer. <rdar://problem/10957867>. llvm-svn: 152372
-
Enrico Granata authored
Changed ValueObject to use a dedicated ChildrenManager class to store its children, instead of an std::vector This solves an issue where a ValueObject was getting a wrong children count (usually, a huge value) and trying to resize the vector of children to fit that many ValueObject* Added a loop detection algorithm to the synthetic children provider for std::list Added a few more checks to the synthetic children provider for std::vector Both std::list and std::vector's synthetic children providers now cache the count of children instead of recomputing it every time std::map has a field that stores the count, so there is little need to cache it on our side llvm-svn: 152371
-
Eli Friedman authored
Make sure constant emission handles initializer lists with strings correctly. Part of <rdar://problem/10957867>. llvm-svn: 152370
-
Chandler Carruth authored
caused several clients to select the slow variation. =[ This is extra annoying because we don't have any realistic way of testing this -- by design, these two functions *must* compute the same value. Found while inspecting the output of some benchmarks I'm working on. llvm-svn: 152369
-
Chandler Carruth authored
introduced. Specifically, there are cost reductions for all constant-operand icmp instructions against an alloca, regardless of whether the alloca will in fact be elligible for SROA. That means we don't want to abort the icmp reduction computation when we abort the SROA reduction computation. That in turn frees us from the need to keep a separate worklist and defer the ICmp calculations. Use this new-found freedom and some judicious function boundaries to factor the innards of computing the cost factor of any given instruction out of the loop over the instructions and into static helper functions. This greatly simplifies the code, and hopefully makes it more clear what is happening here. Reviewed by Eric Christopher. There is some concern that we'd like to ensure this doesn't get out of hand, and I plan to benchmark the effects of this change over the next few days along with some further fixes to the inline cost. llvm-svn: 152368
-
Johnny Chen authored
Add the capability on OS X to utilize 'xcrun' to locate the compilers used for building the inferior programs to be debugged while running the test suite. By default, compilers is set to ['clang'] and can be overridden using the "-C compilerA^compilerB" option. llvm-svn: 152367
-
Chad Rosier authored
Original commit message from r147481: DAGCombine for transforming 128->256 casts into a vmovaps, rather then a vxorps + vinsertf128 pair if the original vector came from a load. Fix: Unaligned loads need to generate a vmovups. rdar://10974078 llvm-svn: 152366
-
Daniel Dunbar authored
llvm-svn: 152365
-
Daniel Dunbar authored
llvm-svn: 152364
-
Daniel Dunbar authored
- This function is not at all free; pass it around along some hot paths instead of recomputing it deep inside various VarDecl methods. llvm-svn: 152363
-
Kostya Serebryany authored
llvm-svn: 152362
-
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
-
Andrew Trick authored
llvm-svn: 152360
-
Andrew Trick authored
llvm-svn: 152359
-
Enrico Granata authored
llvm-svn: 152358
-
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
-
Evan Cheng authored
llvm-svn: 152356
-
Benjamin Kramer authored
llvm-svn: 152355
-
Jason Molenda authored
llvm-svn: 152353
-
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
-
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
-
Anna Zaks authored
llvm-svn: 152350
-
Richard Smith authored
llvm-svn: 152349
-
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
-
- Mar 08, 2012
-
-
Kostya Serebryany authored
[asan]: fix off-by-one error in stack unwinder (asan issue #44; reproduced thanks to 'csmith' fuzzer) llvm-svn: 152347
-
Benjamin Kramer authored
llvm-svn: 152346
-
John McCall authored
introduces cleanups anyway. llvm-svn: 152345
-
Richard Smith authored
first codepoint! Also, don't reject empty raw string literals for spurious "encoding" issues. Also, don't rely on undefined behavior in ConvertUTF.c. llvm-svn: 152344
-
Benjamin Kramer authored
The test fell back to the C backend, making it useless and it started to fail on configurations that don't build the C backend. llvm-svn: 152342
-
Kostya Serebryany authored
[asan] don't use dl_iterate_phdr on linux, go back to using /proc/self/maps. Hopefully fixes the problem reported by our mozilla friends. llvm-svn: 152341
-
Sebastian Redl authored
Turn explicit construction of temporaries using initializer list syntax into CXXTemporaryObjectExprs, not just CXXConstructExprs, which have a worrying tendency to vanish. Fixes PR12167. llvm-svn: 152340
-
Benjamin Kramer authored
llvm-svn: 152339
-
Howard Hinnant authored
llvm-svn: 152338
-
Johnny Chen authored
The Locker should only perform acquire/free lock operation, but no enter/leave session at all. Also added sanity checks for items passed to the PyDict_SetItemString() calls. llvm-svn: 152337
-
Howard Hinnant authored
llvm-svn: 152336
-
Howard Hinnant authored
llvm-svn: 152335
-
Howard Hinnant authored
llvm-svn: 152334
-
Argyrios Kyrtzidis authored
without reverting the changes. llvm-svn: 152333
-
Daniel Dunbar authored
llvm-svn: 152332
-
Daniel Dunbar authored
llvm-svn: 152331
-