Author: mohit.bhakkad Date: Wed Dec 23 06:34:58 2015 New Revision: 256331 URL: http://llvm.org/viewvc/llvm-project?rev=256331&view=rev Log: [LLDB] Fix Read/Write memory to be compatible with both endians
Reviewers: tberghammer. Subscribers: jaydeep, bhushan, sagar, nitesh.jain,lldb-commits. Differential Revision: http://reviews.llvm.org/D15738 Modified: lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp Modified: lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp?rev=256331&r1=256330&r2=256331&view=diff ============================================================================== --- lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp (original) +++ lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp Wed Dec 23 06:34:58 2015 @@ -2547,8 +2547,7 @@ NativeProcessLinux::ReadMemory (lldb::ad remainder = remainder > k_ptrace_word_size ? k_ptrace_word_size : remainder; // Copy the data into our buffer - for (unsigned i = 0; i < remainder; ++i) - dst[i] = ((data >> i*8) & 0xFF); + memcpy(dst, &data, remainder); if (log && ProcessPOSIXLog::AtTopNestLevel() && (log->GetMask().Test(POSIX_LOG_MEMORY_DATA_LONG) || @@ -2600,8 +2599,7 @@ NativeProcessLinux::WriteMemory(lldb::ad if (remainder == k_ptrace_word_size) { unsigned long data = 0; - for (unsigned i = 0; i < k_ptrace_word_size; ++i) - data |= (unsigned long)src[i] << i*8; + memcpy(&data, src, k_ptrace_word_size); if (log && ProcessPOSIXLog::AtTopNestLevel() && (log->GetMask().Test(POSIX_LOG_MEMORY_DATA_LONG) || _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits