1//===-- TargetSubtargetInfo.cpp - General Target Information ---------------==// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// This file describes the general parts of a Subtarget. 11// 12//===----------------------------------------------------------------------===// 13 14#include "llvm/Support/CommandLine.h" 15#include "llvm/ADT/SmallVector.h" 16#include "llvm/Target/TargetSubtargetInfo.h" 17using namespace llvm; 18 19//--------------------------------------------------------------------------- 20// TargetSubtargetInfo Class 21// 22TargetSubtargetInfo::TargetSubtargetInfo() {} 23 24TargetSubtargetInfo::~TargetSubtargetInfo() {} 25 26bool TargetSubtargetInfo::enableAtomicExpand() const { 27 return true; 28} 29 30bool TargetSubtargetInfo::enableMachineScheduler() const { 31 return false; 32} 33 34bool TargetSubtargetInfo::enableJoinGlobalCopies() const { 35 return enableMachineScheduler(); 36} 37 38bool TargetSubtargetInfo::enableRALocalReassignment( 39 CodeGenOpt::Level OptLevel) const { 40 return true; 41} 42 43bool TargetSubtargetInfo::enablePostMachineScheduler() const { 44 return getSchedModel().PostRAScheduler; 45} 46 47bool TargetSubtargetInfo::useAA() const { 48 return false; 49} 50