//===-- LeonFeatures.td - Describe the Leon Features -------*- tablegen -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // //===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===// // UMAC and SMAC support for LEON3 and LEON4 processors. //===----------------------------------------------------------------------===// //support to casa instruction; for leon3 subtarget only def UMACSMACSupport : SubtargetFeature< "hasumacsmac", "HasUmacSmac", "true", "Enable UMAC and SMAC for LEON3 and LEON4 processors" >; //===----------------------------------------------------------------------===// // CASA Support differs between LEON3-FT GR712RC and LEON3-FT UT699 // We need to have the option to switch this on and off. //===----------------------------------------------------------------------===// //support to casa instruction; for leon3 subtarget only def LeonCASA : SubtargetFeature< "hasleoncasa", "HasLeonCasa", "true", "Enable CASA instruction for LEON3 and LEON4 processors" >; def InsertNOPLoad: SubtargetFeature< "insertnopload", "InsertNOPLoad", "true", "LEON3 erratum fix: Insert a NOP instruction after every single-cycle load instruction when the next instruction is another load/store instruction" >; def DetectRoundChange : SubtargetFeature< "detectroundchange", "DetectRoundChange", "true", "LEON3 erratum detection: Detects any rounding mode change " "request: use only the round-to-nearest rounding mode" >; def FixAllFDIVSQRT : SubtargetFeature< "fixallfdivsqrt", "FixAllFDIVSQRT", "true", "LEON erratum fix: Fix FDIVS/FDIVD/FSQRTS/FSQRTD instructions with NOPs and floating-point store" >;