On Monday, July 11, 2016, René Jansen <rvjan...@xs4all.nl> wrote:

>
> On 11 jul. 2016, at 14:15, Rick McGuire <object.r...@gmail.com
> <javascript:_e(%7B%7D,'cvml','object.r...@gmail.com');>> wrote:
>
> I'm starting to wonder if the problem is not in this code, but rather in
> one of the called routines. Perhaps the rbp register is getting clobbered
> on one of the calls resulting in the trap immediately after the return.
>
>
> yes, it seems that way, although it is rax that is different.
>

If this mov instruction is the location of the trap then the rbp value is
the problem. If it isn't changing then it was either set up incorrectly in
the first place or altered by an earlier call.

>
> in 6.1.1 (wrong):
>
>    0x00007ffff7b5f552 <+82>:
> callq  0x7ffff7ab7c10 
> <_ZN12MemoryObject15memoryPoolAddedEP17MemorySegmentPool@plt
> >
> => 0x00007ffff7b5f557 <+87>: mov    0x8(%rbp),%rax
>    0x00007ffff7b5f55b <+91>: test   %rax,%rax
>
>
> (gdb) info registers
> rax            0x33 51
> rbx            0x7ffff7dd5160 140737351864672
> rcx            0x7fffffcc 2147483596
> rdx            0x7ffe0 524256
> rsi            0x100000 1048576
> rdi            0x0 0
> rbp            0x0 0x0
> rsp            0x7fffffffdd10 0x7fffffffdd10
> r8             0x0 0
> r9             0x33 51
> r10            0x17dd 6109
> r11            0x7ffff7b5f500 140737349285120
> r12            0x100000 1048576
> r13            0x100000 1048576
> r14            0x7ffff7b6faa0 140737349352096
> r15            0x0 0
> rip            0x7ffff7b5f557 0x7ffff7b5f557
> <MemorySegmentPool::newSegment(unsigned long)+87>
> eflags         0x10202 [ IF RF ]
> cs             0x33 51
> ss             0x2b 43
> ds             0x0 0
> es             0x0 0
> fs             0x0 0
> gs             0x0 0
>
> note that the call to MemoryObject::memoryPoolAdded returns X’33’ in rax,
> while below, with the 5.3.1 (correct) version, it returns a valid address.
>
> Breakpoint 2, 0x00007ffff7b5e197 in MemorySegmentPool::newSegment(unsigned
> long) ()
>    from /home/rvjansen/workspace/workspace/build/bin/librexx.so.5.0.0
> 1: x/i $pc
> => 0x7ffff7b5e197 <_ZN17MemorySegmentPool10newSegmentEm+87>: mov
>   0x8(%rbp),%rax
> (gdb) i r
> rax            0x7ffff7dbade8 140737351757288
> rbx            0x7ffff7dd51a0 140737351864736
> rcx            0xfffe0 1048544
> rdx            0x100000 1048576
> rsi            0x200000 2097152
> rdi            0x7ffff636e010 140737324179472
> rbp            0x7ffff636e010 0x7ffff636e010
> rsp            0x7fffffffdd80 0x7fffffffdd80
> r8             0x0 0
> r9             0x33 51
> r10            0xaeb 2795
> r11            0x7ffff7b1cfd0 140737349013456
> r12            0x200000 2097152
> r13            0x200000 2097152
> r14            0x0 0
> r15            0x0 0
> rip            0x7ffff7b5e197 0x7ffff7b5e197
> <MemorySegmentPool::newSegment(unsigned long)+87>
> eflags         0x202 [ IF ]
> cs             0x33 51
> ss             0x2b 43
> ds             0x0 0
> es             0x0 0
> fs             0x0 0
> gs             0x0 0
>
>
>
------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to