comparison configure @ 29650:df76c6b66c8e

Add a check for availability of ebx register, needed for architectures that require PIE like Haiku or 64 bit OSX.
author reimar
date Sat, 19 Sep 2009 13:18:48 +0000
parents d1461d932ad2
children 151a1c2a5658
comparison
equal deleted inserted replaced
29649:d1461d932ad2 29650:df76c6b66c8e
2551 } 2551 }
2552 EOF 2552 EOF
2553 cc_check && ten_operands=yes && def_ten_operands='#define HAVE_TEN_OPERANDS 1' 2553 cc_check && ten_operands=yes && def_ten_operands='#define HAVE_TEN_OPERANDS 1'
2554 echores $ten_operands 2554 echores $ten_operands
2555 2555
2556 echocheck "ebx availability"
2557 ebx_available=no
2558 def_ebx_available='#define HAVE_EBX_AVAILABLE 0'
2559 cat > $TMPC << EOF
2560 int main(void) {
2561 int x;
2562 __asm__ volatile(
2563 "xor %0, %0"
2564 :"=b"(x)
2565 // just adding ebx to clobber list seems unreliable with some
2566 // compilers, e.g. Haiku's gcc 2.95
2567 );
2568 return 0;
2569 }
2570 EOF
2571 cc_check && ebx_available=yes && def_ebx_available='#define HAVE_EBX_AVAILABLE 1'
2572 echores $ebx_available
2573
2556 echocheck "yasm" 2574 echocheck "yasm"
2557 if test -z "$YASMFLAGS" ; then 2575 if test -z "$YASMFLAGS" ; then
2558 if darwin ; then 2576 if darwin ; then
2559 x86_64 && objformat="macho64" || objformat="macho" 2577 x86_64 && objformat="macho64" || objformat="macho"
2560 elif win32 ; then 2578 elif win32 ; then
8900 #define CONFIG_GOLOMB 1 8918 #define CONFIG_GOLOMB 1
8901 #define CONFIG_MDCT 1 8919 #define CONFIG_MDCT 1
8902 #define CONFIG_RDFT 1 8920 #define CONFIG_RDFT 1
8903 8921
8904 /* Use these registers in FFmpeg x86 inline asm. No proper detection yet. */ 8922 /* Use these registers in FFmpeg x86 inline asm. No proper detection yet. */
8905 #define HAVE_EBX_AVAILABLE 1 8923 $def_ebx_available
8906 #ifndef MP_DEBUG 8924 #ifndef MP_DEBUG
8907 #define HAVE_EBP_AVAILABLE 1 8925 #define HAVE_EBP_AVAILABLE 1
8908 #else 8926 #else
8909 #define HAVE_EBP_AVAILABLE 0 8927 #define HAVE_EBP_AVAILABLE 0
8910 #endif 8928 #endif