https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77964
Markus Trippelsdorf <trippels at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2016-10-13 Ever confirmed|0 |1 --- Comment #4 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- Started with r235622: commit 73447cc5d17178b0a756be48133e55fdc7574c13 Author: rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Fri Apr 29 08:36:49 2016 +0000 2016-04-29 Richard Biener <rguent...@suse.de> PR tree-optimization/13962 PR tree-optimization/65686 * tree-ssa-alias.h (ptrs_compare_unequal): Declare. * tree-ssa-alias.c (ptrs_compare_unequal): New function using PTA to compare pointers. * match.pd: Add pattern for pointer equality compare simplification using ptrs_compare_unequal good: call kmem_cache_alloc testq %rax, %rax movq %rax, %r12 je .L28 movq $__start_builtin_fw, %r13 cmpq $__end_builtin_fw, %r13 jne .L86 jmp .L30 .L32: addq $24, %r13 cmpq $__end_builtin_fw, %r13 je .L30 .L86: movq 0(%r13), %rsi movq %rbx, %rdi call strcmp ------------------------------------------------------------------ bad: call kmem_cache_alloc testq %rax, %rax movq %rax, %r15 movq (%rsp), %r8 je .L6 movq $__start_builtin_fw, %rbx jmp .L7 .L20: addq $24, %rbx .L7: movq (%rbx), %rsi movq %rbp, %rdi call strcmp