public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/44695]  New: ice in simplify_subreg, at simplify-rtx.c:5117
@ 2010-06-28  6:01 regehr at cs dot utah dot edu
  2010-06-28  9:17 ` [Bug rtl-optimization/44695] [4.6 Regression] " rguenth at gcc dot gnu dot org
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: regehr at cs dot utah dot edu @ 2010-06-28  6:01 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1683 bytes --]

regehr@john-home:~/volatile/bugs/tmp319$ current-gcc -v

Using built-in specs.
COLLECT_GCC=current-gcc
COLLECT_LTO_WRAPPER=/home/regehr/z/compiler-install/gcc-r161425-install/libexec/gcc/i686-pc-linux-gnu/4.6.0/lto-wrapper
Target: i686-pc-linux-gnu
Configured with: ../configure --with-libelf=/usr/local --enable-lto
--prefix=/home/regehr/z/compiler-install/gcc-r161425-install
--program-prefix=r161425- --enable-languages=c,c++
Thread model: posix
gcc version 4.6.0 20100626 (experimental) (GCC) 

regehr@john-home:~/volatile/bugs/tmp319$ current-gcc -O2 small.c -c 

small.c: In function ‘int81’:
small.c:20:1: internal compiler error: in simplify_subreg, at
simplify-rtx.c:5117
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

regehr@john-home:~/volatile/bugs/tmp319$ cat small.c

typedef int int32_t;
typedef unsigned char uint8_t;

static uint8_t
safe_div_func_uint8_t_u_u (uint8_t ui1, uint8_t ui2)
{
  return ui2 ? : (ui1 / ui2);
}

int safe (int);
int func_51 (int);

void
int81 (void)
{
  int32_t l_219 = 8L;
  if (safe (safe_div_func_uint8_t_u_u (1 || 0, l_219 & func_51 (0))))
    {
    }
}


-- 
           Summary: ice in simplify_subreg, at simplify-rtx.c:5117
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: regehr at cs dot utah dot edu
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
@ 2010-06-28  9:17 ` rguenth at gcc dot gnu dot org
  2010-06-28 21:57 ` hjl dot tools at gmail dot com
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-06-28  9:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from rguenth at gcc dot gnu dot org  2010-06-28 09:17 -------
Confirmed.  A recent regression.

#2  0x00000000009ad621 in simplify_subreg (outermode=HImode, 
    op=0x7ffff7facd40, innermode=QImode, byte=0)
    at /space/rguenther/src/svn/trunk/gcc/simplify-rtx.c:5116
5116      gcc_assert (GET_MODE (op) == innermode
5117                  || GET_MODE (op) == VOIDmode);
(gdb) call debug_rtx (op)
(reg:HI 68)

during combine.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|c                           |rtl-optimization
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2010-06-28 09:17:18
               date|                            |
            Summary|ice in simplify_subreg, at  |[4.6 Regression] ice in
                   |simplify-rtx.c:5117         |simplify_subreg, at
                   |                            |simplify-rtx.c:5117
   Target Milestone|---                         |4.6.0
            Version|unknown                     |4.6.0


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
  2010-06-28  9:17 ` [Bug rtl-optimization/44695] [4.6 Regression] " rguenth at gcc dot gnu dot org
@ 2010-06-28 21:57 ` hjl dot tools at gmail dot com
  2010-06-28 23:21 ` hjl dot tools at gmail dot com
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-06-28 21:57 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from hjl dot tools at gmail dot com  2010-06-28 21:57 -------
I think it is a latent bug exposed by revision 161329. Now
x86 backend may generate:

(ior:HI (ashift:HI (zero_extend:HI (umod:QI (reg:HI 68)
                (reg:QI 61 [ D.2750 ])))
        (const_int 8 [0x8]))
    (zero_extend:HI (udiv:QI (reg:HI 68)
            (reg:QI 61 [ D.2750 ]))))

Combine ran into trouble:
(gdb) bt
#0  fancy_abort (
    file=0x11e5860 "/export/gnu/import/git/gcc/gcc/simplify-rtx.c", line=5117, 
    function=0x11e6be0 "simplify_subreg")
    at /export/gnu/import/git/gcc/gcc/diagnostic.c:879
#1  0x00000000009d76ad in simplify_subreg (outermode=HImode, 
    op=0x7ffff1d04f00, innermode=QImode, byte=0)
    at /export/gnu/import/git/gcc/gcc/simplify-rtx.c:5116
