Dear all,
I am facing DATA ABORT ERROR due to which PROCFAULT raised. I am seeing the instruction as memmove function.
0x3ff9fc DataUtilities::Index+0x2c: e1a0c005 MOV IP, R5 <pos> 0x3ffa00 DataUtilities::Index+0x30: e28cc004 ADD IP, IP, 4 0x3ffa04 DataUtilities::Index+0x34: e5946008 LDR R6,[R4 <this>,8] 0x3ffa08 DataUtilities::Index+0x38: e1a03005 MOV R3, R5 <pos> 0x3ffa0c DataUtilities::Index+0x3c: e046600c SUB R6, R6, IP 0x3ffa10 DataUtilities::Index+0x40: e1a06146 MOV R6, R6, ASR 2 0x3ffa14 DataUtilities::Index+0x44: e1a07006 MOV R7, R6 0x3ffa18 DataUtilities::Index+0x48: e1a07107 MOV R7, R7, LSL 2 0x3ffa1c DataUtilities::Index+0x4c: e1a02007 MOV R2, R7 0x3ffa20 DataUtilities::Index+0x50: e1a0100c MOV R1, IP 0x3ffa24 DataUtilities::Index+0x54: e1a00003 MOV R0, R3 0x3ffa28 DataUtilities::Index+0x58: eb18db4b BL 0x636d2c(memmove (0xa3675c)) 0x3ffa2c DataUtilities::Index+0x5c: e1a01000 MOV R1, R0 0x3ffa30 DataUtilities::Index+0x60: e1a00006 MOV R0, R6 0x3ffa34 DataUtilities::Index+0x64: e1a00100 MOV R0, R0, LSL 2
Register DUMP: R0 : 0x0793c650 R1 : 0x0793c654 R2 : 0xff93bacc R3 : 0x0793c650 R4 : 0x02158d24 R5 : 0x0793c650 R6 : 0xfffffd1e R7 : 0xfffff478 R8 : 0x01e42f24 R9 : 0x00000000 R10 : 0x08000000 FP : 0x07fffffc IP : 0x00000001 SP : 0x01e42b14 LR : 0x003ffa24
source Code (CPlusPlus)
IndexVectorBase::iterator IndexVectorBase::erase(iterator pos) { if (next_index) next_index->erase(*pos); return _Base::erase(pos);<<<<<<<<<<<<<LR = 0x003ffa24 }
Please help me as soon as possible. How to debug further and what is the resolution.
Thanks in advance.
Best Regards RUK