PPCCodeEmitter.cpp (208954) | PPCCodeEmitter.cpp (212904) |
---|---|
1//===-- PPCCodeEmitter.cpp - JIT Code Emitter for PowerPC32 -------*- C++ -*-=// 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//===----------------------------------------------------------------------===// --- 31 unchanged lines hidden (view full) --- 40 static char ID; 41 42 /// MovePCtoLROffset - When/if we see a MovePCtoLR instruction, we record 43 /// its address in the function into this pointer. 44 void *MovePCtoLROffset; 45 public: 46 47 PPCCodeEmitter(TargetMachine &tm, JITCodeEmitter &mce) | 1//===-- PPCCodeEmitter.cpp - JIT Code Emitter for PowerPC32 -------*- C++ -*-=// 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//===----------------------------------------------------------------------===// --- 31 unchanged lines hidden (view full) --- 40 static char ID; 41 42 /// MovePCtoLROffset - When/if we see a MovePCtoLR instruction, we record 43 /// its address in the function into this pointer. 44 void *MovePCtoLROffset; 45 public: 46 47 PPCCodeEmitter(TargetMachine &tm, JITCodeEmitter &mce) |
48 : MachineFunctionPass(&ID), TM(tm), MCE(mce) {} | 48 : MachineFunctionPass(ID), TM(tm), MCE(mce) {} |
49 50 /// getBinaryCodeForInstr - This function, generated by the 51 /// CodeEmitterGenerator using TableGen, produces the binary encoding for 52 /// machine instructions. 53 54 unsigned getBinaryCodeForInstr(const MachineInstr &MI); 55 56 /// getMachineOpValue - evaluates the MachineOperand of a given MachineInstr --- 48 unchanged lines hidden (view full) --- 105 106 for (MachineBasicBlock::iterator I = MBB.begin(), E = MBB.end(); I != E; ++I){ 107 const MachineInstr &MI = *I; 108 MCE.processDebugLoc(MI.getDebugLoc(), true); 109 switch (MI.getOpcode()) { 110 default: 111 MCE.emitWordBE(getBinaryCodeForInstr(MI)); 112 break; | 49 50 /// getBinaryCodeForInstr - This function, generated by the 51 /// CodeEmitterGenerator using TableGen, produces the binary encoding for 52 /// machine instructions. 53 54 unsigned getBinaryCodeForInstr(const MachineInstr &MI); 55 56 /// getMachineOpValue - evaluates the MachineOperand of a given MachineInstr --- 48 unchanged lines hidden (view full) --- 105 106 for (MachineBasicBlock::iterator I = MBB.begin(), E = MBB.end(); I != E; ++I){ 107 const MachineInstr &MI = *I; 108 MCE.processDebugLoc(MI.getDebugLoc(), true); 109 switch (MI.getOpcode()) { 110 default: 111 MCE.emitWordBE(getBinaryCodeForInstr(MI)); 112 break; |
113 case TargetOpcode::DBG_LABEL: | 113 case TargetOpcode::PROLOG_LABEL: |
114 case TargetOpcode::EH_LABEL: 115 MCE.emitLabel(MI.getOperand(0).getMCSymbol()); 116 break; 117 case TargetOpcode::IMPLICIT_DEF: 118 case TargetOpcode::KILL: 119 break; // pseudo opcode, no side effects 120 case PPC::MovePCtoLR: 121 case PPC::MovePCtoLR8: --- 131 unchanged lines hidden --- | 114 case TargetOpcode::EH_LABEL: 115 MCE.emitLabel(MI.getOperand(0).getMCSymbol()); 116 break; 117 case TargetOpcode::IMPLICIT_DEF: 118 case TargetOpcode::KILL: 119 break; // pseudo opcode, no side effects 120 case PPC::MovePCtoLR: 121 case PPC::MovePCtoLR8: --- 131 unchanged lines hidden --- |