mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-26 19:01:44 +02:00
mlp: Use LABEL_MANGLE() to export label symbols from inside asm block.
Originally committed as revision 18935 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
7d9beec775
commit
7c4c60e520
@ -53,14 +53,14 @@ static const void *iirtable[5] = { &ff_mlp_iirorder_0, &ff_mlp_iirorder_1,
|
||||
#if ARCH_X86_64
|
||||
|
||||
#define MLPMUL(label, offset, offs, offc) \
|
||||
MANGLE(label)": \n\t" \
|
||||
LABEL_MANGLE(label)": \n\t" \
|
||||
"movslq "offset"+"offs"(%0), %%rax\n\t" \
|
||||
"movslq "offset"+"offc"(%1), %%rdx\n\t" \
|
||||
"imul %%rdx, %%rax\n\t" \
|
||||
"add %%rax, %%rsi\n\t"
|
||||
|
||||
#define FIRMULREG(label, offset, firc)\
|
||||
MANGLE(label)": \n\t" \
|
||||
LABEL_MANGLE(label)": \n\t" \
|
||||
"movslq "#offset"(%0), %%rax\n\t" \
|
||||
"imul %"#firc", %%rax\n\t" \
|
||||
"add %%rax, %%rsi\n\t"
|
||||
@ -83,7 +83,7 @@ static const void *iirtable[5] = { &ff_mlp_iirorder_0, &ff_mlp_iirorder_1,
|
||||
#else /* if ARCH_X86_32 */
|
||||
|
||||
#define MLPMUL(label, offset, offs, offc) \
|
||||
MANGLE(label)": \n\t" \
|
||||
LABEL_MANGLE(label)": \n\t" \
|
||||
"mov "offset"+"offs"(%0), %%eax\n\t" \
|
||||
"imull "offset"+"offc"(%1) \n\t" \
|
||||
"add %%eax , %%esi\n\t" \
|
||||
@ -142,13 +142,13 @@ static void mlp_filter_channel_x86(int32_t *state, const int32_t *coeff,
|
||||
FIRMULREG(ff_mlp_firorder_3, 0x08,10)
|
||||
FIRMULREG(ff_mlp_firorder_2, 0x04, 9)
|
||||
FIRMULREG(ff_mlp_firorder_1, 0x00, 8)
|
||||
MANGLE (ff_mlp_firorder_0)":\n\t"
|
||||
LABEL_MANGLE(ff_mlp_firorder_0)":\n\t"
|
||||
"jmp *%6 \n\t"
|
||||
IIRMUL (ff_mlp_iirorder_4, 0x0c )
|
||||
IIRMUL (ff_mlp_iirorder_3, 0x08 )
|
||||
IIRMUL (ff_mlp_iirorder_2, 0x04 )
|
||||
IIRMUL (ff_mlp_iirorder_1, 0x00 )
|
||||
MANGLE (ff_mlp_iirorder_0)":\n\t"
|
||||
LABEL_MANGLE(ff_mlp_iirorder_0)":\n\t"
|
||||
SHIFT_ACCUM
|
||||
"mov "RESULT" ,"ACCUM" \n\t"
|
||||
"add (%2) ,"RESULT" \n\t"
|
||||
|
Loading…
Reference in New Issue
Block a user