Skip to content
  1. Jan 12, 2009
  2. Jan 11, 2009
  3. Jan 09, 2009
  4. Jan 08, 2009
    • Dale Johannesen's avatar
      Do not inline functions with (dynamic) alloca into · b48fc71f
      Dale Johannesen authored
      functions that don't already have a (dynamic) alloca.
      Dynamic allocas cause inefficient codegen and we shouldn't
      propagate this (behavior follows gcc).  Two existing tests
      assumed such inlining would be done; they are hacked by
      adding an alloca in the caller, preserving the point of
      the tests.
      
      llvm-svn: 61946
      b48fc71f
    • Chris Lattner's avatar
      This implements the second half of the fix for PR3290, handling · c518dfd1
      Chris Lattner authored
      loads from allocas that cover the entire aggregate.  This handles
      some memcpy/byval cases that are produced by llvm-gcc.  This triggers
      a few times in kc++ (with std::pair<std::_Rb_tree_const_iterator
      <kc::impl_abstract_phylum*>,bool>) and once in 176.gcc (with %struct..0anon).
      
      llvm-svn: 61915
      c518dfd1
  5. Jan 07, 2009
  6. Jan 06, 2009
  7. Jan 05, 2009
  8. Jan 04, 2009
  9. Jan 03, 2009
  10. Jan 02, 2009
    • Duncan Sands's avatar
      Load tracking means that the value analyzed may · c7affb0a
      Duncan Sands authored
      not have pointer type.  In particular, it may
      be the condition argument for a select or a GEP
      index.  While I was unable to construct a testcase
      for which some bits of the original pointer are
      captured due to one of these, it's very very close
      to being possible - so play safe and exclude these
      possibilities.
      
      llvm-svn: 61580
      c7affb0a
    • Duncan Sands's avatar
      When calculating 'nocapture' argument attributes, allow · b193a37c
      Duncan Sands authored
      the argument to be stored to an alloca by tracking uses
      of the alloca.  This occurs 4 times (out of 7121, 0.05%)
      in MultiSource/Applications, so may not be worth it.  On
      the other hand, it is easy to do and fairly cheap.  The
      functions it helps are: W_addcom and W_addlit in spiff;
      process_args (argv) in d (make_dparser); ercPixConcealIMB
      in JM/ldecod.
      
      llvm-svn: 61570
      b193a37c
    • Duncan Sands's avatar
      Improve comments and reorganize a bit - no functionality · cefc8604
      Duncan Sands authored
      change.
      
      llvm-svn: 61569
      cefc8604
Loading