PR tree-optimization/71831 - __builtin_object_size poor results with no
commit4e91a07b9010003cb22c22c20c6aa6417a57333b
authormsebor <msebor@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 2 Sep 2016 02:14:50 +0000 (2 02:14 +0000)
committermsebor <msebor@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 2 Sep 2016 02:14:50 +0000 (2 02:14 +0000)
tree8330dbb112ec47bbcf763663d1bd7051721bb3a6
parent5510c0a06dc3ac4fdd7b76a9d10f216f4b26975b
PR tree-optimization/71831 - __builtin_object_size poor results with no
optimization

gcc/testsuite/ChangeLog:

PR tree-optimization/71831
* gcc.dg/builtin-object-size-16.c: New test.
* gcc.dg/builtin-object-size-17.c: New test.

gcc/ChangeLog:

PR tree-optimization/71831
* tree-object-size.h: Return bool instead of the size and add
argument for the size.
* tree-object-size.c (compute_object_offset): Update signature.
(addr_object_size): Same.
(compute_builtin_object_size): Return bool instead of the size
and add argument for the size.  Handle POINTER_PLUS_EXPR when
optimization is disabled.
(expr_object_size): Adjust.
(plus_stmt_object_size): Adjust.
(pass_object_sizes::execute): Adjust.
* builtins.c (fold_builtin_object_size): Adjust.
* doc/extend.texi (Object Size Checking): Update.
* ubsan.c (instrument_object_size): Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@239953 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/builtins.c
gcc/doc/extend.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/builtin-object-size-16.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/builtin-object-size-17.c [new file with mode: 0644]
gcc/tree-object-size.c
gcc/tree-object-size.h
gcc/ubsan.c