[ODE] autoconf/automake take 5

Russ Smith russ at q12.org
Wed Nov 21 12:31:01 MST 2001


> unfortunately i have to "take this back"(<-is this correct English ?)

yup.

> error:
> strange bus error while accesing a contact struct (the first time)
> which is on the stack (the dStack)

hmmm - the MIPS chip has more severe alignment restrictions than
the x86. i believe that doubles must be 8-byte aligned. stack
allocations with ALLOCA16 are 16 byte aligned. but i don't think
allocations within a joint group are specially aligned,
so this may be the problem. access to non-aligned contact joint
doubles could definitely cause the bus error.

> My question to Russ:
> you said mmap should be replaced with a malloc solution. Are you (or 
> any other person) already working on it ?

yes i'm working on this right now. obstack.h and obstack.cpp are
checked in, but this is work in progress (not tested, or even
compiled yet). in a few days a should have the old mmap joint groups
completely removed. note that the new 'obstack' implementation will
correctly align all allocations.

BTW the EFFICIENT_SIZE parameter in config.h is yet another thing that
needs to be set per platform, but in this case i don't see how it can
be determined automatically. i recommend the default value of 16 be 
used everywhere, except that any platform that needs it larger is 
checked for in 'configure'.

russ.

--
Russell Smith
http://www.q12.org



More information about the ODE mailing list