#2  0x00000000009d87e6 in simplify_gen_subreg (outermode=HImode, 
    op=0x7ffff1d04f00, innermode=QImode, byte=0)
    at /export/gnu/import/git/gcc/gcc/simplify-rtx.c:5426
#3  0x0000000000fcc60a in if_then_else_cond (x=0x7ffff1b6d390, 
    ptrue=0x7fffffffd448, pfalse=0x7fffffffd438)
    at /export/gnu/import/git/gcc/gcc/combine.c:8219
#4  0x0000000000fcbf66 in if_then_else_cond (x=0x7ffff1b6d3a8, 
    ptrue=0x7fffffffd4d0, pfalse=0x7fffffffd4c8)
    at /export/gnu/import/git/gcc/gcc/combine.c:8103
#5  0x0000000000fc305a in combine_simplify_rtx (x=0x7ffff1b6d3a8, 
    op0_mode=VOIDmode, in_dest=0)
    at /export/gnu/import/git/gcc/gcc/combine.c:4864
#6  0x0000000000fc2def in subst (x=0x7ffff1b6d3a8, from=0x7ffff1c170c0, 
    to=0x7ffff1c170c0, in_dest=0, unique_copy=0)
    at /export/gnu/import/git/gcc/gcc/combine.c:4803
#7  0x0000000000fc2ba7 in subst (x=0x7ffff1b64720, from=0x7ffff1c170c0, 
---Type <return> to continue, or q <return> to quit---
    to=0x7ffff1c170c0, in_dest=0, unique_copy=0)
    at /export/gnu/import/git/gcc/gcc/combine.c:4741
#8  0x0000000000fc2ba7 in subst (x=0x7ffff1b64738, from=0x7ffff1c170c0, 
    to=0x7ffff1c170c0, in_dest=0, unique_copy=0)
    at /export/gnu/import/git/gcc/gcc/combine.c:4741
#9  0x0000000000fbd20b in try_combine (i3=0x7ffff1b0a870, i2=0x7ffff1b0a798, 
    i1=0x0, new_direct_jump_p=0x7fffffffdaf4)
    at /export/gnu/import/git/gcc/gcc/combine.c:2885
#10 0x0000000000fb911e in combine_instructions (f=0x7ffff1c227c0, nregs=70)
    at /export/gnu/import/git/gcc/gcc/combine.c:1152
#11 0x0000000000fd898f in rest_of_handle_combine ()
    at /export/gnu/import/git/gcc/gcc/combine.c:13342


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hjl dot tools at gmail dot
                   |                            |com


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
  2010-06-28  9:17 ` [Bug rtl-optimization/44695] [4.6 Regression] " rguenth at gcc dot gnu dot org
  2010-06-28 21:57 ` hjl dot tools at gmail dot com
@ 2010-06-28 23:21 ` hjl dot tools at gmail dot com
  2010-06-29 19:16 ` hjl dot tools at gmail dot com
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-06-28 23:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from hjl dot tools at gmail dot com  2010-06-28 23:21 -------
Created an attachment (id=21033)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21033&action=view)
A patch

This patch avoids ICE. But it probably isn't the right fix.


-- 


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
                   ` (2 preceding siblings ...)
  2010-06-28 23:21 ` hjl dot tools at gmail dot com
@ 2010-06-29 19:16 ` hjl dot tools at gmail dot com
  2010-06-30 11:52 ` bonzini at gnu dot org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-06-29 19:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from hjl dot tools at gmail dot com  2010-06-29 19:16 -------
A patch is posted at

http://gcc.gnu.org/ml/gcc-patches/2010-06/msg03033.html


-- 


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
                   ` (3 preceding siblings ...)
  2010-06-29 19:16 ` hjl dot tools at gmail dot com
@ 2010-06-30 11:52 ` bonzini at gnu dot org
  2010-06-30 18:15 ` hjl dot tools at gmail dot com
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bonzini at gnu dot org @ 2010-06-30 11:52 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from bonzini at gnu dot org  2010-06-30 11:51 -------
I agree that the problem is a wrong pattern.

Here you have non-matching mode between the udiv/umod and the first argument:

> (ior:HI (ashift:HI (zero_extend:HI (umod:QI (reg:HI 68)
>                 (reg:QI 61 [ D.2750 ])))
>         (const_int 8 [0x8]))
>     (zero_extend:HI (udiv:QI (reg:HI 68)
>             (reg:QI 61 [ D.2750 ]))))

Instead you need to have this before reload:

