//===-- llvm/Target/TargetOptions.h - Target Options ------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file was developed by the LLVM research group and is distributed under // the University of Illinois Open Source License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // This file defines command line option flags that are shared across various // targets. // //===----------------------------------------------------------------------===// #ifndef LLVM_TARGET_TARGETOPTIONS_H #define LLVM_TARGET_TARGETOPTIONS_H namespace llvm { /// PrintMachineCode - This flag is enabled when the -print-machineinstrs /// option is specified on the command line, and should enable debugging /// output from the code generator. extern bool PrintMachineCode; /// NoFramePointerElim - This flag is enabled when the -disable-fp-elim is /// specified on the command line. If the target supports the frame pointer /// elimination optimization, this option should disable it. extern bool NoFramePointerElim; /// NoExcessFPPrecision - This flag is enabled when the /// -disable-excess-fp-precision flag is specified on the command line. When /// this flag is off (the default), the code generator is allowed to produce /// results that are "more precise" than IEEE allows. This includes use of /// FMA-like operations and use of the X86 FP registers without rounding all /// over the place. extern bool NoExcessFPPrecision; /// PatternISelTriState - This flag is enabled when -pattern-isel=X is /// specified on the command line. The default value is 2, in which case the /// target chooses what is best for it. Setting X to 0 forces the use of /// a simple ISel if available, while setting it to 1 forces the use of a /// pattern ISel if available. extern int PatternISelTriState; } // End llvm namespace #endif