[Bug rtl-optimization/45617] optimize bit shift+compare at RTL level

2010-09-13 Thread jakub at gcc dot gnu dot org


--- Comment #2 from jakub at gcc dot gnu dot org  2010-09-13 21:00 ---
Subject: Bug 45617

Author: jakub
Date: Mon Sep 13 21:00:03 2010
New Revision: 164257

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=164257
Log:
PR rtl-optimization/45617
* combine.c (simplify_comparison): Optimize (X  N) {,=,,=} C
even if low N bits of X aren't known to be zero.

* gcc.target/i386/pr45617.c: New test.

Added:
trunk/gcc/testsuite/gcc.target/i386/pr45617.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/combine.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45617



[Bug rtl-optimization/45617] optimize bit shift+compare at RTL level

2010-09-13 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2010-09-13 21:10 ---
Committed.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45617



[Bug rtl-optimization/45617] optimize bit shift+compare at RTL level

2010-09-09 Thread zsojka at seznam dot cz


--- Comment #1 from zsojka at seznam dot cz  2010-09-09 17:51 ---
Created an attachment (id=21756)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21756action=view)
Jakub's patch from PR20517 comment #6

gcc bootstrapped fine

The resulting code for foo() and fooi() is the same as for bar() and bari(),
respectively.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45617