(set (match_operand:HI "register_operand" "=a")
    (ior:HI (ashift:HI
        (zero_extend:HI (umod:QI (match_operand:QI "register_operand" "0")
                                 (match_operand:QI "register_operand" "q")))
            (const_int 8 [0x8]))
        (zero_extend:HI (udiv:QI (match_dup 1) (match_dup 2))))

and after reload split it into a zero/sign extension of al into ax followed by

(set (match_dup 0)
    (ior:HI (ashift:HI (umod:HI (match_dup 0)
                 (zero_extend:HI (match_dup 2)))
        (const_int 8 [0x8]))
    (udiv:HI (match_dup 0)
            (zero_extend:HI (match_dup 2))))

(or maybe sign extend into eax? QImode->SImode is definitely cheaper for zero
extension, I don't know about the cost of cbw because of partial register
stalls).


-- 


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
                   ` (4 preceding siblings ...)
  2010-06-30 11:52 ` bonzini at gnu dot org
@ 2010-06-30 18:15 ` hjl dot tools at gmail dot com
  2010-06-30 18:47 ` hjl dot tools at gmail dot com
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-06-30 18:15 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from hjl dot tools at gmail dot com  2010-06-30 18:15 -------
Created an attachment (id=21045)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21045&action=view)
A patch

Using

(set (match_operand:HI "register_operand" "=a")
    (ior:HI (ashift:HI
        (zero_extend:HI (umod:QI (match_operand:QI "register_operand" "0")
                                 (match_operand:QI "register_operand" "q")))
            (const_int 8 [0x8]))
        (zero_extend:HI (udiv:QI (match_dup 1) (match_dup 2))))

before reload and split to

(set (match_dup 0)
    (ior:HI (ashift:HI (umod:HI (match_dup 0)
                 (zero_extend:HI (match_dup 2)))
        (const_int 8 [0x8]))
    (udiv:HI (match_dup 0)
            (zero_extend:HI (match_dup 2))))

will generate extra QI->HI extend during split. This patch
uses subreg instead. Does it look OK?


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #21033|0                           |1
        is obsolete|                            |


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
                   ` (5 preceding siblings ...)
  2010-06-30 18:15 ` hjl dot tools at gmail dot com
@ 2010-06-30 18:47 ` hjl dot tools at gmail dot com
  2010-07-01 17:47 ` hjl dot tools at gmail dot com
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-06-30 18:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from hjl dot tools at gmail dot com  2010-06-30 18:46 -------
A patch is posted at

http://gcc.gnu.org/ml/gcc-patches/2010-06/msg03173.html


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ubizjak at gmail dot com
                URL|                            |http://gcc.gnu.org/ml/gcc-
                   |                            |patches/2010-
                   |                            |06/msg03173.html


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
                   ` (6 preceding siblings ...)
  2010-06-30 18:47 ` hjl dot tools at gmail dot com
@ 2010-07-01 17:47 ` hjl dot tools at gmail dot com
  2010-07-02  0:37 ` hjl dot tools at gmail dot com
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-07-01 17:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from hjl dot tools at gmail dot com  2010-07-01 17:46 -------
The updated patch is at

http://gcc.gnu.org/ml/gcc-patches/2010-07/msg00076.html


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|http://gcc.gnu.org/ml/gcc-  |http://gcc.gnu.org/ml/gcc-
                   |patches/2010-               |patches/2010-
                   |06/msg03173.html            |07/msg00076.html


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
                   ` (7 preceding siblings ...)
  2010-07-01 17:47 ` hjl dot tools at gmail dot com
@ 2010-07-02  0:37 ` hjl dot tools at gmail dot com
  2010-07-04 23:18 ` hjl at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-07-02  0:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from hjl dot tools at gmail dot com  2010-07-02 00:37 -------
An updated patch is at

http://gcc.gnu.org/ml/gcc-patches/2010-07/msg00099.html


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|http://gcc.gnu.org/ml/gcc-  |http://gcc.gnu.org/ml/gcc-
                   |patches/2010-               |patches/2010-
                   |07/msg00076.html            |07/msg00099.html


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
                   ` (8 preceding siblings ...)
  2010-07-02  0:37 ` hjl dot tools at gmail dot com
@ 2010-07-04 23:18 ` hjl at gcc dot gnu dot org
  2010-07-05 12:21 ` jakub at gcc dot gnu dot org
  2010-07-07 21:12 ` hjl at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: hjl at gcc dot gnu dot org @ 2010-07-04 23:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from hjl at gcc dot gnu dot org  2010-07-04 23:18 -------
Subject: Bug 44695

Author: hjl
Date: Sun Jul  4 23:18:06 2010
New Revision: 161813

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=161813
Log:
Change 8bit divmod to HImode.

gcc/

2010-07-04  H.J. Lu  <hongjiu.lu@intel.com>

        PR rtl-optimization/44695
        * config/i386/i386.md (extract_code): Removed.
        (<u>divmodqi4): Likewise.
        (divmodqi4): New.
        (udivmodqi4): Likewise.
        (divmodhiqi3): Change div/mod to HImode and extend operand 2 to
        HImode.
        (udivmodhiqi3): Likewise.

gcc/testsuite/

2010-07-04  H.J. Lu  <hongjiu.lu@intel.com>

        PR rtl-optimization/44695
        * gcc.dg/torture/pr44695.c: New.

Added:
    trunk/gcc/testsuite/gcc.dg/torture/pr44695.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/i386.md
    trunk/gcc/testsuite/ChangeLog


-- 


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
                   ` (9 preceding siblings ...)
  2010-07-04 23:18 ` hjl at gcc dot gnu dot org
@ 2010-07-05 12:21 ` jakub at gcc dot gnu dot org
  2010-07-07 21:12 ` hjl at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-07-05 12:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from jakub at gcc dot gnu dot org  2010-07-05 12:21 -------
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug rtl-optimization/44695] [4.6 Regression] ice in simplify_subreg, at simplify-rtx.c:5117
  2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
                   ` (10 preceding siblings ...)
  2010-07-05 12:21 ` jakub at gcc dot gnu dot org
@ 2010-07-07 21:12 ` hjl at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: hjl at gcc dot gnu dot org @ 2010-07-07 21:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from hjl at gcc dot gnu dot org  2010-07-07 21:11 -------
Subject: Bug 44695

Author: hjl
Date: Wed Jul  7 21:11:25 2010
New Revision: 161933

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=161933
Log:
Backport 8bit div/mod improvements.

gcc/

2010-07-07  H.J. Lu  <hongjiu.lu@intel.com>

        Backport from mainline
        2010-07-04  H.J. Lu  <hongjiu.lu@intel.com>

        PR rtl-optimization/44695
        * config/i386/i386.md (extract_code): Removed.
        (<u>divmodqi4): Likewise.
        (divmodqi4): New.
        (udivmodqi4): Likewise.
        (divmodhiqi3): Change div/mod to HImode and extend operand 2 to
        HImode.
        (udivmodhiqi3): Likewise.

        2010-06-24  H.J. Lu  <hongjiu.lu@intel.com>

        PR target/44588
        * config/i386/i386.md (extract_code): New.
        (<u>divmodqi4): Likewise.
        (divmodhiqi3): Likewise.
        (udivmodhiqi3): Likewise.
        (<u>divqi3): Remvoved.

gcc/testsuite/

2010-07-07  H.J. Lu  <hongjiu.lu@intel.com>

        Backport from mainline
        2010-07-04  H.J. Lu  <hongjiu.lu@intel.com>

        PR rtl-optimization/44695
        * gcc.dg/torture/pr44695.c: New.

        2010-06-24  H.J. Lu  <hongjiu.lu@intel.com>

        PR target/44588
        * gcc.target/i386/mod-1.c: New.
        * gcc.target/i386/umod-1.c: Likewise.
        * gcc.target/i386/umod-2.c: Likewise.
        * gcc.target/i386/umod-3.c: Likewise.

Modified:
    branches/ix86/gcc-4_5-branch/gcc/config/i386/i386.md


-- 


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


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2010-07-07 21:12 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-06-28  6:01 [Bug c/44695] New: ice in simplify_subreg, at simplify-rtx.c:5117 regehr at cs dot utah dot edu
2010-06-28  9:17 ` [Bug rtl-optimization/44695] [4.6 Regression] " rguenth at gcc dot gnu dot org
2010-06-28 21:57 ` hjl dot tools at gmail dot com
2010-06-28 23:21 ` hjl dot tools at gmail dot com
2010-06-29 19:16 ` hjl dot tools at gmail dot com
2010-06-30 11:52 ` bonzini at gnu dot org
2010-06-30 18:15 ` hjl dot tools at gmail dot com
2010-06-30 18:47 ` hjl dot tools at gmail dot com
2010-07-01 17:47 ` hjl dot tools at gmail dot com
2010-07-02  0:37 ` hjl dot tools at gmail dot com
2010-07-04 23:18 ` hjl at gcc dot gnu dot org
2010-07-05 12:21 ` jakub at gcc dot gnu dot org
2010-07-07 21:12 ` hjl at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).