Re: Record missing equivalence

2013-03-25 Thread Jeff Law
On 03/21/2013 03:44 AM, Richard Biener wrote: + /* If LHS is an SSA_NAME and RHS is a constant and LHS was set +via a widening type conversion, then we may be able to record +additional equivalences. */ + if (lhs + TREE_CODE (lhs) == SSA_NAME

Re: Record missing equivalence

2013-03-25 Thread H.J. Lu
On Mon, Mar 25, 2013 at 12:08 PM, Jeff Law l...@redhat.com wrote: On 03/21/2013 03:44 AM, Richard Biener wrote: + /* If LHS is an SSA_NAME and RHS is a constant and LHS was set +via a widening type conversion, then we may be able to record +additional

Re: Record missing equivalence

2013-03-25 Thread Jeff Law
On 03/25/2013 06:41 PM, H.J. Lu wrote: This breaks the bootstrap on Linux/x86: http://gcc.gnu.org/ml/gcc-regression/2013-03/msg00148.html ../../../../../src-trunk/libstdc++-v3/src/c++98/mt_allocator.cc: In member function 'std::size_t __gnu_cxx::__pooltrue::_M_get_thread_id()':

Re: Record missing equivalence

2013-03-25 Thread Jeff Law
On 03/25/2013 06:41 PM, H.J. Lu wrote: This breaks the bootstrap on Linux/x86: http://gcc.gnu.org/ml/gcc-regression/2013-03/msg00148.html ../../../../../src-trunk/libstdc++-v3/src/c++98/mt_allocator.cc: In member function 'std::size_t __gnu_cxx::__pooltrue::_M_get_thread_id()':

Re: Record missing equivalence

2013-03-21 Thread Richard Biener
On Thu, Mar 21, 2013 at 5:43 AM, Jeff Law l...@redhat.com wrote: This was something I spotted while looking at why certain redundant conditionals were not eliminated. In particular this affects the compiler's ability to eliminate a variety of gimple checking tests. Consider an equality

Re: Record missing equivalence

2013-03-21 Thread Jeff Law
On 03/21/2013 03:44 AM, Richard Biener wrote: + + if (defstmt + is_gimple_assign (defstmt) + CONVERT_EXPR_CODE_P (gimple_assign_rhs_code (defstmt))) + { + tree old_rhs = gimple_assign_rhs1 (defstmt); +

Record missing equivalence

2013-03-20 Thread Jeff Law
This was something I spotted while looking at why certain redundant conditionals were not eliminated. In particular this affects the compiler's ability to eliminate a variety of gimple checking tests. Consider an equality comparison if (a == 10) true arm else else arm We obviously