1. 22 Aug, 2012 1 commit
    • Mans Rullgard's avatar
      x86: remove FASTDIV inline asm · 5b170c0b
      Mans Rullgard authored
      GCC 4.3 and later do the right thing with the plain C code.  Earlier
      versions in 32-bit mode generate one extra instruction, needlessly
      zeroing what would be the high half of the shifted value.  At least
      two gcc configurations miscompile the inline asm in some situations.
      
      In 64-bit mode, all gcc versions generate imul r64, r64 followed by
      shr.  On Intel i7 and later, this imul is faster 32-bit mul.  On
      older Intel and all AMD, it is slightly slower.  On Atom it is much
      slower.
      
      Considering where the FASTDIV macro is used, any overall negative
      performance impact of this change should be negligible.  If anyone
      cares, they should file a bug against gcc and get the instruction
      selection fixed.
      Signed-off-by: 's avatarMans Rullgard <mans@mansr.com>
      5b170c0b
  2. 21 Aug, 2012 8 commits
  3. 20 Aug, 2012 5 commits
  4. 19 Aug, 2012 15 commits
  5. 18 Aug, 2012 10 commits
  6. 17 Aug, 2012 1 commit