Skip to content
  1. Aug 28, 2012
  2. Aug 01, 2012
  3. Jun 07, 2012
  4. Jun 01, 2012
    • Hans Wennborg's avatar
      Implement the local-dynamic TLS model for x86 (PR3985) · 789acfb6
      Hans Wennborg authored
      This implements codegen support for accesses to thread-local variables
      using the local-dynamic model, and adds a clean-up pass so that the base
      address for the TLS block can be re-used between local-dynamic access on
      an execution path.
      
      llvm-svn: 157818
      789acfb6
  5. May 18, 2012
    • Jim Grosbach's avatar
      Refactor data-in-code annotations. · 4b63d2ae
      Jim Grosbach authored
      Use a dedicated MachO load command to annotate data-in-code regions.
      This is the same format the linker produces for final executable images,
      allowing consistency of representation and use of introspection tools
      for both object and executable files.
      
      Data-in-code regions are annotated via ".data_region"/".end_data_region"
      directive pairs, with an optional region type.
      
      data_region_directive := ".data_region" { region_type }
      region_type := "jt8" | "jt16" | "jt32" | "jta32"
      end_data_region_directive := ".end_data_region"
      
      The previous handling of ARM-style "$d.*" labels was broken and has
      been removed. Specifically, it didn't handle ARM vs. Thumb mode when
      marking the end of the section.
      
      rdar://11459456
      
      llvm-svn: 157062
      4b63d2ae
  6. May 11, 2012
  7. Mar 17, 2012
  8. Feb 16, 2012
  9. Feb 11, 2012
  10. Feb 05, 2012
  11. Jan 19, 2012
  12. Jan 13, 2012
  13. Nov 29, 2011
  14. Nov 19, 2011
  15. Oct 26, 2011
    • Rafael Espindola's avatar
      This commit introduces two fake instructions MORESTACK_RET and · 66393c12
      Rafael Espindola authored
      MORESTACK_RET_RESTORE_R10; which are lowered to a RET and a RET
      followed by a MOV respectively.  Having a fake instruction prevents
      the verifier from seeing a MachineBasicBlock end with a
      non-terminator (MOV).  It also prevents the rather eccentric case of a
      MachineBasicBlock ending with RET but having successors nevertheless.
      
      Patch by Sanjoy Das.
      
      llvm-svn: 143062
      66393c12
  16. Oct 05, 2011
  17. Sep 29, 2011
  18. Sep 07, 2011
  19. Jul 26, 2011
  20. Jul 15, 2011
  21. May 20, 2011
  22. May 19, 2011
  23. Dec 09, 2010
  24. Nov 28, 2010
  25. Nov 15, 2010
  26. Nov 14, 2010
  27. Oct 26, 2010
  28. Oct 08, 2010
  29. Oct 01, 2010
    • Dale Johannesen's avatar
      Massive rewrite of MMX: · dd224d23
      Dale Johannesen authored
      The x86_mmx type is used for MMX intrinsics, parameters and
      return values where these use MMX registers, and is also
      supported in load, store, and bitcast.
      
      Only the above operations generate MMX instructions, and optimizations
      do not operate on or produce MMX intrinsics. 
      
      MMX-sized vectors <2 x i32> etc. are lowered to XMM or split into
      smaller pieces.  Optimizations may occur on these forms and the
      result casted back to x86_mmx, provided the result feeds into a
      previous existing x86_mmx operation.
      
      The point of all this is prevent optimizations from introducing
      MMX operations, which is unsafe due to the EMMS problem.
      
      llvm-svn: 115243
      dd224d23
  30. Sep 08, 2010
  31. Aug 17, 2010
    • Anton Korobeynikov's avatar
      More fixes for win64: · 231ab847
      Anton Korobeynikov authored
        - Do not clobber al during variadic calls, this is AMD64 ABI-only feature
        - Emit wincall64, where necessary
      Patch by Cameron Esfahani!
      
      llvm-svn: 111289
      231ab847
  32. Aug 16, 2010
Loading