LLVM API Documentation
00001 //===- TableGen'erated file -------------------------------------*- C++ -*-===// 00002 // 00003 // Register Information Header Fragment 00004 // 00005 // Automatically generated file, do not edit! 00006 // 00007 //===----------------------------------------------------------------------===// 00008 00009 #include "llvm/Target/MRegisterInfo.h" 00010 #include <string> 00011 00012 namespace llvm { 00013 00014 struct IA64GenRegisterInfo : public MRegisterInfo { 00015 IA64GenRegisterInfo(int CallFrameSetupOpcode = -1, int CallFrameDestroyOpcode = -1); 00016 const unsigned* getCalleeSaveRegs() const; 00017 const TargetRegisterClass* const *getCalleeSaveRegClasses() const; 00018 int getDwarfRegNum(unsigned RegNum) const; 00019 }; 00020 00021 namespace IA64 { // Register classes 00022 struct FPClass : public TargetRegisterClass { 00023 FPClass(); 00024 00025 iterator allocation_order_begin(MachineFunction &MF) const; 00026 iterator allocation_order_end(MachineFunction &MF) const; 00027 }; 00028 extern FPClass FPRegClass; 00029 static TargetRegisterClass * const FPRegisterClass = &FPRegClass; 00030 struct GRClass : public TargetRegisterClass { 00031 GRClass(); 00032 00033 iterator allocation_order_begin(MachineFunction &MF) const; 00034 iterator allocation_order_end(MachineFunction &MF) const; 00035 }; 00036 extern GRClass GRRegClass; 00037 static TargetRegisterClass * const GRRegisterClass = &GRRegClass; 00038 struct PRClass : public TargetRegisterClass { 00039 PRClass(); 00040 }; 00041 extern PRClass PRRegClass; 00042 static TargetRegisterClass * const PRRegisterClass = &PRRegClass; 00043 } // end of namespace IA64 00044 00045 } // End llvm namespace