Skip to content
  1. Mar 26, 2010
  2. Mar 25, 2010
  3. Mar 24, 2010
  4. Mar 14, 2010
  5. Mar 06, 2010
  6. Jan 27, 2010
    • Jeffrey Yasskin's avatar
      Kill ModuleProvider and ghost linkage by inverting the relationship between · 091217be
      Jeffrey Yasskin authored
      Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
      GlobalValues now, and doesn't provide modules, it's renamed to
      "GVMaterializer". Code that used to need a ModuleProvider to materialize
      Functions can now materialize the Functions directly. Functions no longer use a
      magic linkage to record that they're materializable; they simply ask the
      GVMaterializer.
      
      Because the C ABI must never change, we can't remove LLVMModuleProviderRef or
      the functions that refer to it. Instead, because Module now exposes the same
      functionality ModuleProvider used to, we store a Module* in any
      LLVMModuleProviderRef and translate in the wrapper methods.  The bindings to
      other languages still use the ModuleProvider concept.  It would probably be
      worth some time to update them to follow the C++ more closely, but I don't
      intend to do it.
      
      Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735.
      
      llvm-svn: 94686
      091217be
  7. Nov 30, 2009
    • Bob Wilson's avatar
      Remove isProfitableToDuplicateIndirectBranch target hook. It is profitable · 505ddaa4
      Bob Wilson authored
      for all the processors where I have tried it, and even when it might not help
      performance, the cost is quite low.  The opportunities for duplicating
      indirect branches are limited by other factors so code size does not change
      much due to tail duplicating indirect branches aggressively.
      
      llvm-svn: 90144
      505ddaa4
  8. Nov 24, 2009
    • Anton Korobeynikov's avatar
      Materialize global addresses via movt/movw pair, this is always better · 25229086
      Anton Korobeynikov authored
      than doing the same via constpool:
      1. Load from constpool costs 3 cycles on A9, movt/movw pair - just 2.
      2. Load from constpool might stall up to 300 cycles due to cache miss.
      3. Movt/movw does not use load/store unit.
      4. Less constpool entries => better compiler performance.
      
      This is only enabled on ELF systems, since darwin does not have needed
      relocations (yet).
      
      llvm-svn: 89720
      25229086
  9. Nov 18, 2009
  10. Nov 13, 2009
  11. Nov 10, 2009
  12. Oct 16, 2009
  13. Oct 02, 2009
  14. Oct 01, 2009
  15. Sep 30, 2009
  16. Sep 03, 2009
  17. Aug 29, 2009
  18. Aug 05, 2009
  19. Aug 04, 2009
  20. Aug 03, 2009
  21. Aug 01, 2009
  22. Jun 22, 2009
  23. Jun 19, 2009
  24. Jun 09, 2009
  25. Jun 01, 2009
  26. May 30, 2009
  27. May 23, 2009
  28. Mar 09, 2009
  29. Mar 08, 2009
  30. Dec 29, 2007
  31. Feb 23, 2007
  32. Feb 13, 2007
  33. Jan 19, 2007
Loading