diff options
author | John McCall <rjmccall@apple.com> | 2010-09-02 09:58:18 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2010-09-02 09:58:18 +0000 |
commit | 8ed55a54fdcb7a0bb9af26f1fe59e3e7ef688f7a (patch) | |
tree | 3350c44942ae4288ee192a202d6f16235a3aa53b /clang/lib/CodeGen/CodeGenFunction.h | |
parent | 7f1982731e5cda60ceb910b6cddc0825e1f7caa6 (diff) | |
download | bcm5719-llvm-8ed55a54fdcb7a0bb9af26f1fe59e3e7ef688f7a.tar.gz bcm5719-llvm-8ed55a54fdcb7a0bb9af26f1fe59e3e7ef688f7a.zip |
Abstract IR generation of array cookies into the C++ ABI class and
implement ARM array cookies. Also fix a few unfortunate bugs:
- throwing dtors in deletes prevented the allocation from being deleted
- adding the cookie to the new[] size was not being considered for
overflow (and, more seriously, was screwing up the earlier checks)
- deleting an array via a pointer to array of class type was not
causing any destructors to be run and was passing the unadjusted
pointer to the deallocator
- lots of address-space problems, in case anyone wants to support
free store in a variant address space :)
llvm-svn: 112814
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index fc741f8ef02..4f0420536ad 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -731,6 +731,7 @@ private: public: CodeGenFunction(CodeGenModule &cgm); + CodeGenTypes &getTypes() const { return CGM.getTypes(); } ASTContext &getContext() const; CGDebugInfo *getDebugInfo() { return DebugInfo; } |