[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-04-02 Thread bonzini at gnu dot org
--- Comment #14 from bonzini at gnu dot org 2008-04-02 09:57 --- committed to trunk as 133828 -- bonzini at gnu dot org changed: What|Removed |Added

[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-03-11 Thread bonzini at gcc dot gnu dot org
--- Comment #12 from bonzini at gnu dot org 2008-03-11 16:49 --- For 4.4, both mul16 and mul32 will be fixed by the pending patch. The pending patch is what cures the regression part of this bug. --- Comment #13 from bonzini at gnu dot org 2008-03-11 16:49 --- Subject: Bug

[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-03-11 Thread bonzini at gnu dot org
--- Comment #12 from bonzini at gnu dot org 2008-03-11 16:49 --- For 4.4, both mul16 and mul32 will be fixed by the pending patch. The pending patch is what cures the regression part of this bug. -- bonzini at gnu dot org changed: What|Removed

[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-03-10 Thread bonzini at gnu dot org
--- Comment #10 from bonzini at gnu dot org 2008-03-10 14:14 --- I have a patch. -- bonzini at gnu dot org changed: What|Removed |Added AssignedTo|unassigned at

[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-03-10 Thread bonzini at gnu dot org
--- Comment #11 from bonzini at gnu dot org 2008-03-10 15:19 --- The patch at http://gcc.gnu.org/ml/gcc-patches/2008-03/msg00623.html fixes mul16. -- bonzini at gnu dot org changed: What|Removed |Added

[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-03-05 Thread rguenth at gcc dot gnu dot org
--- Comment #5 from rguenth at gcc dot gnu dot org 2008-03-05 10:27 --- With -O we even have movl$0, %edx movla, %ecx imull %edx, %ecx I wonder why we do not constant-propagate / simplify here? Note that with 4.2 and 4.1 mul16 is also bad. Setting

[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-03-05 Thread ubizjak at gmail dot com
--- Comment #6 from ubizjak at gmail dot com 2008-03-05 10:32 --- 4.2 figures out in cse1 pass that: (insn 9 8 10 2 (parallel [ (set (reg:DI 60 [ b ]) (zero_extend:DI (mem/c/i:SI (symbol_ref:SI (b) var_decl 0xb7caf108 b) [3 b+0 S4 A32])))

[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-03-05 Thread ubizjak at gmail dot com
--- Comment #7 from ubizjak at gmail dot com 2008-03-05 11:10 --- It looks that: 2006-11-03 Paolo Bonzini [EMAIL PROTECTED] Steven Bosscher [EMAIL PROTECTED] * fwprop.c: New file. ... * cse.c (fold_rtx_subreg, fold_rtx_mem, fold_rtx_mem_1,

[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-03-05 Thread bonzini at gnu dot org
--- Comment #8 from bonzini at gnu dot org 2008-03-05 13:21 --- Should be handled by this code in simplify_subreg: /* A SUBREG resulting from a zero extension may fold to zero if it extracts higher bits that the ZERO_EXTEND's source bits. */ if (GET_CODE (op) ==

[Bug rtl-optimization/35281] [4.3/4.4 Regression] multiply with 0 generated for 64*32-64

2008-03-05 Thread bonzini at gnu dot org
--- Comment #9 from bonzini at gnu dot org 2008-03-05 13:22 --- fwprop does not because the memory is written to (and fwprop does not do alias analysis). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35281