brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.3 KiB · 275d0fb Raw
38 lines · cpp
1//===-- StopPointSiteList.cpp ---------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9#include "lldb/Breakpoint/StopPointSiteList.h"10#include "lldb/Breakpoint/BreakpointSite.h"11#include "lldb/Breakpoint/WatchpointResource.h"12 13#include "lldb/Utility/Stream.h"14#include <algorithm>15 16using namespace lldb;17using namespace lldb_private;18 19// This method is only defined when we're specializing for20// BreakpointSite / BreakpointLocation / Breakpoint.21// Watchpoints don't have a similar structure, they are22// WatchpointResource / Watchpoint23 24template <>25bool StopPointSiteList<BreakpointSite>::StopPointSiteContainsBreakpoint(26    typename BreakpointSite::SiteID site_id, lldb::break_id_t bp_id) {27  std::lock_guard<std::recursive_mutex> guard(m_mutex);28  typename collection::const_iterator pos = GetIDConstIterator(site_id);29  if (pos != m_site_list.end())30    return pos->second->IsBreakpointAtThisSite(bp_id);31 32  return false;33}34 35namespace lldb_private {36template class StopPointSiteList<BreakpointSite>;37} // namespace lldb_private38