blob: 786bea3fcfae681361ed4dc58eda5e5845041658 [file] [log] [blame]
Andrew Scull5e1ddfa2018-08-14 10:06:54 +01001//===- SystemUtils.h - Utilities to do low-level system stuff ---*- C++ -*-===//
2//
Andrew Walbran16937d02019-10-22 13:54:20 +01003// 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-exception
Andrew Scull5e1ddfa2018-08-14 10:06:54 +01006//
7//===----------------------------------------------------------------------===//
8//
9// This file contains functions used to do a variety of low-level, often
10// system-specific, tasks.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_SUPPORT_SYSTEMUTILS_H
15#define LLVM_SUPPORT_SYSTEMUTILS_H
16
17namespace llvm {
Olivier Deprezf4ef2d02021-04-20 13:36:24 +020018class raw_ostream;
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010019
20/// Determine if the raw_ostream provided is connected to a terminal. If so,
21/// generate a warning message to errs() advising against display of bitcode
22/// and return true. Otherwise just return false.
Andrew Scullcdfcccc2018-10-05 20:58:37 +010023/// Check for output written to a console
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010024bool CheckBitcodeOutputToConsole(
Olivier Deprezf4ef2d02021-04-20 13:36:24 +020025 raw_ostream &stream_to_check ///< The stream to be checked
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010026);
27
Olivier Deprezf4ef2d02021-04-20 13:36:24 +020028} // namespace llvm
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010029
30#endif