diff options
author | Chris Lattner <sabre@nondot.org> | 2008-04-13 07:32:11 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-04-13 07:32:11 +0000 |
commit | 50b36741673258aaebcd3c7fe1260031901cae57 (patch) | |
tree | f462debf1528d5b4d59be74eaf7015dff86e1ddf /lib/CodeGen/CGObjCEtoile.cpp | |
parent | 1b30cb27f894687c6021e7331265ae21aeb57d3f (diff) |
update to follow mainline llvm API change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49607 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGObjCEtoile.cpp')
-rw-r--r-- | lib/CodeGen/CGObjCEtoile.cpp | 29 |
1 files changed, 13 insertions, 16 deletions
diff --git a/lib/CodeGen/CGObjCEtoile.cpp b/lib/CodeGen/CGObjCEtoile.cpp index efd5fac329..4ff48f12b6 100644 --- a/lib/CodeGen/CGObjCEtoile.cpp +++ b/lib/CodeGen/CGObjCEtoile.cpp @@ -14,7 +14,7 @@ #include "CGObjCRuntime.h" #include "llvm/Module.h" #include "llvm/Support/Compiler.h" -#include "llvm/Support/LLVMBuilder.h" +#include "llvm/Support/IRBuilder.h" #include "llvm/ADT/SmallVector.h" namespace { @@ -36,14 +36,14 @@ public: CGObjCEtoile(llvm::Module &Mp, const llvm::Type *LLVMIntType, const llvm::Type *LLVMLongType); - virtual llvm::Value *generateMessageSend(llvm::LLVMFoldingBuilder &Builder, + virtual llvm::Value *generateMessageSend(llvm::IRBuilder &Builder, const llvm::Type *ReturnTy, llvm::Value *Sender, llvm::Value *Receiver, llvm::Value *Selector, llvm::Value** ArgV, unsigned ArgC); - llvm::Value *getSelector(llvm::LLVMFoldingBuilder &Builder, + llvm::Value *getSelector(llvm::IRBuilder &Builder, llvm::Value *SelName, llvm::Value *SelTypes); virtual llvm::Function *MethodPreamble(const llvm::Type *ReturnTy, @@ -117,7 +117,7 @@ CGObjCEtoile::CGObjCEtoile(llvm::Module &M, } /// Looks up the selector for the specified name / type pair. -llvm::Value *CGObjCEtoile::getSelector(llvm::LLVMFoldingBuilder &Builder, +llvm::Value *CGObjCEtoile::getSelector(llvm::IRBuilder &Builder, llvm::Value *SelName, llvm::Value *SelTypes) { @@ -137,23 +137,20 @@ llvm::Value *CGObjCEtoile::getSelector(llvm::LLVMFoldingBuilder &Builder, return Builder.CreateCall(SelFunction, Args.begin(), Args.end()); } -static void SetField(llvm::LLVMFoldingBuilder &Builder, - llvm::Value *Structure, - unsigned Index, - llvm::Value *Value) { +static void SetField(llvm::IRBuilder &Builder, llvm::Value *Structure, + unsigned Index, llvm::Value *Value) { llvm::Value *element_ptr = Builder.CreateStructGEP(Structure, Index); Builder.CreateStore(Value, element_ptr); } // Generate code for a message send expression on the Etoile runtime. // BIG FAT WARNING: Much of this code will need factoring out later. -llvm::Value *CGObjCEtoile::generateMessageSend( - llvm::LLVMFoldingBuilder &Builder, - const llvm::Type *ReturnTy, - llvm::Value *Sender, - llvm::Value *Receiver, - llvm::Value *Selector, - llvm::Value** ArgV, - unsigned ArgC) { +llvm::Value *CGObjCEtoile::generateMessageSend(llvm::IRBuilder &Builder, + const llvm::Type *ReturnTy, + llvm::Value *Sender, + llvm::Value *Receiver, + llvm::Value *Selector, + llvm::Value** ArgV, + unsigned ArgC) { // FIXME: Selectors should be statically cached, not looked up on every call. llvm::Value *cmd = getSelector(Builder, Selector, 0); // TODO: [Polymorphic] inline caching |