SystemZProcessors.td revision 263508
153642Sguido//===-- SystemZ.td - SystemZ processors and features ---------*- tblgen -*-===//
2255332Scy//
353642Sguido//                     The LLVM Compiler Infrastructure
480482Sdarrenr//
553642Sguido// This file is distributed under the University of Illinois Open Source
653642Sguido// License. See LICENSE.TXT for details.
757126Sguido//
8172776Sdarrenr//===----------------------------------------------------------------------===//
953642Sguido//
1053642Sguido// Processor and feature definitions.
1153642Sguido//
1253642Sguido//===----------------------------------------------------------------------===//
1353642Sguido
1453642Sguidoclass SystemZFeature<string extname, string intname, string desc>
1553642Sguido  : Predicate<"Subtarget.has"##intname##"()">,
1653642Sguido    AssemblerPredicate<"Feature"##intname, extname>,
1753642Sguido    SubtargetFeature<extname, "Has"##intname, "true", desc>;
1853642Sguido
1953642Sguidodef FeatureDistinctOps : SystemZFeature<
2053642Sguido  "distinct-ops", "DistinctOps",
2153642Sguido  "Assume that the distinct-operands facility is installed"
2253642Sguido>;
2353642Sguido
2453642Sguidodef FeatureLoadStoreOnCond : SystemZFeature<
2553642Sguido  "load-store-on-cond", "LoadStoreOnCond",
2653642Sguido  "Assume that the load/store-on-condition facility is installed"
2753642Sguido>;
2853642Sguido
2953642Sguidodef FeatureHighWord : SystemZFeature<
3053642Sguido  "high-word", "HighWord",
3153642Sguido  "Assume that the high-word facility is installed"
3253642Sguido>;
3353642Sguido
3453642Sguidodef FeatureFPExtension : SystemZFeature<
35305138Sdim  "fp-extension", "FPExtension",
36344833Scy  "Assume that the floating-point extension facility is installed"
37305138Sdim>;
38305138Sdim
39305138Sdimdef : Processor<"generic", NoItineraries, []>;
40305138Sdimdef : Processor<"z10", NoItineraries, []>;
41305138Sdimdef : Processor<"z196", NoItineraries,
42145522Sdarrenr                [FeatureDistinctOps, FeatureLoadStoreOnCond, FeatureHighWord,
43145522Sdarrenr                 FeatureFPExtension]>;
44344833Scydef : Processor<"zEC12", NoItineraries,
45145522Sdarrenr                [FeatureDistinctOps, FeatureLoadStoreOnCond, FeatureHighWord,
46145522Sdarrenr                 FeatureFPExtension]>;
4753642Sguido