1//===---- MipsOs16.h for Mips Option -Os16 --------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// This file defines an optimization phase for the MIPS target. 11// 12//===----------------------------------------------------------------------===// 13 14#include "MCTargetDesc/MipsMCTargetDesc.h" 15#include "MipsTargetMachine.h" 16#include "llvm/Pass.h" 17#include "llvm/Target/TargetMachine.h" 18 19 20 21#ifndef MIPSOS16_H 22#define MIPSOS16_H 23 24using namespace llvm; 25 26namespace llvm { 27 28class MipsOs16 : public ModulePass { 29 30public: 31 static char ID; 32 33 MipsOs16() : ModulePass(ID) { 34 35 } 36 37 const char *getPassName() const override { 38 return "MIPS Os16 Optimization"; 39 } 40 41 bool runOnModule(Module &M) override; 42 43}; 44 45ModulePass *createMipsOs16(MipsTargetMachine &TM); 46 47} 48 49#endif 50