diff options
author | George Burgess IV <george.burgess.iv@gmail.com> | 2015-08-18 18:18:27 +0000 |
---|---|---|
committer | George Burgess IV <george.burgess.iv@gmail.com> | 2015-08-18 18:18:27 +0000 |
commit | 232c76213d43fbc9dac94a7350c1ee96e0be3d9f (patch) | |
tree | b166487406fe2eee24f78d73c23c7f4bc91c2dfb /clang/lib/Frontend/ASTMerge.cpp | |
parent | 09bf4c102f9f78bb50df36d22714e7048d3bef16 (diff) | |
download | llvm-232c76213d43fbc9dac94a7350c1ee96e0be3d9f.zip llvm-232c76213d43fbc9dac94a7350c1ee96e0be3d9f.tar.gz llvm-232c76213d43fbc9dac94a7350c1ee96e0be3d9f.tar.bz2 |
Make __builtin_object_size always answer correctly
__builtin_object_size would return incorrect answers for many uses where
type=3. This fixes the inaccuracy by making us emit 0 instead of LLVM's
objectsize intrinsic.
Additionally, there are many cases where we would emit suboptimal (but
correct) answers, such as when arrays are involved. This patch fixes
some of these cases (please see new tests in test/CodeGen/object-size.c
for specifics on which cases are improved)
Patch mostly by Richard Smith.
Differential Revision: http://reviews.llvm.org/D12000
This fixes PR15212.
llvm-svn: 245323
Diffstat (limited to 'clang/lib/Frontend/ASTMerge.cpp')
0 files changed, 0 insertions, 0 deletions