LLVM API Documentation
00001 //===-- ARMTargetInfo.cpp - ARM Target Implementation ---------------------===// 00002 // 00003 // The LLVM Compiler Infrastructure 00004 // 00005 // This file is distributed under the University of Illinois Open Source 00006 // License. See LICENSE.TXT for details. 00007 // 00008 //===----------------------------------------------------------------------===// 00009 00010 #include "MCTargetDesc/ARMMCTargetDesc.h" 00011 #include "llvm/IR/Module.h" 00012 #include "llvm/Support/TargetRegistry.h" 00013 using namespace llvm; 00014 00015 Target llvm::TheARMLETarget, llvm::TheARMBETarget; 00016 Target llvm::TheThumbLETarget, llvm::TheThumbBETarget; 00017 00018 extern "C" void LLVMInitializeARMTargetInfo() { 00019 RegisterTarget<Triple::arm, /*HasJIT=*/true> 00020 X(TheARMLETarget, "arm", "ARM"); 00021 RegisterTarget<Triple::armeb, /*HasJIT=*/true> 00022 Y(TheARMBETarget, "armeb", "ARM (big endian)"); 00023 00024 RegisterTarget<Triple::thumb, /*HasJIT=*/true> 00025 A(TheThumbLETarget, "thumb", "Thumb"); 00026 RegisterTarget<Triple::thumbeb, /*HasJIT=*/true> 00027 B(TheThumbBETarget, "thumbeb", "Thumb (big endian)"); 00028 }