[FFmpeg-devel] [PATCH]Change check_exec_crash in configure

Måns Rullgård mans
Sat Mar 14 13:43:38 CET 2009


Carl Eugen Hoyos <cehoyos at rainbow.studorg.tuwien.ac.at> writes:

> Hi!
>
> Attached patch allows configure to enable ebp usage for icc compilations.
>
> Ok to apply?
>
> Carl Eugen
>
> Index: configure
> ===================================================================
> --- configure	(revision 17954)
> +++ configure	(working copy)
> @@ -670,6 +670,9 @@
>  static void sighandler(int sig){
>      raise(SIGTERM);
>  }
> +__attribute__((noinline)) void foo() {

This is a gcc extension.  We should avoid using those in generic
tests.

> +    { $code }
> +}
>  int main(void){
>      signal(SIGILL, sighandler);
>      signal(SIGFPE, sighandler);
> @@ -677,7 +680,9 @@
>  #ifdef SIGBUS
>      signal(SIGBUS, sighandler);
>  #endif
> -    { $code }
> +    volatile int i=0;

Declaration not at start of block.

> +    foo();
> +    return i;
>  }
>  EOF

Does the test work if the code looks like this instead:

  int i = 0;
  foo(&i);
  return i;

Making a local variable volatile isn't really meaningful.

>  }
> @@ -1832,11 +1837,9 @@
>      # if the base pointer is used to access it because the
>      # base pointer is cleared in the inline assembly code.
>      check_exec_crash <<EOF && enable ebp_available
> -    volatile int i=0;
>      __asm__ volatile (
>          "xorl %%ebp, %%ebp"
>      ::: "%ebp");
> -    return i;
>  EOF
>
>      # check wether EBX is available on x86

-- 
M?ns Rullg?rd
mans at mansr.com




More information about the ffmpeg-devel mailing list