> Formatting. The {} should be indented like static
> and return 2 columns to the right of that.
Right.
> For base_addr computation, you don't really need g or ptr_checks,
> do you? So why not move the:
> auto_vec *ptr_checks = &ctx->asan_check_map.get_or_insert (ptr);
> gimple g = maybe
> Testing SANITIZE_ADDRESS bit in flag_sanitize_recover doesn't make sense,
> testing it in flag_sanitize of course does, but for recover you care
> whether
> the SANITIZE_{KERNEL,USER}_ADDRESS bit in flag_sanitize_recover is set
> depending on if SANITIZE_{KERNEL,USER}_ADDRESS is set in
> flag
> And I wonder whether it'd be worth it to create sanopt.c -
> and move sanopt related stuff there
+1
--
View this message in context:
http://gcc.1065356.n5.nabble.com/PATCH-Optimize-UBSAN-NULL-checks-tp1084891p1084905.html
Sent from the gcc - patches mailing list archive at Nabble.com.
On Fri, Oct 31, 2014 at 12:19 PM, Marek Polacek-3 [via gcc]
wrote:
> On Thu, Oct 30, 2014 at 07:47:52PM +0100, Marek Polacek wrote:
>
>> This patch tries to optimize away redundant UBSAN_NULL checks.
>> It walks the statements, looks for UBSAN_NULL calls and keeps
>> track of pointers and statemen
On Fri, Oct 31, 2014 at 10:51 PM, Yuri Gribov wrote:
> I've tried similar optimizations
For Asan that is.
--
View this message in context:
http://gcc.1065356.n5.nabble.com/PATCH-Optimize-UBSAN-NULL-checks-tp1084891p1085287.html
Sent from the gcc - patches mailing list archive at Nabble.com.
> BTW, I've noticed that perhaps using BIT_AND_EXPR for the
> (shadow != 0) & ((base_addr & 7) + (real_size_in_bytes - 1) >= shadow)
> tests isn't best, maybe we could get better code if we expanded it as
> (shadow != 0) && ((base_addr & 7) + (real_size_in_bytes - 1) >= shadow)
> (i.e. an extra
> AFAIK LLVM team recently got some 1% on SPEC from this.
On x64 that is.
--
View this message in context:
http://gcc.1065356.n5.nabble.com/Re-please-verify-my-mail-to-community-tp1066917p1073371.html
Sent from the gcc - patches mailing list archive at Nabble.com.