comparison lib/Target/Sparc/SparcSubtarget.h @ 147:c2174574ed3a

LLVM 10
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 14 Aug 2019 16:55:33 +0900
parents 3a76565eade5
children
comparison
equal deleted inserted replaced
134:3a76565eade5 147:c2174574ed3a
1 //===-- SparcSubtarget.h - Define Subtarget for the SPARC -------*- C++ -*-===// 1 //===-- SparcSubtarget.h - Define Subtarget for the SPARC -------*- C++ -*-===//
2 // 2 //
3 // The LLVM Compiler Infrastructure 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // 4 // See https://llvm.org/LICENSE.txt for license information.
5 // This file is distributed under the University of Illinois Open Source 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 // License. See LICENSE.TXT for details.
7 // 6 //
8 //===----------------------------------------------------------------------===// 7 //===----------------------------------------------------------------------===//
9 // 8 //
10 // This file declares the SPARC specific subclass of TargetSubtargetInfo. 9 // This file declares the SPARC specific subclass of TargetSubtargetInfo.
11 // 10 //
45 bool HasNoFMULS; 44 bool HasNoFMULS;
46 45
47 // LEON features 46 // LEON features
48 bool HasUmacSmac; 47 bool HasUmacSmac;
49 bool HasLeonCasa; 48 bool HasLeonCasa;
49 bool HasPWRPSR;
50 bool InsertNOPLoad; 50 bool InsertNOPLoad;
51 bool FixAllFDIVSQRT; 51 bool FixAllFDIVSQRT;
52 bool DetectRoundChange; 52 bool DetectRoundChange;
53 bool PerformSDIVReplace; 53 bool HasLeonCycleCounter;
54 54
55 SparcInstrInfo InstrInfo; 55 SparcInstrInfo InstrInfo;
56 SparcTargetLowering TLInfo; 56 SparcTargetLowering TLInfo;
57 SelectionDAGTargetInfo TSInfo; 57 SelectionDAGTargetInfo TSInfo;
58 SparcFrameLowering FrameLowering; 58 SparcFrameLowering FrameLowering;
90 bool hasNoFSMULD() const { return HasNoFSMULD; } 90 bool hasNoFSMULD() const { return HasNoFSMULD; }
91 bool hasNoFMULS() const { return HasNoFMULS; } 91 bool hasNoFMULS() const { return HasNoFMULS; }
92 92
93 // Leon options 93 // Leon options
94 bool hasUmacSmac() const { return HasUmacSmac; } 94 bool hasUmacSmac() const { return HasUmacSmac; }
95 bool performSDIVReplace() const { return PerformSDIVReplace; }
96 bool hasLeonCasa() const { return HasLeonCasa; } 95 bool hasLeonCasa() const { return HasLeonCasa; }
96 bool hasPWRPSR() const { return HasPWRPSR; }
97 bool insertNOPLoad() const { return InsertNOPLoad; } 97 bool insertNOPLoad() const { return InsertNOPLoad; }
98 bool fixAllFDIVSQRT() const { return FixAllFDIVSQRT; } 98 bool fixAllFDIVSQRT() const { return FixAllFDIVSQRT; }
99 bool detectRoundChange() const { return DetectRoundChange; } 99 bool detectRoundChange() const { return DetectRoundChange; }
100 bool hasLeonCycleCounter() const { return HasLeonCycleCounter; }
100 101
101 /// ParseSubtargetFeatures - Parses features string setting specified 102 /// ParseSubtargetFeatures - Parses features string setting specified
102 /// subtarget options. Definition of function is auto generated by tblgen. 103 /// subtarget options. Definition of function is auto generated by tblgen.
103 void ParseSubtargetFeatures(StringRef CPU, StringRef FS); 104 void ParseSubtargetFeatures(StringRef CPU, StringRef FS);
104 SparcSubtarget &initializeSubtargetDependencies(StringRef CPU, StringRef FS); 105 SparcSubtarget &initializeSubtargetDependencies(StringRef CPU, StringRef FS);