//===-- PPCGenScalarMASSEntries.cpp ---------------------------------------===//
//
// 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
//
//===----------------------------------------------------------------------===//
//
// This transformation converts standard math functions into their
// corresponding MASS (scalar) entries for PowerPC targets.
// Following are examples of such conversion:
// tanh ---> __xl_tanh_finite
// Such lowering is legal under the fast-math option.
//
//===----------------------------------------------------------------------===//
using namespace llvm;
// namespace
// Returns true if 'afn' flag exists on the call instruction with the math
// function
bool
// Returns true if 'nnan', 'ninf' and 'nsz' flags exist on the call instruction
// with the math function
bool
/// Lowers scalar math functions to scalar MASS functions.
/// e.g.: tanh --> __xl_tanh_finite or __xl_tanh
/// Both function prototype and its callsite is updated during lowering.
bool
bool
char PPCGenScalarMASSEntries::ID = 0;
char &llvm::PPCGenScalarMASSEntriesID = PPCGenScalarMASSEntries::ID;
ModulePass *