[FFmpeg-devel] r9017 breaks WMA decoding on Intel Macs
Trent Piepho
xyzzy
Sun Jun 3 19:11:06 CEST 2007
On Sun, 3 Jun 2007, Graham Booker wrote:
> one) seems to assume that the evaluation of the operator is 0 (not
> the whole expression btw) meaning it evaluates to 0(..). So, what
> about offest+1*%number. The newer gas assumes offset+1*0(...) in the
> case of no offset in the %number, and the older gas assumes offset+0
> (...) in the same case. For both, if the %number contains an offset,
> then these evaluate to offset1+1*offset2(%register).
That's pretty clever. Have you tested it with objdump -d to see if the
disassembled object has the correct offset?
> P.S. Does anyone know a way to force gcc to give me a %number that
> evaluates to offset(%register)? I can't seem to get it to test that
Ask for "m" with something that's a stack variable or one of the function
arguments, you should get "offset(%ebp)" or "offset(%esp)" depending on the
value of omit-frame-pointer.
If you reqest two "m" inputs, where one is a constant offset from the
other, it should give you an offset too. x[i] and x[i+1], or x->foo and
x->bar for example.
foo(int i,int x[20]) {asm("# %0 %1" :: "m"(x[i]), "m"(x[i+1])); }
# (%eax,%edx,4) 4(%eax,%edx,4)
More information about the ffmpeg-devel
mailing list