opnsense-src/lldb/source/Expression/Expression.cpp
Dimitry Andric 706b4fc47b Vendor import of llvm-project master e26a78e70, the last commit before
the llvmorg-11-init tag, from which release/10.x was branched.
2020-01-17 20:45:01 +00:00

28 lines
1,015 B
C++

//===-- Expression.cpp ------------------------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#include "lldb/Expression/Expression.h"
#include "lldb/Target/ExecutionContextScope.h"
#include "lldb/Target/Target.h"
using namespace lldb_private;
Expression::Expression(Target &target)
: m_target_wp(target.shared_from_this()),
m_jit_start_addr(LLDB_INVALID_ADDRESS),
m_jit_end_addr(LLDB_INVALID_ADDRESS) {
// Can't make any kind of expression without a target.
assert(m_target_wp.lock());
}
Expression::Expression(ExecutionContextScope &exe_scope)
: m_target_wp(exe_scope.CalculateTarget()),
m_jit_start_addr(LLDB_INVALID_ADDRESS),
m_jit_end_addr(LLDB_INVALID_ADDRESS) {
assert(m_target_wp.lock());
}