[FFmpeg-devel] [PATCH]Force enable ebp_available for icc

Reimar Döffinger Reimar.Doeffinger
Fri Mar 13 17:51:42 CET 2009


On Fri, Mar 13, 2009 at 01:00:13AM +0100, Carl Eugen Hoyos wrote:
> # -- Machine type PW
> # mark_description "Intel(R) C++ Compiler Professional for applications running on IA-32, Version 11.0    Build 20090131 %s";
> # mark_description "-long_double -fomit-frame-pointer -S";

Huh, is this compiled without optimization?

>         pushl     %ebp                                          #1.15
>         movl      %esp, %ebp                                    #1.15
>         andl      $-128, %esp                                   #1.15
>         subl      $128, %esp                                    #1.15
>         pushl     $3                                            #1.15
>         call      __intel_new_proc_init                         #1.15
>                                 # LOE ebx esi edi
> ..B1.4:                         # Preds ..B1.1
>         popl      %ecx                                          #1.15
>         stmxcsr   (%esp)                                        #1.15
>         orl       $32768, (%esp)                                #1.15
>         ldmxcsr   (%esp)                                        #1.15
>         movl      $0, 4(%esp)                                   #2.19
>         xorl      %ebp, %ebp                                    #3.0
>         movl      4(%esp), %eax                                 #6.12
>         movl      %ebp, %esp                                    #6.12
>         popl      %ebp                                          #6.12
>         ret                                                     #6.12

ICC definitely ignores the ebp clobber, so unless this only happens when
optimization is not enabled, using ebp is very risky...




More information about the ffmpeg-devel mailing list