> On 11 jul. 2016, at 14:15, Rick McGuire <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.

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