[XviD-devel] [BUGS] failure on alpha processor and memory leakings

Stephan Krause s_kraste at ira.uka.de
Fri Feb 21 11:54:02 CET 2003


Hi,

> > Is the code 64bit ready ? Could you  have a look at your code and try to
> > find code areas where 64bit could lead to problems ?

As the ia64-guy, I thougth it was 64bit-ready... May it be that the 
alph-portab.h does not define ptr_t?

> Is it better for 64bit to use
> &cur[x*stride+y] notation instead of cur+x*stride+y ?

It compiles to exactly the same assembler code (at least on ia64).

> Does (cur + x) work when x ist signed int32_t with negative value
> and cur is a pointer?

Should do.

> Then we could go through the code once and for all and remove all
> unnecessary "int32_t/uint32_t" and also make everything signed that is
> needed. Actually make everything signed which is used for calculations
> and where extra bit is not needed (e.g. macroblock x-dim etc, too).

Good idea (but much work...)

> > When i  saw the  alpha regression, I  decided to  see if this  error was
> > present in  the ia32 arch  but for some  obscure reason did  not trigger
> > SIGSEGV signal (it's common that libc on ia32 allocates a bit more space
> > than needed, thus allows implicitly out of bounds operations)
>
> In sad16_c as well? That's strange...

Long ago ;-) we had the same problem on ia64. In halfpel-refine ref was 
computed using a array[negative value], we changed the variable to be a ptr_t 
and all was good. 
So i think the problem will go away if you define ptr_t for alphas

Stephan

-- 
Sig fault. (core dumped)


More information about the XviD-devel mailing list