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 PPCGenRegisterInfo : public MRegisterInfo { 00015 PPCGenRegisterInfo(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 PPC { // Register classes 00022 struct CRRCClass : public TargetRegisterClass { 00023 CRRCClass(); 00024 }; 00025 extern CRRCClass CRRCRegClass; 00026 static TargetRegisterClass * const CRRCRegisterClass = &CRRCRegClass; 00027 struct F4RCClass : public TargetRegisterClass { 00028 F4RCClass(); 00029 }; 00030 extern F4RCClass F4RCRegClass; 00031 static TargetRegisterClass * const F4RCRegisterClass = &F4RCRegClass; 00032 struct F8RCClass : public TargetRegisterClass { 00033 F8RCClass(); 00034 }; 00035 extern F8RCClass F8RCRegClass; 00036 static TargetRegisterClass * const F8RCRegisterClass = &F8RCRegClass; 00037 struct G8RCClass : public TargetRegisterClass { 00038 G8RCClass(); 00039 00040 iterator allocation_order_begin(MachineFunction &MF) const; 00041 iterator allocation_order_end(MachineFunction &MF) const; 00042 }; 00043 extern G8RCClass G8RCRegClass; 00044 static TargetRegisterClass * const G8RCRegisterClass = &G8RCRegClass; 00045 struct GPRCClass : public TargetRegisterClass { 00046 GPRCClass(); 00047 00048 iterator allocation_order_begin(MachineFunction &MF) const; 00049 iterator allocation_order_end(MachineFunction &MF) const; 00050 }; 00051 extern GPRCClass GPRCRegClass; 00052 static TargetRegisterClass * const GPRCRegisterClass = &GPRCRegClass; 00053 struct VRRCClass : public TargetRegisterClass { 00054 VRRCClass(); 00055 }; 00056 extern VRRCClass VRRCRegClass; 00057 static TargetRegisterClass * const VRRCRegisterClass = &VRRCRegClass; 00058 } // end of namespace PPC 00059 00060 } // End llvm namespace