Skip to content
  1. Jan 13, 2012
    • Anna Zaks's avatar
      Move identification of memory setting and copying functions (memset, · 201d489c
      Anna Zaks authored
      memcmp, strncmp,..) out of Sema and into FunctionDecl so that the logic
      could be reused in the analyzer.
      
      llvm-svn: 148142
      201d489c
    • Eli Friedman's avatar
      Revert r148138; it's causing test failures. · d749c6bf
      Eli Friedman authored
      llvm-svn: 148141
      d749c6bf
    • Kaelyn Uhrain's avatar
      Convert SemaExprMember.cpp to pass a callback object to CorrectTypo, · 3658e6a6
      Kaelyn Uhrain authored
      improving the typo correction results in certain situations.
      
      This is also the first typo correction callback conversion to affect
      an existing unit test. :)
      
      llvm-svn: 148140
      3658e6a6
    • Sebastian Pop's avatar
      remove assertions in the Hexagon backend specific clang driver · 86500280
      Sebastian Pop authored
      Patch from Jyotsna Verma:
      
      I have made the changes to remove assertions in the Hexagon backend
      specific clang driver. Instead of asserting on invalid arch name, it has
      been modified to use the default value.
      
      I have changed the implementation of the CPU flag validation for the
      Hexagon backend. Earlier, the clang driver performed the check and
      asserted on invalid inputs. In the new implementation, the driver passes
      the last CPU flag (or sets to "v4" if not specified) to the compiler (and
      also to the assembler and linker which perform their own check) instead of
      asserting on incorrect values. This patch changes the setCPU function for
      the Hexagon backend in clang/lib/Basic/Targets.cpp which causes the
      compiler to error out on incorrect CPU flag values.
      
      llvm-svn: 148139
      86500280
    • Sebastian Pop's avatar
      rename -ccc-host-triple into -target · 9a8d528d
      Sebastian Pop authored
      llvm-svn: 148138
      9a8d528d
    • Sebastian Pop's avatar
      rename DefaultHostTriple into DefaultTargetTriple · 9d66d9e4
      Sebastian Pop authored
      llvm-svn: 148137
      9d66d9e4
    • Duncan Sands's avatar
      Try to clarify a little how exception handling works. · df9d7815
      Duncan Sands authored
      llvm-svn: 148136
      df9d7815
    • Richard Smith's avatar
      Refactor for clarity. · d7d5790c
      Richard Smith authored
      llvm-svn: 148135
      d7d5790c
    • Devang Patel's avatar
      · 7066d280
      Devang Patel authored
      Revert r148131, it was committed before it was ready.
      
      llvm-svn: 148134
      7066d280
    • Stepan Dyatkovskiy's avatar
      Cosmetic patch for r148132. · 0a920fa2
      Stepan Dyatkovskiy authored
      llvm-svn: 148133
      0a920fa2
    • Stepan Dyatkovskiy's avatar
      LoopUnswitch: All helper data that is collected during loop-unswitch... · cbcbdb23
      Stepan Dyatkovskiy authored
      LoopUnswitch: All helper data that is collected during loop-unswitch iterations was moved to separated class (LUAnalysisCache). 
      
      llvm-svn: 148132
      cbcbdb23
    • Devang Patel's avatar
      Refactor. · 7ecdc6d4
      Devang Patel authored
      llvm-svn: 148131
      7ecdc6d4
    • Devang Patel's avatar
      Add new test. · 5d85276e
      Devang Patel authored
      llvm-svn: 148128
      5d85276e
    • Pete Cooper's avatar
      Fixed comment. Thanks Duncan! · 97aafd5f
      Pete Cooper authored
      llvm-svn: 148123
      97aafd5f
    • Douglas Gregor's avatar
      Reinstate test case accidentally reverted by r148028 · ccff301b
      Douglas Gregor authored
      llvm-svn: 148118
      ccff301b
    • Douglas Gregor's avatar
      09a22f07
    • Alexander Potapenko's avatar
      This patch adds two methods, __asan_allocate_island and __asan_deallocate_island · bd53f597
      Alexander Potapenko authored
      and switches our interceptors to using them instead of the default
      vm_allocate-based approach used by mach_override_ptr.
      
      To simplify the code, a fixed memory mapping is used for the allocation pool --
      note that we can't mmap an arbitrary chunk of memory, because the shadow memory hasn't been mapped yet
      (for the reasons discussed in http://code.google.com/p/address-sanitizer/issues/detail?id=24, we cannot map the shadow earlier)
      
      The patch drops the program startup time from several second to half a second,
      which speeds up the execution of ASan tests noticeably.
      Because of the virtual memory size occupied by the programs it's hard
      to speed up the shutdown time, which would've also helped the tests.
      
      llvm-svn: 148116
      bd53f597
    • Alexander Potapenko's avatar
      Add __asan_mach_override_ptr_custom, which allows to inject a custom memory... · 9301db4b
      Alexander Potapenko authored
      Add __asan_mach_override_ptr_custom, which allows to inject a custom memory allocator into mach_override_ptr().
      
      llvm-svn: 148115
      9301db4b
    • Alexander Potapenko's avatar
      This patch moves the code reading /proc/self/environ into AsanGetEnv · 553c208d
      Alexander Potapenko authored
      in asan_linux.cc, because /proc is unavailable on Mac.
      Instead the Mac version of AsanGetEnv iterates over the array of
      environment variables obtained from _NSGetEnviron()
      
      llvm-svn: 148114
      553c208d
    • Evgeniy Stepanov's avatar
      Remove --hash-style from link command on Android. · 2ca1aa5a
      Evgeniy Stepanov authored
      Gnu hash is not supported by the Android loader.
      
      llvm-svn: 148113
      2ca1aa5a
    • Craig Topper's avatar
      Convert SHUFPD with the same register for both sources to PSHUFD if it would... · e52d86a7
      Craig Topper authored
      Convert SHUFPD with the same register for both sources to PSHUFD if it would prevent a register copy. Similar to SHUFPS, but requires the mask to be converted.
      
      llvm-svn: 148112
      e52d86a7
    • Greg Clayton's avatar
      Updated HTML with info for ${function.name-with-args} · 13d284b2
      Greg Clayton authored
      llvm-svn: 148111
      13d284b2
    • Greg Clayton's avatar
      Added a new thread and frame format that can be used to display a function · 6d3dbf51
      Greg Clayton authored
      name + arguments when the data is available. It seems to work really well, 
      but some more testing is needed before we make this on by default.
      
      The new function format name is:
      
       ${function.name-with-args}
      
      To see how to use these formats see the website:
      
          http://lldb.llvm.org/formats.html
      
      Here is a sample backtrace of debugging LLDB with LLDB using this new format
      value:
      
      (lldb) thread backtrace all
      * thread #1: tid = 0x2203, 0x00007fff88a17bca libsystem_kernel.dylib __psynch_cvwait + 10, stop reason = signal SIGINT, name = <lldb.driver.main-thread>, queue = com.apple.main-thread
          frame #0: 0x00007fff88a17bca libsystem_kernel.dylib __psynch_cvwait + 10
          frame #1: 0x00007fff884ae274 libsystem_c.dylib _pthread_cond_wait + 840
          frame #2: 0x00000001010778ea LLDB lldb_private::Condition::Wait(this=0x0000000104846770, mutex=0x0000000104846730, abstime=0x0000000000000000, timed_out=0x00007fff5fbfdea7) + 138 at Condition.cpp:92
          frame #3: 0x0000000101244c21 LLDB lldb_private::Predicate<bool>::WaitForValueEqualTo(this=0x0000000104846728, value=true, abstime=0x0000000000000000, timed_out=0x00007fff5fbfdea7) + 209 at Predicate.h:317
          frame #4: 0x0000000100f6eeb2 LLDB lldb_private::Listener::WaitForEventsInternal(this=0x0000000104846660, timeout=0x0000000000000000, broadcaster=0x0000000000000000, broadcaster_names=0x0000000000000000, num_broadcaster_names=0x00000000, event_type_mask=0x00000000, event_sp=0x00007fff5fbfe030) + 386 at Listener.cpp:388
          frame #5: 0x0000000100f6f231 LLDB lldb_private::Listener::WaitForEvent(this=0x0000000104846660, timeout=0x0000000000000000, event_sp=0x00007fff5fbfe030) + 81 at Listener.cpp:436
          frame #6: 0x0000000100098dcd LLDB lldb::SBListener::WaitForEvent(this=0x00007fff5fbff0f0, timeout_secs=0xffffffff, event=0x00007fff5fbfe430) + 685 at SBListener.cpp:181
          frame #7: 0x000000010000628c lldb Driver::MainLoop(this=0x00007fff5fbff620) + 5244 at Driver.cpp:1325
          frame #8: 0x0000000100006ca3 lldb main(argc=1, argv=0x00007fff5fbff758, envp=0x00007fff5fbff768) + 419 at Driver.cpp:1460
          frame #9: 0x0000000100000d54 lldb start + 52
      
        thread #3: tid = 0x2703, 0x00007fff88a17df2 libsystem_kernel.dylib select$DARWIN_EXTSN + 10, name = <lldb.comm.debugger.input>
          frame #0: 0x00007fff88a17df2 libsystem_kernel.dylib select$DARWIN_EXTSN + 10
          frame #1: 0x0000000100f3f072 LLDB lldb_private::ConnectionFileDescriptor::BytesAvailable(this=0x000000010524d040, timeout_usec=0x004c4b40, error_ptr=0x0000000105640a18) + 722 at ConnectionFileDescriptor.cpp:542
          frame #2: 0x0000000100f3e6dd LLDB lldb_private::ConnectionFileDescriptor::Read(this=0x000000010524d040, dst=0x0000000105640a60, dst_len=1024, timeout_usec=0x004c4b40, status=0x0000000105640a14, error_ptr=0x0000000105640a18) + 301 at ConnectionFileDescriptor.cpp:273
          frame #3: 0x0000000100f3b8f7 LLDB lldb_private::Communication::ReadFromConnection(this=0x0000000104846270, dst=0x0000000105640a60, dst_len=1024, timeout_usec=0x004c4b40, status=0x0000000105640a14, error_ptr=0x0000000105640a18) + 167 at Communication.cpp:317
          frame #4: 0x0000000100f3b197 LLDB lldb_private::Communication::ReadThread(p=0x0000000104846270) + 327 at Communication.cpp:344
          frame #5: 0x0000000101078923 LLDB ThreadCreateTrampoline(arg=0x00000001045f6650) + 227 at Host.cpp:549
          frame #6: 0x00007fff884aa8bf libsystem_c.dylib _pthread_start + 335
          frame #7: 0x00007fff884adb75 libsystem_c.dylib thread_start + 13
      
        thread #4: tid = 0x2803, 0x00007fff88a17df2 libsystem_kernel.dylib select$DARWIN_EXTSN + 10, name = <lldb.comm.driver.editline>
          frame #0: 0x00007fff88a17df2 libsystem_kernel.dylib select$DARWIN_EXTSN + 10
          frame #1: 0x0000000100f3f072 LLDB lldb_private::ConnectionFileDescriptor::BytesAvailable(this=0x0000000105700370, timeout_usec=0x004c4b40, error_ptr=0x00000001056c3a18) + 722 at ConnectionFileDescriptor.cpp:542
          frame #2: 0x0000000100f3e6dd LLDB lldb_private::ConnectionFileDescriptor::Read(this=0x0000000105700370, dst=0x00000001056c3a60, dst_len=1024, timeout_usec=0x004c4b40, status=0x00000001056c3a14, error_ptr=0x00000001056c3a18) + 301 at ConnectionFileDescriptor.cpp:273
          frame #3: 0x0000000100f3b8f7 LLDB lldb_private::Communication::ReadFromConnection(this=0x0000000105700000, dst=0x00000001056c3a60, dst_len=1024, timeout_usec=0x004c4b40, status=0x00000001056c3a14, error_ptr=0x00000001056c3a18) + 167 at Communication.cpp:317
          frame #4: 0x0000000100f3b197 LLDB lldb_private::Communication::ReadThread(p=0x0000000105700000) + 327 at Communication.cpp:344
          frame #5: 0x0000000101078923 LLDB ThreadCreateTrampoline(arg=0x0000000105700430) + 227 at Host.cpp:549
          frame #6: 0x00007fff884aa8bf libsystem_c.dylib _pthread_start + 335
          frame #7: 0x00007fff884adb75 libsystem_c.dylib thread_start + 13
      
        thread #5: tid = 0x2903, 0x00007fff88a17df2 libsystem_kernel.dylib select$DARWIN_EXTSN + 10, name = <lldb.comm.driver.editline_output>
          frame #0: 0x00007fff88a17df2 libsystem_kernel.dylib select$DARWIN_EXTSN + 10
          frame #1: 0x0000000100f3f072 LLDB lldb_private::ConnectionFileDescriptor::BytesAvailable(this=0x00000001057178f0, timeout_usec=0x004c4b40, error_ptr=0x0000000105980a18) + 722 at ConnectionFileDescriptor.cpp:542
          frame #2: 0x0000000100f3e6dd LLDB lldb_private::ConnectionFileDescriptor::Read(this=0x00000001057178f0, dst=0x0000000105980a60, dst_len=1024, timeout_usec=0x004c4b40, status=0x0000000105980a14, error_ptr=0x0000000105980a18) + 301 at ConnectionFileDescriptor.cpp:273
          frame #3: 0x0000000100f3b8f7 LLDB lldb_private::Communication::ReadFromConnection(this=0x0000000105717580, dst=0x0000000105980a60, dst_len=1024, timeout_usec=0x004c4b40, status=0x0000000105980a14, error_ptr=0x0000000105980a18) + 167 at Communication.cpp:317
          frame #4: 0x0000000100f3b197 LLDB lldb_private::Communication::ReadThread(p=0x0000000105717580) + 327 at Communication.cpp:344
          frame #5: 0x0000000101078923 LLDB ThreadCreateTrampoline(arg=0x00000001057179b0) + 227 at Host.cpp:549
          frame #6: 0x00007fff884aa8bf libsystem_c.dylib _pthread_start + 335
          frame #7: 0x00007fff884adb75 libsystem_c.dylib thread_start + 13
      
        thread #6: tid = 0x2a03, 0x00007fff88a18af2 libsystem_kernel.dylib read + 10, name = <lldb.driver.commandline_io>
          frame #0: 0x00007fff88a18af2 libsystem_kernel.dylib read + 10
          frame #1: 0x0000000100050c3b libedit.3.dylib read_init + 247
          frame #2: 0x0000000100050e96 libedit.3.dylib el_wgetc + 155
          frame #3: 0x000000010005115d libedit.3.dylib el_wgets + 578
          frame #4: 0x000000010005debc libedit.3.dylib el_gets + 37
          frame #5: 0x000000010000d409 lldb IOChannel::LibeditGetInput(this=0x0000000105700490, new_line=0x0000000105a03db0) + 89 at IOChannel.cpp:311
          frame #6: 0x000000010000d8b6 lldb IOChannel::Run(this=0x0000000105700490) + 806 at IOChannel.cpp:391
          frame #7: 0x000000010000d57d lldb IOChannel::IOReadThread(ptr=0x0000000105700490) + 29 at IOChannel.cpp:345
          frame #8: 0x0000000101078923 LLDB ThreadCreateTrampoline(arg=0x00000001057179f0) + 227 at Host.cpp:549
          frame #9: 0x00007fff884aa8bf libsystem_c.dylib _pthread_start + 335
          frame #10: 0x00007fff884adb75 libsystem_c.dylib thread_start + 13
      (lldb) 
      
      llvm-svn: 148110
      6d3dbf51
    • Craig Topper's avatar
    • Craig Topper's avatar
      Make X86 instruction selection use 256-bit VPXOR for build_vector of all ones... · cb7e13d7
      Craig Topper authored
      Make X86 instruction selection use 256-bit VPXOR for build_vector of all ones if AVX2 is enabled. This gives the ExeDepsFix pass a chance to choose FP vs int as appropriate. Also use v8i32 as the type for getZeroVector if AVX2 is enabled. This is consistent with SSE2 using prefering v4i32.
      
      llvm-svn: 148108
      cb7e13d7
    • NAKAMURA Takumi's avatar
      test/CodeGen/ARM/test-sharedidx.ll: Fix for -Asserts. · 1b845f71
      NAKAMURA Takumi authored
      llvm-svn: 148107
      1b845f71
    • Craig Topper's avatar
    • Andrew Trick's avatar
      Added the MachineSchedulerPass skeleton. · e77e84e4
      Andrew Trick authored
      llvm-svn: 148105
      e77e84e4
    • Andrew Trick's avatar
      whitespace · d9accbf1
      Andrew Trick authored
      llvm-svn: 148104
      d9accbf1
    • Andrew Trick's avatar
      wrong filename · 4d4fef23
      Andrew Trick authored
      llvm-svn: 148103
      4d4fef23
    • Andrew Trick's avatar
      80-col violation · b1be1aa8
      Andrew Trick authored
      llvm-svn: 148102
      b1be1aa8
    • Craig Topper's avatar
    • Raghesh Aloor's avatar
      Memaccess: Removing some unwanted code · ea6c99c1
      Raghesh Aloor authored
      llvm-svn: 148100
      ea6c99c1
    • Greg Clayton's avatar
      Bumped Xcode project version for lldb-105 and debugserver-164. · ae3e9927
      Greg Clayton authored
      llvm-svn: 148098
      ae3e9927
    • Greg Clayton's avatar
      <rdar://problem/10688864> · d66945ae
      Greg Clayton authored
      Fixed the new __apple_types to be able to accept a DW_TAG_structure_type
      forward declaration and then find a DW_TAG_class_type definition, or vice
      versa.
      
      llvm-svn: 148097
      d66945ae
    • Craig Topper's avatar
      Fix typo in PerformAddCombine that caused any vector type to be checked for... · 2aa07f83
      Craig Topper authored
      Fix typo in PerformAddCombine that caused any vector type to be checked for horizontal add/sub if AVX2 is enabled. This caused an assert to fail for non 128/256-bit vectors when done before type legalizing. Fixes PR11749.
      
      llvm-svn: 148096
      2aa07f83
    • Jakob Stoklund Olesen's avatar
      CodeInit was replaced by StringInit. · 6f2288b6
      Jakob Stoklund Olesen authored
      llvm-svn: 148095
      6f2288b6
    • Richard Smith's avatar
      PR11754: Reject non-static constexpr member functions in classes with virtual · 7971b69f
      Richard Smith authored
      base classes.
      
      llvm-svn: 148094
      7971b69f
    • Eli Friedman's avatar
      A base subobject type doesn't make sense for unions; don't try to compute it. ... · 09d272d0
      Eli Friedman authored
      A base subobject type doesn't make sense for unions; don't try to compute it.  Based on patch by Yin Ma.  Fixes PR11751.
      
      llvm-svn: 148093
      09d272d0
    • Jakob Stoklund Olesen's avatar
      Delete CodeInit and CodeRecTy from TableGen. · dd8fbf57
      Jakob Stoklund Olesen authored
      The code type was always identical to a string anyway. Now it is simply
      a synonym. The code literal syntax [{...}] is still valid.
      
      llvm-svn: 148092
      dd8fbf57
Loading