//
//===----------------------------------------------------------------------===//
-#ifndef TARGET_XCORE_H
-#define TARGET_XCORE_H
+#ifndef LLVM_LIB_TARGET_XCORE_XCORE_H
+#define LLVM_LIB_TARGET_XCORE_XCORE_H
+
+#include "MCTargetDesc/XCoreMCTargetDesc.h"
+#include "llvm/Target/TargetMachine.h"
namespace llvm {
class FunctionPass;
+ class ModulePass;
class TargetMachine;
class XCoreTargetMachine;
- class raw_ostream;
+ class formatted_raw_ostream;
- FunctionPass *createXCoreISelDag(XCoreTargetMachine &TM);
- FunctionPass *createXCoreCodePrinterPass(raw_ostream &OS,
- XCoreTargetMachine &TM,
- unsigned OptLevel, bool Verbose);
-} // end namespace llvm;
+ void initializeXCoreLowerThreadLocalPass(PassRegistry &p);
-// Defines symbolic names for XCore registers. This defines a mapping from
-// register name to register number.
-//
-#include "XCoreGenRegisterNames.inc"
+ FunctionPass *createXCoreFrameToArgsOffsetEliminationPass();
+ FunctionPass *createXCoreISelDag(XCoreTargetMachine &TM,
+ CodeGenOpt::Level OptLevel);
+ ModulePass *createXCoreLowerThreadLocalPass();
-// Defines symbolic names for the XCore instructions.
-//
-#include "XCoreGenInstrNames.inc"
+} // end namespace llvm;
#endif