mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 19:23:23 +01:00
2b52d3cc02
This patch implements two changes: - Move processor feature definition into a new file SystemZFeatures.td, and provide explicit lists of supported and unsupported features for each level of the z/Architecture. This allows specifying unsupported features in the scheduler definition files for each processor. - Add optional aliases for the -mcpu processor names according to the level of the z/Architecture, for compatibility with other compilers on the platform. The supported aliases are: -mcpu=arch8 equals -mcpu=z10 -mcpu=arch9 equals -mcpu=z196 -mcpu=arch10 equals -mcpu=zEC12 -mcpu=arch11 equals -mcpu=z13 llvm-svn: 285577
36 lines
1.5 KiB
TableGen
36 lines
1.5 KiB
TableGen
//===-- SystemZ.td - SystemZ processors and features ---------*- tblgen -*-===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// Processor definitions.
|
|
//
|
|
// For compatibility with other compilers on the platform, each model can
|
|
// be identifed either by the system name (e.g. z10) or the level of the
|
|
// architecture the model supports, as identified by the edition level
|
|
// of the z/Architecture Principles of Operation document (e.g. arch8).
|
|
//
|
|
// The minimum architecture level supported by LLVM is as defined in
|
|
// the Eighth Edition of the PoP (i.e. as implemented on z10).
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
def : ProcessorModel<"generic", NoSchedModel, []>;
|
|
|
|
def : ProcessorModel<"arch8", NoSchedModel, Arch8SupportedFeatures.List>;
|
|
def : ProcessorModel<"z10", NoSchedModel, Arch8SupportedFeatures.List>;
|
|
|
|
def : ProcessorModel<"arch9", Z196Model, Arch9SupportedFeatures.List>;
|
|
def : ProcessorModel<"z196", Z196Model, Arch9SupportedFeatures.List>;
|
|
|
|
def : ProcessorModel<"arch10", ZEC12Model, Arch10SupportedFeatures.List>;
|
|
def : ProcessorModel<"zEC12", ZEC12Model, Arch10SupportedFeatures.List>;
|
|
|
|
def : ProcessorModel<"arch11", Z13Model, Arch11SupportedFeatures.List>;
|
|
def : ProcessorModel<"z13", Z13Model, Arch11SupportedFeatures.List>;
|
|
|