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



Richard Biener <rguenth at gcc dot gnu.org> changed:



           What    |Removed                     |Added

----------------------------------------------------------------------------

             Status|UNCONFIRMED                 |NEW

   Last reconfirmed|                            |2012-12-14

     Ever Confirmed|0                           |1



--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> 2012-12-14 
10:02:52 UTC ---

Reduced testcase:



typedef unsigned long VALUE;

typedef unsigned long rb_num_t;

typedef struct rb_vm_struct {

    VALUE *pc;

    VALUE *sp;

} rb_control_frame_t;

void vm_expandarray(rb_control_frame_t *cfp, VALUE ary, rb_num_t num, int flag)

{

    VALUE *base = cfp->sp, *ptr;

    rb_num_t len;

    if (flag & 0x02) {

        rb_num_t i = 0, j;

        for (j=0; i<num; i++, j++) {

            VALUE v = ptr[len - j - 1];

            *base++ = v;

        }

    }

    register VALUE * reg_pc __asm__("e" "di");

    register rb_control_frame_t * reg_cfp __asm__("e" "si");

      { 

        rb_num_t flag = (rb_num_t)((reg_pc)[(2)]); 

        rb_num_t num = (rb_num_t)((reg_pc)[(1)]); 

        VALUE ary = (*(((((reg_cfp)->sp)))-(0)-1)); 

        ((reg_cfp->pc = reg_pc = (reg_pc + (1+2))));

        ((((reg_cfp)->sp) -= (((1)))));

        vm_expandarray((((reg_cfp))), ary, num, (int)flag);

        goto *(void const *)(*(reg_pc));

      }

}





> ./cc1 -quiet -O -m32 vm.3.3.i

vm.3.3.i: In function 'vm_expandarray':

vm.3.3.i:28:1: internal compiler error: in assign_by_spills, at

lra-assigns.c:1244

 }

 ^

0x95a80e assign_by_spills

        /space/rguenther/src/svn/trunk/gcc/lra-assigns.c:1244

0x95b133 lra_assign()

        /space/rguenther/src/svn/trunk/gcc/lra-assigns.c:1398

0x955893 lra(_IO_FILE*)

        /space/rguenther/src/svn/trunk/gcc/lra.c:2309

0x90ba42 do_reload

        /space/rguenther/src/svn/trunk/gcc/ira.c:4624

0x90bc50 rest_of_handle_reload

        /space/rguenther/src/svn/trunk/gcc/ira.c:4737

Reply via email to