Skip to content
Snippets Groups Projects
  1. Jun 14, 2015
  2. Feb 27, 2015
  3. Sep 22, 2014
  4. Sep 04, 2014
    • Reid Kleckner's avatar
      MS inline asm: Allow __asm blocks to set a return value · 3be1b082
      Reid Kleckner authored
      If control falls off the end of a function after an __asm block, MSVC
      assumes that the inline assembly filled the EAX and possibly EDX
      registers with an appropriate return value. This functionality is used
      in inline functions returning 64-bit integers in system headers, so we
      need some amount of compatibility.
      
      This is implemented in Clang by adding extra output constraints to every
      inline asm block, and storing the resulting output registers into the
      return value slot. If we see an asm block somewhere in the function
      body, we emit a normal epilogue instead of marking the end of the
      function with a return type unreachable.
      
      Normal returns in functions not using this functionality will overwrite
      the return value slot, and in most cases LLVM should be able to
      eliminate the dead stores.
      
      Fixes PR17201.
      
      Reviewed By: majnemer
      
      Differential Revision: http://reviews.llvm.org/D5177
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@217187 91177308-0d34-0410-b5e6-96231b3b80d8
      3be1b082
    • Reid Kleckner's avatar
      MS inline asm: Add a test for xgetbv clobbers · 5ac034cc
      Reid Kleckner authored
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@217174 91177308-0d34-0410-b5e6-96231b3b80d8
      5ac034cc
  5. Aug 01, 2014
  6. Jul 31, 2014
  7. Jul 25, 2014
  8. Jul 18, 2014
  9. Jul 17, 2014
  10. Jul 06, 2014
  11. Jul 05, 2014
  12. Mar 27, 2014
  13. Mar 06, 2014
  14. Jan 28, 2014
  15. Dec 10, 2013
  16. Dec 04, 2013
  17. Sep 04, 2013
  18. Apr 19, 2013
  19. Apr 17, 2013
  20. Apr 12, 2013
  21. Apr 10, 2013
  22. Apr 08, 2013
  23. Apr 05, 2013
  24. Mar 27, 2013
  25. Mar 19, 2013
  26. Feb 25, 2013
  27. Feb 22, 2013
  28. Feb 20, 2013
  29. Feb 15, 2013
  30. Feb 13, 2013
Loading