diff options
author | John McCall <rjmccall@apple.com> | 2012-07-31 05:14:30 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2012-07-31 05:14:30 +0000 |
commit | f253834456b24247aad1ddfdafad55bad668c0b6 (patch) | |
tree | 7ff7a74649075f26e4790acc350f8abe89a311bb /clang/lib/CodeGen/CGObjCGNU.cpp | |
parent | fb39f97d4cb1f59aeeb967e3b5fbad47847a8597 (diff) | |
download | bcm5719-llvm-f253834456b24247aad1ddfdafad55bad668c0b6.tar.gz bcm5719-llvm-f253834456b24247aad1ddfdafad55bad668c0b6.zip |
Introduce new queries on ObjCRuntime for how to interpret subscripts
on object pointers and whether pointer arithmetic on object pointers
is supported. Make ObjFW interpret subscripts as pseudo-objects.
Based on a patch by Jonathan Schleifer.
llvm-svn: 161028
Diffstat (limited to 'clang/lib/CodeGen/CGObjCGNU.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGObjCGNU.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CGObjCGNU.cpp b/clang/lib/CodeGen/CGObjCGNU.cpp index 9993f448f7b..166bb9a2c02 100644 --- a/clang/lib/CodeGen/CGObjCGNU.cpp +++ b/clang/lib/CodeGen/CGObjCGNU.cpp @@ -653,8 +653,11 @@ class CGObjCGNUstep : public CGObjCGNU { } }; -/// Class used when targeting the ObjFW runtime. -class CGObjCObjFW: public CGObjCGCC { +/// The ObjFW runtime, which closely follows the GCC runtime's +/// compiler ABI. Support here is due to Jonathan Schleifer, the +/// ObjFW maintainer. +class CGObjCObjFW : public CGObjCGCC { + /// Emit class references unconditionally as direct symbol references. virtual llvm::Value *GetClassNamed(CGBuilderTy &Builder, const std::string &Name, bool isWeak) { if (isWeak) |