1356843Sdim//===- GIMatchDagPredicateDependencyEdge.cpp - Have inputs before check ---===//
2356843Sdim//
3356843Sdim// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4356843Sdim// See https://llvm.org/LICENSE.txt for license information.
5356843Sdim// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6356843Sdim//
7356843Sdim//===----------------------------------------------------------------------===//
8356843Sdim
9356843Sdim#include "GIMatchDagPredicateDependencyEdge.h"
10356843Sdim
11356843Sdim#include "GIMatchDagInstr.h"
12356843Sdim#include "GIMatchDagPredicate.h"
13356843Sdim
14356843Sdim#include "llvm/Support/raw_ostream.h"
15356843Sdim
16356843Sdimusing namespace llvm;
17356843Sdim
18356843SdimLLVM_DUMP_METHOD void
19356843SdimGIMatchDagPredicateDependencyEdge::print(raw_ostream &OS) const {
20356843Sdim  OS << getRequiredMI()->getName();
21356843Sdim  if (getRequiredMO())
22356843Sdim    OS << "[" << getRequiredMO()->getName() << "]";
23356843Sdim  OS << " ==> " << getPredicate()->getName() << "["
24356843Sdim     << getPredicateOp()->getName() << "]";
25356843Sdim}
26356843Sdim
27356843Sdim#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
28356843SdimLLVM_DUMP_METHOD void GIMatchDagPredicateDependencyEdge::dump() const {
29356843Sdim  print(errs());
30356843Sdim}
31356843Sdim#endif // if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
32356843Sdim
33356843Sdimraw_ostream &llvm::operator<<(raw_ostream &OS,
34356843Sdim                              const GIMatchDagPredicateDependencyEdge &E) {
35356843Sdim  E.print(OS);
36356843Sdim  return OS;
37356843Sdim}
38