Skip to content
  1. Jul 03, 2013
  2. Jul 02, 2013
    • Manman Ren's avatar
      Debug Info: cleanup · d0e67aa1
      Manman Ren authored
      llvm-svn: 185456
      d0e67aa1
    • Tobias Grosser's avatar
      IRVerifier: Correctly check attribute types · effd02c9
      Tobias Grosser authored
      Add missing parenthesis such that all and not only the very first attribute
      is checked.
      
      Testing this piece of code is not possible with an LLVM-IR test file, as the
      LLVM-IR parser has a similar check such that the wrong IR does not even arrive
      at the verifier.
      
      llvm-svn: 185408
      effd02c9
  3. Jul 01, 2013
  4. Jun 30, 2013
  5. Jun 29, 2013
  6. Jun 28, 2013
  7. Jun 27, 2013
  8. Jun 26, 2013
  9. Jun 25, 2013
  10. Jun 24, 2013
  11. Jun 22, 2013
  12. Jun 21, 2013
  13. Jun 19, 2013
  14. Jun 18, 2013
  15. Jun 13, 2013
    • Derek Schuff's avatar
      Fix DeleteDeadVarargs not to crash on functions referenced by BlockAddresses · ec9dc01b
      Derek Schuff authored
      This pass was assuming that if hasAddressTaken() returns false for a
      function, the function's only uses are call sites.  That's not true
      because there can be references by BlockAddresses too.
      
      Fix the pass to handle this case.  Fix
      BlockAddress::replaceUsesOfWithOnConstant() to allow a function's type
      to be changed by RAUW'ing the function with a bitcast of the recreated
      function.
      
      Patch by Mark Seaborn.
      
      llvm-svn: 183933
      ec9dc01b
  16. Jun 11, 2013
    • Rafael Espindola's avatar
      Require members of llvm.used to be named. · 70a729df
      Rafael Espindola authored
      The effect of llvm.used is to introduce an invisible reference, so this seems
      a reasonable restriction. It will be used to provide an easy ordering of
      the entries in llvm.used.
      
      llvm-svn: 183743
      70a729df
  17. Jun 07, 2013
  18. Jun 01, 2013
  19. May 29, 2013
  20. May 28, 2013
  21. May 24, 2013
    • Diego Novillo's avatar
      Add a new function attribute 'cold' to functions. · c6399539
      Diego Novillo authored
      Other than recognizing the attribute, the patch does little else.
      It changes the branch probability analyzer so that edges into
      blocks postdominated by a cold function are given low weight.
      
      Added analysis and code generation tests.  Added documentation for the
      new attribute.
      
      llvm-svn: 182638
      c6399539
    • Daniel Malea's avatar
      Re-implement DebugIR in a way that does not subclass AssemblyWriter: · fddddbea
      Daniel Malea authored
      - move AsmWriter.h from public headers into lib
      - marked all AssemblyWriter functions as non-virtual; no need to override them
      - DebugIR now "plugs into" AssemblyWriter with an AssemblyAnnotationWriter helper
      - exposed flags to control hiding of a) debug metadata b) debug intrinsic calls
      
      C/R: Paul Redmond
      
      llvm-svn: 182617
      fddddbea
  22. May 23, 2013
    • David Blaikie's avatar
      Solidify the assumption that a DW_TAG_subprogram's type is a DW_TAG_subroutine_type · 5174c84a
      David Blaikie authored
      There were bits & pieces of code lying around that may've given the
      impression that debug info metadata supported the possibility that a
      subprogram's type could be specified by a non-subroutine type describing
      the return type of a void function. This support was incomplete &
      unnecessary. Asserts & API have been changed to make the desired usage
      more clear.
      
      llvm-svn: 182532
      5174c84a
  23. May 22, 2013
  24. May 21, 2013
  25. May 18, 2013
  26. May 16, 2013
  27. May 15, 2013
    • Jakob Stoklund Olesen's avatar
      Speed up Value::isUsedInBasicBlock() for long use lists. · 0925b24d
      Jakob Stoklund Olesen authored
      This is expanding Ben's original heuristic for short basic blocks to
      also work for longer basic blocks and huge use lists.
      
      Scan the basic block and the use list in parallel, terminating the
      search when the shorter list ends. In almost all cases, either the basic
      block or the use list is short, and the function returns quickly.
      
      In one crazy test case with very long use chains, CodeGenPrepare runs
      400x faster. When compiling ARMDisassembler.cpp it is 5x faster.
      
      <rdar://problem/13840497>
      
      llvm-svn: 181851
      0925b24d
  28. May 10, 2013
  29. May 08, 2013
    • Daniel Malea's avatar
      Add DebugIR pass -- emits IR file and replace source lines with IR lines in MD · 3c5bed16
      Daniel Malea authored
      - requires existing debug information to be present
      - fixes up file name and line number information in metadata
      - emits a "<orig_filename>-debug.ll" succinct IR file (without !dbg metadata
        or debug intrinsics) that can be read by a debugger
      - initialize pass in opt tool to enable the "-debug-ir" flag
      - lit tests to follow
      
      llvm-svn: 181467
      3c5bed16
    • Daniel Malea's avatar
      Pull up AssemblyWriter interface into header to allow subclassing · ded9f932
      Daniel Malea authored
      - made all functions virtual so that subclasses can specialize them
      - add printInstructionLine so that subclasses can choose whether or not to
        print the newline character (without having to implement printBasicBlock()
      - added a second constructor to AssemblyWriter that does not require a
        SlotTracker, as required in order to keep the SlotTracker helper class outside
        AsmWriter.h and buried in the implementation.
      
      llvm-svn: 181466
      ded9f932
  30. May 07, 2013
Loading