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

--- Comment #1 from Markus Trippelsdorf <markus at trippelsdorf dot de> 
2011-11-01 10:55:21 UTC ---
Testcase:

 % cat test.ii
typedef long int ptrdiff_t;
extern "C" {
     typedef struct _IO_FILE FILE;
     extern int fprintf (FILE *__restrict __stream,
     __const char *__restrict __format, ...);
}
typedef struct bitmap_head_def *bitmap;
typedef struct simple_bitmap_def *sbitmap;
struct function {
     struct control_flow_graph *cfg;
};
extern struct function *cfun;
extern FILE *dump_file;
struct control_flow_graph {
     int x_n_basic_blocks;
     int x_n_edges;
};
static bool df_worklist_propagate_forward (struct dataflow *dataflow,
             unsigned bb_index, unsigned *bbindex_to_postorder,
             bitmap pending, sbitmap considered, ptrdiff_t age)
{
     int dcount = 0;
     if (dump_file)     fprintf (dump_file, "df_worklist_dataflow_doublequeue:"
     "n_basic_blocks %d n_edges %d"       " count %d (%5.2g)\n",
     ((cfun + 0)->cfg->x_n_basic_blocks), ((cfun + 0)->cfg->x_n_edges),
     dcount, dcount / (float)((cfun + 0)->cfg->x_n_basic_blocks));
}

% g++ test.ii -march=amdfam10 -B/var/tmp/gcc_build_dir/./prev-gcc/
test.ii: In function ‘bool df_worklist_propagate_forward(dataflow*, unsigned
int, unsigned int*, bitmap, sbitmap, ptrdiff_t)’:
test.ii:27:1: error: unrecognizable insn:
(insn 56 55 21 3 (set (reg:V4SF 22 xmm1 [orig:64 D.2155 ] [64])
        (float:V2DF (vec_select:V2SI (reg:V4SI 22 xmm1 [orig:64 D.2155 ] [64])
                (parallel [
                        (const_int 0 [0])
                        (const_int 1 [0x1])
                    ])))) test.ii:26 -1
     (nil))
test.ii:27:1: internal compiler error: in extract_insn, at recog.c:2137

Reply via email to