diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2008-08-13 00:59:25 +0000 |
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2008-08-13 00:59:25 +0000 |
| commit | 89da6ad1db120f53437de8800f8cd6de532a8003 (patch) | |
| tree | c4b056d205b1a46f61ddd9ec370ecf08ca92fda3 /clang/lib/CodeGen/CGObjCMac.cpp | |
| parent | 40f83ac6497f61f24baf49afb66d67d5181e9dfe (diff) | |
| download | bcm5719-llvm-89da6ad1db120f53437de8800f8cd6de532a8003.tar.gz bcm5719-llvm-89da6ad1db120f53437de8800f8cd6de532a8003.zip | |
Change ObjCRuntime GenerateProtocol[Ref] methods to take
ObjCProtocolDecl directly.
Implement CodeGen support for forward protocol decls (no-ops are so
nice to implement).
Also moved CGObjCRuntime.h out of CodeGenModule.h
llvm-svn: 54709
Diffstat (limited to 'clang/lib/CodeGen/CGObjCMac.cpp')
| -rw-r--r-- | clang/lib/CodeGen/CGObjCMac.cpp | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/clang/lib/CodeGen/CGObjCMac.cpp b/clang/lib/CodeGen/CGObjCMac.cpp index bd510899032..f6e32078877 100644 --- a/clang/lib/CodeGen/CGObjCMac.cpp +++ b/clang/lib/CodeGen/CGObjCMac.cpp @@ -168,14 +168,9 @@ public: const llvm::SmallVectorImpl<std::string> &Protocols); virtual llvm::Value *GenerateProtocolRef(llvm::IRBuilder<> &Builder, - const char *ProtocolName); + const ObjCProtocolDecl *PD); - virtual void GenerateProtocol(const char *ProtocolName, - const llvm::SmallVectorImpl<std::string> &Protocols, - const llvm::SmallVectorImpl<llvm::Constant *> &InstanceMethodNames, - const llvm::SmallVectorImpl<llvm::Constant *> &InstanceMethodTypes, - const llvm::SmallVectorImpl<llvm::Constant *> &ClassMethodNames, - const llvm::SmallVectorImpl<llvm::Constant *> &ClassMethodTypes); + virtual void GenerateProtocol(const ObjCProtocolDecl *PD); virtual llvm::Function *ModuleInitFunction(); }; @@ -300,18 +295,13 @@ llvm::Value *CGObjCMac::GenerateMessageSend(llvm::IRBuilder<> &Builder, } llvm::Value *CGObjCMac::GenerateProtocolRef(llvm::IRBuilder<> &Builder, - const char *ProtocolName) { + const ObjCProtocolDecl *PD) { // assert(0 && "Cannot get protocol reference on Mac runtime."); return llvm::Constant::getNullValue(ObjCTypes.ProtocolPtrTy); return 0; } -void CGObjCMac::GenerateProtocol(const char *ProtocolName, - const llvm::SmallVectorImpl<std::string> &Protocols, - const llvm::SmallVectorImpl<llvm::Constant *> &InstanceMethodNames, - const llvm::SmallVectorImpl<llvm::Constant *> &InstanceMethodTypes, - const llvm::SmallVectorImpl<llvm::Constant *> &ClassMethodNames, - const llvm::SmallVectorImpl<llvm::Constant *> &ClassMethodTypes) { +void CGObjCMac::GenerateProtocol(const ObjCProtocolDecl *PD) { // assert(0 && "Cannot generate protocol for Mac runtime."); } |

