middle-end/70090: Dynamic sizes for -fsanitize=object-size
authorSiddhesh Poyarekar <siddhesh@gotplt.org>
Tue, 10 May 2022 07:21:42 +0000 (12:51 +0530)
committerSiddhesh Poyarekar <siddhesh@gotplt.org>
Tue, 10 May 2022 07:21:42 +0000 (12:51 +0530)
commit28896b38fabce818e59266b0063a46b3bc1b700f
treee59cc4ea722ed2354fcce448d15c9463c212237f
parentbb2921ab84dba014f24be06663636c7fb1361474
middle-end/70090: Dynamic sizes for -fsanitize=object-size

Use __builtin_dynamic_object_size to get object sizes for ubsan.

gcc/ChangeLog:

PR middle-end/70090
* ubsan.cc (ubsan_expand_objsize_ifn): Allow non-constant SIZE.
(instrument_object_size): Get dynamic object size expression.

gcc/testsuite/ChangeLog:

PR middle-end/70090
* gcc.dg/ubsan/object-size-dyn.c: New test.

Signed-off-by: Siddhesh Poyarekar <siddhesh@gotplt.org>
gcc/testsuite/gcc.dg/ubsan/object-size-dyn.c [new file with mode: 0644]
gcc/ubsan.cc