Репозитории ALT
S: | 0.15.1b-alt9 |
5.1: | 0.15.1b-alt4 |
4.1: | 0.15.1b-alt3 |
4.0: | 0.15.1b-alt3 |
3.0: | 0.15.1b-alt2 |
Группа :: Звук
Пакет: libmad
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: libmad-0.15.1b-speedup.patch
Скачать
Скачать
diff -ur libmad-0.15.1b.orig/fixed.h libmad-0.15.1b/fixed.h
--- libmad-0.15.1b.orig/fixed.h 2004-02-17 05:02:03 +0300
+++ libmad-0.15.1b/fixed.h 2004-02-18 22:30:37 +0300
@@ -202,9 +202,11 @@
: "0" (lo), "1" (hi), \
"ir" (1L << (MAD_F_SCALEBITS - 1)), "ir" (0) \
: "cc"); \
- asm ("shrdl %3,%2,%1" \
+ asm ("shrl %3,%1\n\t" \
+ "shll %4,%2\n\t" \
+ "orl %2,%1\n\t" \
: "=rm" (__result) \
- : "0" (__lo_), "r" (__hi_), "I" (MAD_F_SCALEBITS) \
+ : "0" (__lo_), "r" (__hi_), "I" (MAD_F_SCALEBITS), "I" (32-MAD_F_SCALEBITS) \
: "cc"); \
__result; \
})
@@ -226,9 +228,11 @@
# else
# define mad_f_scale64(hi, lo) \
({ mad_fixed_t __result; \
- asm ("shrdl %3,%2,%1" \
+ asm ("shrl %3,%1\n\t" \
+ "shll %4,%2\n\t" \
+ "orl %2,%1\n\t" \
: "=rm" (__result) \
- : "0" (lo), "r" (hi), "I" (MAD_F_SCALEBITS) \
+ : "0" (lo), "r" (hi), "I" (MAD_F_SCALEBITS), "I" (32-MAD_F_SCALEBITS) \
: "cc"); \
__result; \
})