Skip to content
  1. Jul 14, 2017
  2. Jul 13, 2017
    • Kostya Serebryany's avatar
      Fix sanitizer build against latest glibc · c56d444b
      Kostya Serebryany authored
      Summary:
      libsanitizer doesn't build against latest glibc anymore, see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81066 for details.
      One of the changes is that stack_t changed from typedef struct sigaltstack { ... } stack_t; to typedef struct { ... } stack_t; for conformance reasons.
      And the other change is that the glibc internal __need_res_state macro is now ignored, so when doing
      ```
      #define __need_res_state
      #include <resolv.h>
      ```
      the effect is now the same as just
      ```
      #include <resolv.h>
      ```
      and thus one doesn't get just the
      ```
      struct __res_state { ... };
      ```
      definition, but newly also the
      ```
      extern struct __res_state *__res_state(void) __attribute__ ((__const__));
      ```
      prototype.  So __res_state is no longer a type, but a function.
      
      Reviewers: kcc, ygribov
      
      Reviewed By: kcc
      
      Subscribers: kubamracek
      
      Differential Revision: https://reviews.llvm.org/D35246
      
      llvm-svn: 307969
      c56d444b
    • Jakub Kuderski's avatar
      [Dominators] Rename Update.Arc to Update.Edge · d529467a
      Jakub Kuderski authored
      Update.Arc of type Arc caused a warning on some buildbots.
      
      llvm-svn: 307968
      d529467a
    • Matt Arsenault's avatar
      AMDGPU: Annotate call graph with used features · 6b93046f
      Matt Arsenault authored
      Previously this wouldn't detect used features indirectly
      used in callee functions.
      
      llvm-svn: 307967
      6b93046f
    • Shoaib Meenai's avatar
      [libc++] Mark string operator+ _LIBCPP_FUNC_VIS · 5b67cd35
      Shoaib Meenai authored
      It has an extern template instantiation declaration in the headers and a
      corresponding instantiation definition in the library, so we must mark
      it with _LIBCPP_FUNC_VIS to make it available outside the library.
      
      This doesn't cause any ABI changes as-is since we don't build libc++
      with hidden visibility (so the function is exported anyway). It's needed
      for building libc++ with hidden visibility, however.
      
      Clarify the Windows behavior for extern function templates while I'm
      here, since this exercises that behavior.
      
      llvm-svn: 307966
      5b67cd35
    • Shoaib Meenai's avatar
      [libc++] Remove unused _LIBCPP_FUNC_VIS_ONLY · c44edbcc
      Shoaib Meenai authored
      This has been unused since r282644.
      
      llvm-svn: 307965
      c44edbcc
    • Paul Robinson's avatar
      [PS4] Disable LTO unit features under ThinLTO, like for Darwin. · d23f2a8a
      Paul Robinson authored
      llvm-svn: 307964
      d23f2a8a
    • Jakub Kuderski's avatar
      [Dominators] Add CFGBuilder testing utility · eb370ade
      Jakub Kuderski authored
      Summary:
      This patch introduces a new testing utility for building and modifying CFG -- CFGBuilder. The primary use case for the utility is testing the upcoming incremental dominator tree update API.
      
      The current design provides a simple mechanism of constructing arbitrary graphs and then applying series of updates to them. CFGBuilder takes care of creating empty functions, connecting and disconnecting basic blocks. Under the hood it uses SwitchInst and UnreachableInst.
      
      It will be also possible to create a thin wrapper over CFGBuilder for parsing string input and to hook it up to other textual tools (e.g. opt used with FileCheck).
      
      Reviewers: dberlin, sanjoy, grosser, dblaikie
      
      Reviewed By: dblaikie
      
      Subscribers: davide, mgorny, llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D34798
      
      llvm-svn: 307960
      eb370ade
    • Lang Hames's avatar
      Use getNameAsString instead of getName to get method names when dumping · 971add5f
      Lang Hames authored
      overrides:  getName can fail if the decl's name isn't a simple identifier.
      
      This is a more general replacement for the fix in r305860.
      
      llvm-svn: 307959
      971add5f
    • Kostya Kortchinsky's avatar
      [scudo] Do not grab a cache for secondary allocation & per related changes · b44364dd
      Kostya Kortchinsky authored
      Summary:
      Secondary backed allocations do not require a cache. While it's not necessary
      an issue when each thread has its cache, it becomes one with a shared pool of
      caches (Android), as a Secondary backed allocation or deallocation holds a
      cache that could be useful to another thread doing a Primary backed allocation.
      
      We introduce an additional PRNG and its mutex (to avoid contention with the
      Fallback one for Primary allocations) that will provide the `Salt` needed for
      Secondary backed allocations.
      
      I changed some of the code in a way that feels more readable to me (eg: using
      some values directly rather than going  through ternary assigned variables,
      using directly `true`/`false` rather than `FromPrimary`). I will let reviewers
      decide if it actually is.
      
      An additional change is to mark `CheckForCallocOverflow` as `UNLIKELY`.
      
      Reviewers: alekseyshl
      
      Reviewed By: alekseyshl
      
      Subscribers: llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D35358
      
      llvm-svn: 307958
      b44364dd
Loading