Re: [PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-22 Thread Yury Gribov
On 08/19/2014 04:31 PM, Yury Gribov wrote: On 08/19/2014 03:37 PM, Dominique Dhumieres wrote: Makes sense, I've attached new patch (retested as usual). Well, you probably did not test with -m32: Right, I only did plain make check until now. Thanks for reporting, I'll check this tomorrow.

Re: [PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-19 Thread Dominique Dhumieres
Makes sense, I've attached new patch (retested as usual). Well, you probably did not test with -m32: Running target unix/-m32 FAIL: c-c++-common/asan/pr62089.c -O0 output pattern test, is = FAIL: c-c++-common/asan/pr62089.c

Re: [PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-19 Thread Yury Gribov
On 08/19/2014 03:37 PM, Dominique Dhumieres wrote: Makes sense, I've attached new patch (retested as usual). Well, you probably did not test with -m32: Right, I only did plain make check until now. Thanks for reporting, I'll check this tomorrow. -Y

Re: [PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-15 Thread Yury Gribov
On 08/14/2014 12:04 PM, Jakub Jelinek wrote: No, this should be if, not else if, and be after the } below. We really can't handle it otherwise. Generally, the bitfield COMPONENT_REFs should have DECL_BIT_FIELD_REPRESENTATIVE which is not a bitfield, therefore the common case will be handled.

Re: [PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-15 Thread Jakub Jelinek
On Fri, Aug 15, 2014 at 06:53:25PM +0400, Yury Gribov wrote: 2014-08-15 Yury Gribov y.gri...@samsung.com gcc/ PR sanitizer/62089 * asan.c (instrument_derefs): Fix bitfield check. gcc/testsuite/ PR sanitizer/62089 *

Re: [PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-14 Thread Yury Gribov
On 08/14/2014 09:46 AM, Yury Gribov wrote: Something like this? Forgot to mention: full tested the new patch on x64 (bootstrap, regtest, Asan-bootstrap).

Re: [PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-14 Thread Jakub Jelinek
On Thu, Aug 14, 2014 at 09:46:46AM +0400, Yury Gribov wrote: --- a/gcc/asan.c +++ b/gcc/asan.c @@ -1690,22 +1690,21 @@ instrument_derefs (gimple_stmt_iterator *iter, tree t, int volatilep = 0, unsignedp = 0; tree inner = get_inner_reference (t, bitsize, bitpos, offset,

[PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-13 Thread Yury Gribov
Hi all, GCC Asan may currently fail to generate checks for accesses to wide structure fields due to unfortunate intermix with code that handles bitfields. This patch fixes it and also adds a bunch of tests. Bootstrapped, regtested and asan-bootstrapped on x64. Ok to commit? -Y commit

Re: [PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-13 Thread Jakub Jelinek
On Wed, Aug 13, 2014 at 02:09:33PM +0400, Yury Gribov wrote: --- a/gcc/asan.c +++ b/gcc/asan.c @@ -1690,9 +1690,7 @@ instrument_derefs (gimple_stmt_iterator *iter, tree t, int volatilep = 0, unsignedp = 0; tree inner = get_inner_reference (t, bitsize, bitpos, offset,

Re: [PATCH] Fix for PR/62089 (enable missing Asan checks)

2014-08-13 Thread Yury Gribov
On 08/13/2014 02:13 PM, Jakub Jelinek wrote: I wonder if we just shouldn't handle COMPONENT_REFs with DECL_BIT_FIELD_REPRESENTATIVE that way unconditionally. So, do the if (TREE_CODE (t) == COMPONENT_REF ... before the other checks, and else if (bitpos % BITS_PER_UNIT || bitsize !=