1. 14 Mar, 2014 9 commits
  2. 02 Mar, 2014 1 commit
  3. 25 Feb, 2014 1 commit
  4. 24 Feb, 2014 2 commits
    • Erik de Castro Lopo's avatar
      Fix typos in comments. · b334fb2a
      Erik de Castro Lopo authored
      Patch-from: lvqcl <lvqcl.mail@gmail.com>
      b334fb2a
    • Erik de Castro Lopo's avatar
      Don't use intrinsics when they are slower. · cf0e42ae
      Erik de Castro Lopo authored
      More thorough en-/decoding tests show that sometimes the functions
      that use intrinsics are slower (or not really faster) than old
      plain C functions.
      
      After this patch the encoder doesn't use these new functions
      when their usefulness is questionable.
      
      Patch-from: lvqcl <lvqcl.mail@gmail.com>
      cf0e42ae
  5. 03 Feb, 2014 1 commit
  6. 01 Feb, 2014 7 commits
  7. 31 Jan, 2014 2 commits
  8. 30 Jan, 2014 4 commits
  9. 17 Jan, 2014 1 commit
  10. 07 Jan, 2014 3 commits
    • Erik de Castro Lopo's avatar
      libFLAC : Add asm versions for two _wide() functions. · 7e927893
      Erik de Castro Lopo authored
      GCC generates slow ia32 code for FLAC__lpc_restore_signal_wide() and
      FLAC__lpc_compute_residual_from_qlp_coefficients_wide() so 24-bit
      encoding/decoding is slower for GCC compile than for MSVS or ICC
      compile. This patch adds ia32 asm versions of these functions.
      
      Patch-from: lvqcl <lvqcl.mail@gmail.com>
      7e927893
    • Erik de Castro Lopo's avatar
      libFLAC/ia32/lpc_asm.nasm : Match calls and returns. · 8e4a45ac
      Erik de Castro Lopo authored
      According to Agner Fog, "...you must make sure that all calls
      are matched with returns. Never jump out of a subroutine without
      a return and never use a return as an indirect jump."
      
      (see paragraph 3.15 in microarchitecture.pdf and
      examples 3.5a and 3.5b in optimizing_assembly.pdf)
      
      Patch-from: lvqcl <lvqcl.mail@gmail.com>
      8e4a45ac
    • Erik de Castro Lopo's avatar
      Add FLAC__ prefix to precompute_partition_info_sums.... · 6cd8b424
      Erik de Castro Lopo authored
      Most non-static functions have FLAC__ prefix, but they were missing
      from the precompute_partition_info_sums_* functions.
      
      Patch-from: lvqcl <lvqcl.mail@gmail.com>
      6cd8b424
  11. 19 Dec, 2013 1 commit
  12. 10 Oct, 2013 3 commits
  13. 04 Oct, 2013 1 commit
    • Erik de Castro Lopo's avatar
      Vcproj file updates. · a1abfa3d
      Erik de Castro Lopo authored
      rplaces
           OutputDirectory="..\..\..\..\objs\debug\bin"
      with
           OutputDirectory="$(SolutionDir)objs\$(ConfigurationName)\bin
      and so on.
      
      Rmoves
           OutputFile="..\..\objs\debug\lib\$(ProjectName).lib
      when possible.
      
      Also, in the current version "Whole program optimization" compiler option
      is set, but the corresponding linker option isn't. From MSDN:
         "If you do not explicitly specify /LTCG when you pass /GL or MSIL modules
         to the linker, the linker eventually detects this and restarts the link
         by using /LTCG. Explicitly specify /LTCG when you pass /GL and MSIL modules
         to the linker for the fastest possible build performance."
      So /LTCG option was added too.
      
      Debug build now uses libogg_static.lib from .\objs\debug\lib folder.
      (the dependency for both release and debug is
          objs\$(ConfigurationName)\lib\libogg_static.lib)
      
      Patch-from: lvqcl <lvqcl.mail@gmail.com>
      a1abfa3d
  14. 03 Oct, 2013 1 commit
    • Erik de Castro Lopo's avatar
      Improve x86 instrinsic implementation. · ecd0acba
      Erik de Castro Lopo authored
      * Splits lpc_x86intrin.c to lpc_intrin_sse.c and lpc_intrin_sse2.c
      * Add FLAC__lpc_compute_residual_from_qlp_coefficients_intrin_sse2()
        function to lpc_intrin_sse2.c
      * Add lpc_intrin_sse41.c with two ..._wide_intrin_sse41() functions
        (useful for 24-bit en-/decoding)
      * Add precompute_partition_info_sums_intrin_sse2() / ...ssse3() and
        disables precompute_partition_info_sums_32bit_asm_ia32_().
        SSE2 version uses 4 SSE2 instructions instead of 1 SSSE3 instruction
        PABSD so it is slightly slower.
      
      Patch-from: lvqcl <lvqcl.mail@gmail.com>
      ecd0acba
  15. 26 Sep, 2013 2 commits
  16. 25 Sep, 2013 1 commit