Deleted Added
full compact
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 ---