Skip to content
  1. Oct 08, 2012
  2. Oct 07, 2012
  3. Oct 06, 2012
    • Benjamin Kramer's avatar
      Expose __builtin_bswap16. · a801f4a8
      Benjamin Kramer authored
      GCC has always supported this on PowerPC and 4.8 supports it on all platforms,
      so it's a good idea to expose it in clang too. LLVM supports this on all targets.
      
      llvm-svn: 165362
      a801f4a8
    • Jordan Rose's avatar
      ParentMap: Restore the ability to update an existing map. · adb5354c
      Jordan Rose authored
      The Clang ASTs are a DAG, not a pure tree. However, ParentMap has to
      choose a single parent for each object. In the main (only?) cases in
      which the AST forms a DAG, it protects from multiple traversal by using
      OpaqueValueExprs. Previously, ParentMap would just unconditionally look
      through all OpaqueValueExprs when building its map.
      
      In order to make this behavior better for the analyzer's diagnostics,
      ParentMap was changed to not set a statement's parent if there already
      was one in the map. However, ParentMap is supposed to allow updating
      existing mappings by calling addStmt once again. This change makes the
      "transparency" of OpaqueValueExprs explicit, and disables it when it
      is not desired, rather than checking the current contents of the map.
      
      This new code seems like a big change, but it should actually have
      essentially the same performance as before. Only OpaqueValueExprs and
      their users (PseudoObjectExpr and BinaryConditionalOperator) will
      have any different behavior.
      
      There should be no user-visible functionality change, though a test
      has been added for the current behavior of BinaryConditionalOperator
      source locations and accompanying Xcode arrows (which are not so great...).
      
      llvm-svn: 165355
      adb5354c
    • Jordan Rose's avatar
      [analyzer] Handle implicit statements used for end-of-path nodes' source locs. · c8a78a37
      Jordan Rose authored
      Some implicit statements, such as the implicit 'self' inserted for "free"
      Objective-C ivar access, have invalid source locations. If one of these
      statements is the location where an issue is reported, we'll now look at
      the enclosing statements for a valid source location.
      
      <rdar://problem/12446776>
      
      llvm-svn: 165354
      c8a78a37
    • Alex Rosenberg's avatar
      Propagate calling convention for aliases and weakrefs. · ba036126
      Alex Rosenberg authored
      llvm-svn: 165343
      ba036126
    • DeLesley Hutchins's avatar
  4. Oct 05, 2012
  5. Oct 04, 2012
  6. Oct 03, 2012
Loading