[vorbis-dev] vorbis on playstation 2

Nicolas Pitre nico at cam.org
Thu Feb 6 19:45:25 PST 2003

On Thu, 6 Feb 2003, David Etherton wrote:

> > > ogg_int32_t MULT31x(ogg_int32_t x, ogg_int32_t y) {
> > >   return ((ogg_int32_t) (((ogg_int64_t)x * y) >> 32) << 1);
> > static inline ogg_int32_t MULT31(ogg_int32_t x, ogg_int32_t y) {
> >   return MULT32(x,y)<<1;
> > }
> Your MULT31 is the same as my MULT31x, so we're on the same page, I'm just
> not making myself very clear.  

Well that particular one must be Monty's.  (just for people not to think I
wrote it all -- far from that).

> I think I'd been experimenting with different ways of doing the MULT31 (I
> was hoping the compiler would do a better job of getting LO/HI into a
> 64bit register).

Well that was my point.

>  I first looked at Tremor a few weeks
> ago and then got sidetracked (we're trying to get a game out the door) and
> forgotten I'd been messing with it.  I think I had been trying to be sneaky
> by getting rid of a shift, but that obviously failed spectacularly.

You might have to code it in assembly.  Hopefully your compiler can support
inline assembly à la gcc.  Again if your compiler ends up making actual 
function calls of those you lose.


--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'vorbis-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.

More information about the Vorbis-dev mailing list