InferiorCallPOSIX.cpp (314564) | InferiorCallPOSIX.cpp (322326) |
---|---|
1//===-- InferiorCallPOSIX.cpp -----------------------------------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// --- 50 unchanged lines hidden (view full) --- 59 options.SetStopOthers(true); 60 options.SetUnwindOnError(true); 61 options.SetIgnoreBreakpoints(true); 62 options.SetTryAllThreads(true); 63 options.SetDebug(false); 64 options.SetTimeout(std::chrono::milliseconds(500)); 65 options.SetTrapExceptions(false); 66 | 1//===-- InferiorCallPOSIX.cpp -----------------------------------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// --- 50 unchanged lines hidden (view full) --- 59 options.SetStopOthers(true); 60 options.SetUnwindOnError(true); 61 options.SetIgnoreBreakpoints(true); 62 options.SetTryAllThreads(true); 63 options.SetDebug(false); 64 options.SetTimeout(std::chrono::milliseconds(500)); 65 options.SetTrapExceptions(false); 66 |
67 addr_t prot_arg, flags_arg = 0; | 67 addr_t prot_arg; |
68 if (prot == eMmapProtNone) 69 prot_arg = PROT_NONE; 70 else { 71 prot_arg = 0; 72 if (prot & eMmapProtExec) 73 prot_arg |= PROT_EXEC; 74 if (prot & eMmapProtRead) 75 prot_arg |= PROT_READ; 76 if (prot & eMmapProtWrite) 77 prot_arg |= PROT_WRITE; 78 } 79 | 68 if (prot == eMmapProtNone) 69 prot_arg = PROT_NONE; 70 else { 71 prot_arg = 0; 72 if (prot & eMmapProtExec) 73 prot_arg |= PROT_EXEC; 74 if (prot & eMmapProtRead) 75 prot_arg |= PROT_READ; 76 if (prot & eMmapProtWrite) 77 prot_arg |= PROT_WRITE; 78 } 79 |
80 const ArchSpec arch = process->GetTarget().GetArchitecture(); 81 flags_arg = 82 process->GetTarget().GetPlatform()->ConvertMmapFlagsToPlatform(arch, 83 flags); 84 | |
85 AddressRange mmap_range; 86 if (sc.GetAddressRange(range_scope, 0, use_inline_block_range, 87 mmap_range)) { 88 ClangASTContext *clang_ast_context = 89 process->GetTarget().GetScratchClangASTContext(); 90 CompilerType clang_void_ptr_type = 91 clang_ast_context->GetBasicType(eBasicTypeVoid).GetPointerType(); | 80 AddressRange mmap_range; 81 if (sc.GetAddressRange(range_scope, 0, use_inline_block_range, 82 mmap_range)) { 83 ClangASTContext *clang_ast_context = 84 process->GetTarget().GetScratchClangASTContext(); 85 CompilerType clang_void_ptr_type = 86 clang_ast_context->GetBasicType(eBasicTypeVoid).GetPointerType(); |
92 lldb::addr_t args[] = {addr, length, prot_arg, flags_arg, fd, offset}; | 87 const ArchSpec arch = process->GetTarget().GetArchitecture(); 88 MmapArgList args = 89 process->GetTarget().GetPlatform()->GetMmapArgumentList( 90 arch, addr, length, prot_arg, flags, fd, offset); |
93 lldb::ThreadPlanSP call_plan_sp( 94 new ThreadPlanCallFunction(*thread, mmap_range.GetBaseAddress(), 95 clang_void_ptr_type, args, options)); 96 if (call_plan_sp) { 97 DiagnosticManager diagnostics; 98 99 StackFrame *frame = thread->GetStackFrameAtIndex(0).get(); 100 if (frame) { --- 140 unchanged lines hidden --- | 91 lldb::ThreadPlanSP call_plan_sp( 92 new ThreadPlanCallFunction(*thread, mmap_range.GetBaseAddress(), 93 clang_void_ptr_type, args, options)); 94 if (call_plan_sp) { 95 DiagnosticManager diagnostics; 96 97 StackFrame *frame = thread->GetStackFrameAtIndex(0).get(); 98 if (frame) { --- 140 unchanged lines hidden --- |