170de1e442d30eceea6d71ef5403f06323eda7e55Craig Topper//===-- HexagonMCTargetDesc.h - Hexagon Target Descriptions -----*- C++ -*-===// 2d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// 3d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// The LLVM Compiler Infrastructure 4d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// 5d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// This file is distributed under the University of Illinois Open Source 6d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// License. See LICENSE.TXT for details. 7d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// 8d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum//===----------------------------------------------------------------------===// 9d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// 10d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// This file provides Hexagon specific target descriptions. 11d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// 12d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum//===----------------------------------------------------------------------===// 13d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum 1470de1e442d30eceea6d71ef5403f06323eda7e55Craig Topper#ifndef HEXAGONMCTARGETDESC_H 1570de1e442d30eceea6d71ef5403f06323eda7e55Craig Topper#define HEXAGONMCTARGETDESC_H 16d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum 17d239ff67f210094c205be7e57332948caecf6a24Tony Linthicumnamespace llvm { 18d239ff67f210094c205be7e57332948caecf6a24Tony Linthicumclass MCSubtargetInfo; 19d239ff67f210094c205be7e57332948caecf6a24Tony Linthicumclass Target; 20d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum 21d239ff67f210094c205be7e57332948caecf6a24Tony Linthicumextern Target TheHexagonTarget; 22d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum 23d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum} // End llvm namespace 24d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum 25d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// Define symbolic names for Hexagon registers. This defines a mapping from 26d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// register name to register number. 27d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// 28d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum#define GET_REGINFO_ENUM 29d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum#include "HexagonGenRegisterInfo.inc" 30d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum 31d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// Defines symbolic names for the Hexagon instructions. 32d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum// 33d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum#define GET_INSTRINFO_ENUM 34d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum#include "HexagonGenInstrInfo.inc" 35d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum 36d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum#define GET_SUBTARGETINFO_ENUM 37d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum#include "HexagonGenSubtargetInfo.inc" 38d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum 39d239ff67f210094c205be7e57332948caecf6a24Tony Linthicum#endif 40