1259698Sdim//===-- SystemZ.td - SystemZ processors and features ---------*- tblgen -*-===// 2259698Sdim// 3259698Sdim// The LLVM Compiler Infrastructure 4259698Sdim// 5259698Sdim// This file is distributed under the University of Illinois Open Source 6259698Sdim// License. See LICENSE.TXT for details. 7259698Sdim// 8259698Sdim//===----------------------------------------------------------------------===// 9259698Sdim// 10259698Sdim// Processor and feature definitions. 11259698Sdim// 12259698Sdim//===----------------------------------------------------------------------===// 13259698Sdim 14259698Sdimclass SystemZFeature<string extname, string intname, string desc> 15259698Sdim : Predicate<"Subtarget.has"##intname##"()">, 16259698Sdim AssemblerPredicate<"Feature"##intname, extname>, 17259698Sdim SubtargetFeature<extname, "Has"##intname, "true", desc>; 18259698Sdim 19259698Sdimdef FeatureDistinctOps : SystemZFeature< 20259698Sdim "distinct-ops", "DistinctOps", 21259698Sdim "Assume that the distinct-operands facility is installed" 22259698Sdim>; 23259698Sdim 24259698Sdimdef FeatureLoadStoreOnCond : SystemZFeature< 25259698Sdim "load-store-on-cond", "LoadStoreOnCond", 26259698Sdim "Assume that the load/store-on-condition facility is installed" 27259698Sdim>; 28259698Sdim 29259698Sdimdef FeatureHighWord : SystemZFeature< 30259698Sdim "high-word", "HighWord", 31259698Sdim "Assume that the high-word facility is installed" 32259698Sdim>; 33259698Sdim 34259698Sdimdef FeatureFPExtension : SystemZFeature< 35259698Sdim "fp-extension", "FPExtension", 36259698Sdim "Assume that the floating-point extension facility is installed" 37259698Sdim>; 38259698Sdim 39259698Sdimdef : Processor<"generic", NoItineraries, []>; 40259698Sdimdef : Processor<"z10", NoItineraries, []>; 41259698Sdimdef : Processor<"z196", NoItineraries, 42259698Sdim [FeatureDistinctOps, FeatureLoadStoreOnCond, FeatureHighWord, 43259698Sdim FeatureFPExtension]>; 44259698Sdimdef : Processor<"zEC12", NoItineraries, 45259698Sdim [FeatureDistinctOps, FeatureLoadStoreOnCond, FeatureHighWord, 46259698Sdim FeatureFPExtension]>; 47