Mercurial > mplayer.hg
view loader/wrapper.S @ 36689:e8567b5f7da9
Change help message texts corresponding with r36766.
In r36766 some messages of the English master file have been merged.
Make these changes wherever these messages still differ in a translation.
Changes are:
MSGTR_MENU_AudioLanguages now same as MSGTR_MENU_AudioTrack
MSGTR_MENU_LoadSubtitle now same as MSGTR_PREFERENCES_FRAME_Subtitle
MSGTR_MENU_PlayCD now same as MSGTR_MENU_CD
MSGTR_MENU_PlayDVD now same as MSGTR_MENU_DVD
MSGTR_MENU_PlayDisc now same as MSGTR_MENU_Play
MSGTR_MENU_PlayVCD now same as MSGTR_MENU_VCD
MSGTR_MENU_SubtitleLanguages now same as MSGTR_MENU_Subtitles
MSGTR_PREFERENCES_FPS now same as MSGTR_PREFERENCES_SUB_FPS
MSGTR_PREFERENCES_Font now same as MSGTR_PREFERENCES_FRAME_Font
MSGTR_PREFERENCES_None now same as MSGTR_MENU_None
MSGTR_PREFERENCES_Subtitle now same as MSGTR_PREFERENCES_FRAME_Subtitle
MSGTR_SkinBrowser now same as MSGTR_MENU_SkinBrowser
author | ib |
---|---|
date | Tue, 04 Feb 2014 18:29:10 +0000 |
parents | 32725ca88fed |
children |
line wrap: on
line source
#include "config.h" #define GLUE(a, b) a ## b #define JOIN(a, b) GLUE(a, b) #define MANGLE(s) JOIN(EXTERN_ASM, s) .data .globl MANGLE(caller_return) MANGLE(caller_return): .long 0 .globl MANGLE(report_entry) MANGLE(report_entry): .long MANGLE(null_call) .globl MANGLE(report_ret) MANGLE(report_ret): .long MANGLE(null_call) .global MANGLE(wrapper_target) MANGLE(wrapper_target): .long MANGLE(null_call) .text .globl MANGLE(null_call) .type MANGLE(null_call), @function .balign 16,0x90 MANGLE(null_call): ret .globl MANGLE(wrapper) .type MANGLE(wrapper), @function .balign 16,0x90 MANGLE(wrapper): pusha # store registers (EAX, ECX, EDX, EBX, ESP, EBP, ESI, EDI) pushf # store flags push %ebp # set up a stack frame movl %esp, %ebp leal 4(%ebp), %eax # push flags addr push %eax leal 8(%ebp), %eax # push registers addr push %eax leal 40(%ebp), %edx movl (%ebp), %eax subl %edx, %eax push %eax push %edx call *MANGLE(report_entry) # report entry test %eax, %eax jnz .Ldone leave # restore %esp, %ebp popf # restore flags popa # restore registers popl MANGLE(caller_return) # switch return addresses pushl $.Lwrapper_return jmp *MANGLE(wrapper_target) # wrapper_target should return at .Lwrapper_return .balign 16, 0x90 .Lwrapper_return: pushl MANGLE(caller_return) # restore the original return address pusha # more for reference sake here pushf push %ebp # set up a stack frame movl %esp, %ebp leal 4(%ebp), %eax # push flags addr push %eax leal 8(%ebp), %eax # push registers addr push %eax leal 40(%ebp), %edx # push stack top address (relative to our entry) movl (%ebp), %eax subl %edx, %eax # calculate difference between entry and previous frame push %eax push %edx call *MANGLE(report_ret) # report the return information (same args) .Ldone: leave popf popa ret