LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::PPC32JITInfo Class Reference

#include <PPC32JITInfo.h>

Inheritance diagram for llvm::PPC32JITInfo:

Inheritance graph
[legend]
Collaboration diagram for llvm::PPC32JITInfo:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 PPC32JITInfo (TargetMachine &tm)
virtual void * emitFunctionStub (void *Fn, MachineCodeEmitter &MCE)
virtual LazyResolverFn getLazyResolverFunction (JITCompilerFn)
virtual void relocate (void *Function, MachineRelocation *MR, unsigned NumRelocs)
virtual void replaceMachineCodeForFunction (void *Old, void *New)

Detailed Description

Definition at line 23 of file PPC32JITInfo.h.


Constructor & Destructor Documentation

llvm::PPC32JITInfo::PPC32JITInfo TargetMachine tm  )  [inline]
 

Definition at line 25 of file PPC32JITInfo.h.


Member Function Documentation

void * PPC32JITInfo::emitFunctionStub void *  Fn,
MachineCodeEmitter MCE
[virtual]
 

emitFunctionStub - Use the specified MachineCodeEmitter object to emit a small native function that simply calls the function at the specified address. Return the address of the resultant function.

Reimplemented from llvm::TargetJITInfo.

Definition at line 162 of file PPC32JITInfo.cpp.

References EmitBranchToAt(), llvm::MachineCodeEmitter::emitWord(), llvm::MachineCodeEmitter::finishFunctionStub(), llvm::MachineCodeEmitter::getCurrentPCValue(), PPC32CompilationCallback(), and llvm::MachineCodeEmitter::startFunctionStub().

TargetJITInfo::LazyResolverFn PPC32JITInfo::getLazyResolverFunction JITCompilerFn   )  [virtual]
 

Definition at line 157 of file PPC32JITInfo.cpp.

References JITCompilerFunction, and PPC32CompilationCallback().

void PPC32JITInfo::relocate void *  Function,
MachineRelocation MR,
unsigned  NumRelocs
[virtual]
 

relocate - Before the JIT can run a block of code that has been emitted, it must rewrite the code to contain the actual addresses of any referenced global symbols.

Reimplemented from llvm::TargetJITInfo.

Definition at line 190 of file PPC32JITInfo.cpp.

References llvm::MachineRelocation::getConstantVal(), llvm::MachineRelocation::getMachineCodeOffset(), llvm::MachineRelocation::getRelocationType(), llvm::MachineRelocation::getResultPointer(), llvm::PPC::reloc_absolute_high, llvm::PPC::reloc_absolute_low, llvm::PPC::reloc_absolute_ptr_high, llvm::PPC::reloc_absolute_ptr_low, and llvm::PPC::reloc_pcrel_bx.

void PPC32JITInfo::replaceMachineCodeForFunction void *  Old,
void *  New
[virtual]
 

replaceMachineCodeForFunction - Make it so that calling the function whose machine code is at OLD turns into a call to NEW, perhaps by overwriting OLD with a branch to NEW. This is used for self-modifying code.

Implements llvm::TargetJITInfo.

Definition at line 241 of file PPC32JITInfo.cpp.

References EmitBranchToAt().


The documentation for this class was generated from the following files: