//===-- ARM/ARMMCCodeEmitter.cpp - Convert ARM code to machine code -------===////// The LLVM Compiler Infrastructure//// This file is distributed under the University of Illinois Open Source// License. See LICENSE.TXT for details.////===----------------------------------------------------------------------===////// This file implements the ARMMCCodeEmitter class.////===----------------------------------------------------------------------===//#define DEBUG_TYPE "mccodeemitter"#include"MCTargetDesc/ARMAddressingModes.h"#include"MCTargetDesc/ARMBaseInfo.h"#include"MCTargetDesc/ARMFixupKinds.h"#include"MCTargetDesc/ARMMCExpr.h"#include"MCTargetDesc/ARMMCTargetDesc.h"#include"llvm/MC/MCCodeEmitter.h"#include"llvm/MC/MCExpr.h"#include"llvm/MC/MCInst.h"#include"llvm/MC/MCInstrInfo.h"#include"llvm/MC/MCRegisterInfo.h"#include"llvm/MC/MCSubtargetInfo.h"#include"llvm/ADT/APFloat.h"#include"llvm/ADT/Statistic.h"#include"llvm/Support/raw_ostream.h"usingnamespacellvm;STATISTIC(MCNumEmitted,"Number of MC instructions emitted.");STATISTIC(MCNumCPRelocations,"Number of constant pool relocations created.");namespace{classARMMCCodeEmitter:publicMCCodeEmitter{ARMMCCodeEmitter(constARMMCCodeEmitter&);// DO NOT IMPLEMENTvoidoperator=(constARMMCCodeEmitter&);// DO NOT IMPLEMENTconstMCInstrInfo&MCII;constMCSubtargetInfo&STI;public:ARMMCCodeEmit