Hello,

Mark Miesfeld wrote:
> Hi Rainer,
>
> I passed this on to Rick on the developer list.
>
> It seems similar to some problems we first had to debug on 64-bit.
> Because values like pointer are bigger in size, it increases the size
> of objects that ooRexx is managing.  This was causing new objects to
> be bigger than was allotted for them.  Which in turn overwrote memory.
>  It is an area in the interpreter I do not understand well (among many
> areas.)  
Much better then I do :-))
I only "maintain" the AIX build because I still have Rexx programs
running and nobody else volunteered...

Yes, it is possible that through different alignment schemas a bigger
memory chunk is needed.
I think this problem is not related to little/big endian issues.
>  It will probably have to be solved by Rick.
>
> We'll see if he comes back with some things for you to try.  Don't be
> discouraged if we don't hear much from him right away, he seems to be
> very busy lately.
>   
I can empathize with him.Currently I am very busy myself too.
> As for rxapi.  I also have a lot of trouble trying to build on SuSE.
> I have to be very careful to be sure there are no rxapi processes from
> a previous build lingering around.  (This is just on 32-bit.)  For
> some reason, it does not seem to be a problem on Fedora.  My
> suggestion there is just what you did, be sure the 32-bit ooRexx is
> not interfering when you try to build 64-bit.
>
>   
Very strange. Which libc version is used on SuSE / Fedorea ??

> --
> Mark Miesfeld
>   
Bye
  Rainer
> On Mon, Dec 29, 2008 at 8:44 AM, Rainer Tammer <tam...@tammer.net> wrote:
>   
>> Hello,
>> after I have moved the 32 bit build away (and killd rxapi) I get this:
>>
>> /daten/svn/ooRexx/main64/trunk/.libs/lt-rexximage -> core (the 64 bit
>> rxapi is not yet build)...
>>
>> dbx /daten/svn/ooRexx/main64/trunk/.libs/lt-rexximage
>> Type 'help' for help.
>> [using memory image in core]
>> reading symbolic information ...
>>
>> Illegal instruction (illegal opcode) in . at 0x0 ($t1)
>> warning: Unable to access address 0x0 from core
>> (dbx) where
>> .() at 0x0
>> RexxMemory::markObjectsMain(RexxObject*)(this = 0x09001000a027c6f8,
>> rootObject = 0x09001000a027c6f8), line 368 in "RexxMemory.cpp"
>> RexxMemory::markObjects()(this = 0x09001000a027c6f8), line 617 in
>> "RexxMemory.cpp"
>> RexxMemory::collect()(this = 0x09001000a027c6f8), line 993 in
>> "RexxMemory.cpp"
>> NormalSegmentSet::handleAllocationFailure(unsigned long)(this =
>> 0x09001000a027c840, allocationLength = 2304), line 1269 in
>> "MemorySegment.cpp"
>> RexxMemory.RexxMemory::newObject(unsigned long,unsigned long)(this =
>> 0x09001000a027c6f8, requestLength = 2304, type = 0), line 1074 in
>> "RexxMemory.cpp"
>> ArrayClass.newObject(unsigned long)(0x9001000a027c6f8, 0x900), line 185
>> in "RexxMemory.hpp"
>> ArrayClass.new_object(unsigned long)(0x900), line 415 in "RexxMemory.hpp"
>> clone()(this = 0x0000000110058458), line 2170 in "ObjectClass.cpp"
>> RexxInternalObject::copy()(this = 0x0000000110058458), line 487 in
>> "ObjectClass.cpp"
>> copy()(this = 0x000000011019ef10), line 128 in "RexxCollection.cpp"
>> unnamed block in methodDictionaryMerge(RexxTable*)(this =
>> 0x0000000110249108, sourceDictionary = 0x000000011025b2a8), line 710 in
>> "RexxBehaviour.cpp"
>> methodDictionaryMerge(RexxTable*)(this = 0x0000000110249108,
>> sourceDictionary = 0x000000011025b2a8), line 710 in "RexxBehaviour.cpp"
>> createClassBehaviour(RexxBehaviour*)(this = 0x0000000110173140,
>> target_class_behaviour = 0x0000000110249108), line 844 in "ClassClass.cpp"
>> updateSubClasses()(this = 0x0000000110173140), line 745 in "ClassClass.cpp"
>> unnamed block in updateSubClasses()(this = 0x00000001100637c0), line 755
>> in "ClassClass.cpp"
>> updateSubClasses()(this = 0x00000001100637c0), line 755 in "ClassClass.cpp"
>> inherit(RexxClass*,RexxClass*)(this = 0x00000001100637c0, mixin_class =
>> 0x0000000110248ff8, position = (nil)), line 1066 in "ClassClass.cpp"
>> RexxMemory::createImage()(), line 1407 in "Setup.cpp"
>> RexxMemory::initialize(bool)(this = 0x09001000a027c6f8, _restoringImage
>> = false), line 222 in "RexxMemory.cpp"
>> startInterpreter(Interpreter::InterpreterStartupMode)(mode =
>> SAVE_IMAGE_MODE), line 135 in "Interpreter.cpp"
>> RexxCreateInterpreterImage(), line 96 in "InterpreterAPI.cpp"
>> main(argc = 1, argv = 0x0ffffffffffff850), line 44 in "rexximage.cpp"
>> (dbx)
>>
>> If I build the 64 bit rxapi and start it prior to the image creation I
>> get the same dump as above.
>>
>> Bye
>>  Rainer
>>
>>     
>
>
>   


------------------------------------------------------------------------------
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to