public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396
@ 2009-06-11 13:34 nospamname at web dot de
2009-06-11 13:52 ` [Bug c/40414] " schwab at linux-m68k dot org
` (26 more replies)
0 siblings, 27 replies; 28+ messages in thread
From: nospamname at web dot de @ 2009-06-11 13:34 UTC (permalink / raw)
To: gcc-bugs
its find out, the problematic optimization that crash seem "-funswitch-loops".
A compile
of ffmpeg with -O2 + all other optimization options from -O3 work, (see second
output)
See also the Mail i write before
http://gcc.gnu.org/ml/gcc/2009-06/msg00229.html
$ make_68k_v4
/usr/local/amiga/bin/m68k-amigaos-gcc-4.4.0.exe -V 4.4.0
-DHAVE_AV_CONFIG_H -I..
-I"/bin/ffmpeg8" --save-temps -mnobitfield -m68060 -std=c99
-Wdeclaration-afte
r-statement -Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
-D_POSIX_C_
SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
-fomit-fram
e-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls
-Wcast-qual -Wwrit
e-strings -Wundef -O3 -c -o mpegvideo.o mpegvideo.c
mpegvideo.c: In function 'init_rl':
mpegvideo.c:760: warning: pointer targets in assignment differ in
signedness
mpegvideo.c:765: warning: pointer targets in assignment differ in
signedness
mpegvideo.c: In function 'MPV_motion_lowres':
mpegvideo.c:1707: error: insn does not satisfy its constraints:
(insn 937 3765 3766 59 mpegvideo.c:1488 (set (reg:SI 0 d0 [931])
(plus:SI (mem/f:SI (reg:SI 9 a1) [7 S4 A16])
(reg:SI 0 d0 [931]))) 131 {*addsi3_internal} (nil))
mpegvideo.c:1707: internal compiler error: in
reload_cse_simplify_operands, at p
ostreload.c:396
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
------------------------------------------------------------------------
Compiles fine with -O2 + all optimalizations from -O3 except
"-funswitch-loops":
$ make_68k_v4
/usr/local/amiga/bin/m68k-amigaos-gcc-4.4.0.exe -V 4.4.0
-DHAVE_AV_CONFIG_H -I..
-I"/bin/ffmpeg8" --save-temps -mnobitfield -m68060 -std=c99
-Wdeclaration-afte
r-statement -Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
-D_POSIX_C_
SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
-fomit-fram
e-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls
-Wcast-qual -Wwrit
e-strings -Wundef -O2 -finline-functions -fgcse-after-reload
-fpredictive-common
ing -ftree-vectorize -c -o mpegvideo.o mpegvideo.c
mpegvideo.c: In function 'init_rl':
mpegvideo.c:760: warning: pointer targets in assignment differ in
signedness
mpegvideo.c:765: warning: pointer targets in assignment differ in
signedness
In file included from mpegvideo.c:34:
mpegvideo_common.h: In function 'MPV_motion':
mpegvideo_common.h:674: warning: dereferencing pointer '({anonymous})'
does brea
k strict-aliasing rules
mpegvideo_common.h:674: note: initialized from here
mpegvideo_common.h:675: warning: dereferencing pointer '({anonymous})'
does brea
k strict-aliasing rules
mpegvideo_common.h:675: note: initialized from here
mpegvideo_common.h:677: warning: dereferencing pointer '({anonymous})'
does brea
k strict-aliasing rules
mpegvideo_common.h:677: note: initialized from here
mpegvideo_common.h:678: warning: dereferencing pointer '({anonymous})'
does brea
k strict-aliasing rules
mpegvideo_common.h:678: note: initialized from here
here is snippet of .i file.full file have size 2476 kb.please let me know if
you need more info or send me fixes, i can compile new gcc
# 1594 "mpegvideo.c"
static inline void MPV_motion_lowres(MpegEncContext *s,
uint8_t *dest_y, uint8_t *dest_cb, uint8_t
*dest_cr,
int dir, uint8_t **ref_picture,
h264_chroma_mc_func *pix_op)
{
int mx, my;
int mb_x, mb_y, i;
const int lowres= s->avctx->lowres;
const int block_s= 8>>lowres;
mb_x = s->mb_x;
mb_y = s->mb_y;
switch(s->mv_type) {
case 0:
mpeg_motion_lowres(s, dest_y, dest_cb, dest_cr,
0, 0, 0,
ref_picture, pix_op,
s->mv[dir][0][0], s->mv[dir][0][1], 2*block_s);
break;
case 1:
mx = 0;
my = 0;
for(i=0;i<4;i++) {
hpel_motion_lowres(s, dest_y + ((i & 1) + (i >> 1) *
s->linesize)*block_s,
ref_picture[0], 0, 0,
(2*mb_x + (i & 1))*block_s, (2*mb_y + (i
>>1))*block_s,
s->width, s->height, s->linesize,
s->h_edge_pos >> lowres, s->v_edge_pos >> lowres,
block_s, block_s, pix_op,
s->mv[dir][i][0], s->mv[dir][i][1]);
mx += s->mv[dir][i][0];
my += s->mv[dir][i][1];
}
if(!0 || !(s->flags&0x2000))
chroma_4mv_motion_lowres(s, dest_cb, dest_cr, ref_picture, pix_op,
mx, my);
break;
case 3:
if (s->picture_structure == 3) {
mpeg_motion_lowres(s, dest_y, dest_cb, dest_cr,
1, 0, s->field_select[dir][0],
ref_picture, pix_op,
s->mv[dir][0][0], s->mv[dir][0][1], block_s);
mpeg_motion_lowres(s, dest_y, dest_cb, dest_cr,
1, 1, s->field_select[dir][1],
ref_picture, pix_op,
s->mv[dir][1][0], s->mv[dir][1][1], block_s);
} else {
if(s->picture_structure != s->field_select[dir][0] + 1 &&
s->pict_type != 3 && !s->first_field){
ref_picture= s->current_picture_ptr->data;
}
mpeg_motion_lowres(s, dest_y, dest_cb, dest_cr,
0, 0, s->field_select[dir][0],
ref_picture, pix_op,
s->mv[dir][0][0], s->mv[dir][0][1], 2*block_s);
}
break;
case 2:
for(i=0; i<2; i++){
uint8_t ** ref2picture;
if(s->picture_structure == s->field_select[dir][i] + 1 ||
s->pict_type == 3 || s->first_field){
ref2picture= ref_picture;
}else{
ref2picture= s->current_picture_ptr->data;
}
mpeg_motion_lowres(s, dest_y, dest_cb, dest_cr,
0, 0, s->field_select[dir][i],
ref2picture, pix_op,
s->mv[dir][i][0], s->mv[dir][i][1] + 2*block_s*i,
block_s);
dest_y += 2*block_s*s->linesize;
dest_cb+= (2*block_s>>s->chroma_y_shift)*s->uvlinesize;
dest_cr+= (2*block_s>>s->chroma_y_shift)*s->uvlinesize;
}
break;
case 4:
if(s->picture_structure == 3){
for(i=0; i<2; i++){
int j;
for(j=0; j<2; j++){
mpeg_motion_lowres(s, dest_y, dest_cb, dest_cr,
1, j, j^i,
ref_picture, pix_op,
s->mv[dir][2*i + j][0], s->mv[dir][2*i + j][1],
block_s);
}
pix_op = s->dsp.avg_h264_chroma_pixels_tab;
}
}else{
for(i=0; i<2; i++){
mpeg_motion_lowres(s, dest_y, dest_cb, dest_cr,
0, 0, s->picture_structure != i+1,
ref_picture, pix_op,
s->mv[dir][2*i][0],s->mv[dir][2*i][1],2*block_s);
pix_op = s->dsp.avg_h264_chroma_pixels_tab;
if(!s->first_field){
ref_picture = s->current_picture_ptr->data;
}
}
}
break;
default: ((void) 0);
}
}
static inline void put_dct(MpegEncContext *s,
DCTELEM *block, int i, uint8_t *dest, int line_size,
int qscale)
{
s->dct_unquantize_intra(s, block, i, qscale);
s->dsp.idct_put (dest, line_size, block);
}
static inline void add_dct(MpegEncContext *s,
DCTELEM *block, int i, uint8_t *dest, int line_size)
{
if (s->block_last_index[i] >= 0) {
s->dsp.idct_add (dest, line_size, block);
}
}
static inline void add_dequant_dct(MpegEncContext *s,
DCTELEM *block, int i, uint8_t *dest, int line_size,
int qscale)
{
if (s->block_last_index[i] >= 0) {
s->dct_unquantize_inter(s, block, i, qscale);
s->dsp.idct_add (dest, line_size, block);
}
}
void ff_clean_intra_table_entries(MpegEncContext *s)
{
int wrap = s->b8_stride;
int xy = s->block_index[0];
s->dc_val[0][xy ] =
s->dc_val[0][xy + 1 ] =
s->dc_val[0][xy + wrap] =
s->dc_val[0][xy + 1 + wrap] = 1024;
memset(s->ac_val[0][xy ], 0, 32 * sizeof(int16_t));
memset(s->ac_val[0][xy + wrap], 0, 32 * sizeof(int16_t));
if (s->msmpeg4_version>=3) {
s->coded_block[xy ] =
s->coded_block[xy + 1 ] =
s->coded_block[xy + wrap] =
s->coded_block[xy + 1 + wrap] = 0;
}
wrap = s->mb_stride;
xy = s->mb_x + s->mb_y * wrap;
s->dc_val[1][xy] =
s->dc_val[2][xy] = 1024;
memset(s->ac_val[1][xy], 0, 16 * sizeof(int16_t));
memset(s->ac_val[2][xy], 0, 16 * sizeof(int16_t));
s->mbintra_table[xy]= 0;
}
# 1779 "mpegvideo.c"
static __attribute__((always_inline)) inline
void MPV_decode_mb_internal(MpegEncContext *s, DCTELEM block[12][64],
int lowres_flag, int is_mpeg12)
{
const int mb_xy = s->mb_y * s->mb_stride + s->mb_x;
if(0 && s->avctx->xvmc_acceleration){
ff_xvmc_decode_mb(s);
return;
}
if(s->avctx->debug&0x00000040) {
int i,j;
DCTELEM *dct = &s->current_picture.dct_coeff[mb_xy*64*6];
for(i=0; i<6; i++)
for(j=0; j<64; j++)
*dct++ = block[i][s->dsp.idct_permutation[j]];
}
s->current_picture.qscale_table[mb_xy]= s->qscale;
if (!s->mb_intra) {
if (!is_mpeg12 && (s->h263_pred || s->h263_aic)) {
if(s->mbintra_table[mb_xy])
ff_clean_intra_table_entries(s);
} else {
s->last_dc[0] =
s->last_dc[1] =
s->last_dc[2] = 128 << s->intra_dc_precision;
}
}
else if (!is_mpeg12 && (s->h263_pred || s->h263_aic))
s->mbintra_table[mb_xy]=1;
if ((s->flags&0x8000) || !(s->encoding && (s->intra_only ||
s->pict_type==3) && s->avctx->mb_decision != 2)) {
uint8_t *dest_y, *dest_cb, *dest_cr;
int dct_linesize, dct_offset;
op_pixels_func (*op_pix)[4];
qpel_mc_func (*op_qpix)[16];
const int linesize= s->current_picture.linesize[0];
const int uvlinesize= s->current_picture.linesize[1];
const int readable= s->pict_type != 3 || s->encoding ||
s->avctx->draw_horiz_band || lowres_flag;
const int block_size= lowres_flag ? 8>>s->avctx->lowres : 8;
if(!s->encoding){
uint8_t *mbskip_ptr = &s->mbskip_table[mb_xy];
const int age= s->current_picture.age;
((void) 0);
if (s->mb_skipped) {
s->mb_skipped= 0;
((void) 0);
(*mbskip_ptr) ++;
if(*mbskip_ptr >99) *mbskip_ptr= 99;
if (*mbskip_ptr >= age && s->current_picture.reference){
return;
}
} else if(!s->current_picture.reference){
(*mbskip_ptr) ++;
if(*mbskip_ptr >99) *mbskip_ptr= 99;
} else{
*mbskip_ptr = 0;
}
}
dct_linesize = linesize << s->interlaced_dct;
dct_offset =(s->interlaced_dct)? linesize : linesize*block_size;
if(readable){
dest_y= s->dest[0];
dest_cb= s->dest[1];
dest_cr= s->dest[2];
}else{
dest_y = s->b_scratchpad;
dest_cb= s->b_scratchpad+16*linesize;
dest_cr= s->b_scratchpad+32*linesize;
}
if (!s->mb_intra) {
if(!s->encoding){
if(lowres_flag){
h264_chroma_mc_func *op_pix =
s->dsp.put_h264_chroma_pixels_tab;
if (s->mv_dir & 1) {
MPV_motion_lowres(s, dest_y, dest_cb, dest_cr, 0,
s->last_picture.data, op_pix);
op_pix = s->dsp.avg_h264_chroma_pixels_tab;
}
if (s->mv_dir & 2) {
MPV_motion_lowres(s, dest_y, dest_cb, dest_cr, 1,
s->next_picture.data, op_pix);
}
}else{
op_qpix= s->me.qpel_put;
if ((!s->no_rounding) || s->pict_type==3){
op_pix = s->dsp.put_pixels_tab;
}else{
op_pix = s->dsp.put_no_rnd_pixels_tab;
}
if (s->mv_dir & 1) {
MPV_motion(s, dest_y, dest_cb, dest_cr, 0,
s->last_picture.data, op_pix, op_qpix);
op_pix = s->dsp.avg_pixels_tab;
op_qpix= s->me.qpel_avg;
}
if (s->mv_dir & 2) {
MPV_motion(s, dest_y, dest_cb, dest_cr, 1,
s->next_picture.data, op_pix, op_qpix);
}
}
}
if(s->hurry_up>1) goto skip_idct;
if(s->avctx->skip_idct){
if( (s->avctx->skip_idct >= AVDISCARD_NONREF && s->pict_type ==
3)
||(s->avctx->skip_idct >= AVDISCARD_NONKEY && s->pict_type
!= 1)
|| s->avctx->skip_idct >= AVDISCARD_ALL)
goto skip_idct;
}
if(s->encoding || !( s->h263_msmpeg4 ||
s->codec_id==CODEC_ID_MPEG1VIDEO || s->codec_id==CODEC_ID_MPEG2VIDEO
|| (s->codec_id==CODEC_ID_MPEG4 &&
!s->mpeg_quant))){
add_dequant_dct(s, block[0], 0, dest_y , dct_linesize,
s->qscale);
add_dequant_dct(s, block[1], 1, dest_y + block_size,
dct_linesize, s->qscale);
add_dequant_dct(s, block[2], 2, dest_y + dct_offset ,
dct_linesize, s->qscale);
add_dequant_dct(s, block[3], 3, dest_y + dct_offset +
block_size, dct_linesize, s->qscale);
if(!0 || !(s->flags&0x2000)){
if (s->chroma_y_shift){
add_dequant_dct(s, block[4], 4, dest_cb, uvlinesize,
s->chroma_qscale);
add_dequant_dct(s, block[5], 5, dest_cr, uvlinesize,
s->chroma_qscale);
}else{
dct_linesize >>= 1;
dct_offset >>=1;
add_dequant_dct(s, block[4], 4, dest_cb, dct_linesize,
s->chroma_qscale);
add_dequant_dct(s, block[5], 5, dest_cr, dct_linesize,
s->chroma_qscale);
add_dequant_dct(s, block[6], 6, dest_cb + dct_offset,
dct_linesize, s->chroma_qscale);
add_dequant_dct(s, block[7], 7, dest_cr + dct_offset,
dct_linesize, s->chroma_qscale);
}
}
} else if(is_mpeg12 || (s->codec_id != CODEC_ID_WMV2)){
add_dct(s, block[0], 0, dest_y , dct_linesize);
add_dct(s, block[1], 1, dest_y + block_size, dct_linesize);
add_dct(s, block[2], 2, dest_y + dct_offset , dct_linesize);
add_dct(s, block[3], 3, dest_y + dct_offset + block_size,
dct_linesize);
if(!0 || !(s->flags&0x2000)){
if(s->chroma_y_shift){
add_dct(s, block[4], 4, dest_cb, uvlinesize);
add_dct(s, block[5], 5, dest_cr, uvlinesize);
}else{
dct_linesize = uvlinesize << s->interlaced_dct;
dct_offset =(s->interlaced_dct)? uvlinesize :
uvlinesize*8;
add_dct(s, block[4], 4, dest_cb, dct_linesize);
add_dct(s, block[5], 5, dest_cr, dct_linesize);
add_dct(s, block[6], 6, dest_cb+dct_offset,
dct_linesize);
add_dct(s, block[7], 7, dest_cr+dct_offset,
dct_linesize);
if(!s->chroma_x_shift){
add_dct(s, block[8], 8, dest_cb+8, dct_linesize);
add_dct(s, block[9], 9, dest_cr+8, dct_linesize);
add_dct(s, block[10], 10, dest_cb+8+dct_offset,
dct_linesize);
add_dct(s, block[11], 11, dest_cr+8+dct_offset,
dct_linesize);
}
}
}
}
else if ((1 || 1)) {
ff_wmv2_add_mb(s, block, dest_y, dest_cb, dest_cr);
}
} else {
if(s->encoding || !(s->codec_id==CODEC_ID_MPEG1VIDEO ||
s->codec_id==CODEC_ID_MPEG2VIDEO)){
put_dct(s, block[0], 0, dest_y , dct_linesize, s->qscale);
put_dct(s, block[1], 1, dest_y + block_size, dct_linesize,
s->qscale);
put_dct(s, block[2], 2, dest_y + dct_offset , dct_linesize,
s->qscale);
put_dct(s, block[3], 3, dest_y + dct_offset + block_size,
dct_linesize, s->qscale);
if(!0 || !(s->flags&0x2000)){
if(s->chroma_y_shift){
put_dct(s, block[4], 4, dest_cb, uvlinesize,
s->chroma_qscale);
put_dct(s, block[5], 5, dest_cr, uvlinesize,
s->chroma_qscale);
}else{
dct_offset >>=1;
dct_linesize >>=1;
put_dct(s, block[4], 4, dest_cb, dct_linesize,
s->chroma_qscale);
put_dct(s, block[5], 5, dest_cr, dct_linesize,
s->chroma_qscale);
put_dct(s, block[6], 6, dest_cb + dct_offset,
dct_linesize, s->chroma_qscale);
put_dct(s, block[7], 7, dest_cr + dct_offset,
dct_linesize, s->chroma_qscale);
}
}
}else{
s->dsp.idct_put(dest_y , dct_linesize, block[0]);
s->dsp.idct_put(dest_y + block_size, dct_linesize, block[1]);
s->dsp.idct_put(dest_y + dct_offset , dct_linesize, block[2]);
s->dsp.idct_put(dest_y + dct_offset + block_size, dct_linesize,
block[3]);
if(!0 || !(s->flags&0x2000)){
if(s->chroma_y_shift){
s->dsp.idct_put(dest_cb, uvlinesize, block[4]);
s->dsp.idct_put(dest_cr, uvlinesize, block[5]);
}else{
dct_linesize = uvlinesize << s->interlaced_dct;
dct_offset =(s->interlaced_dct)? uvlinesize :
uvlinesize*8;
s->dsp.idct_put(dest_cb, dct_linesize, block[4]);
s->dsp.idct_put(dest_cr, dct_linesize, block[5]);
s->dsp.idct_put(dest_cb + dct_offset, dct_linesize,
block[6]);
s->dsp.idct_put(dest_cr + dct_offset, dct_linesize,
block[7]);
if(!s->chroma_x_shift){
s->dsp.idct_put(dest_cb + 8, dct_linesize,
block[8]);
s->dsp.idct_put(dest_cr + 8, dct_linesize,
block[9]);
s->dsp.idct_put(dest_cb + 8 + dct_offset,
dct_linesize, block[10]);
s->dsp.idct_put(dest_cr + 8 + dct_offset,
dct_linesize, block[11]);
}
}
}
}
}
skip_idct:
if(!readable){
s->dsp.put_pixels_tab[0][0](s->dest[0], dest_y , linesize,16);
s->dsp.put_pixels_tab[s->chroma_x_shift][0](s->dest[1], dest_cb,
uvlinesize,16 >> s->chroma_y_shift);
s->dsp.put_pixels_tab[s->chroma_x_shift][0](s->dest[2], dest_cr,
uvlinesize,16 >> s->chroma_y_shift);
}
}
}
--
Summary: gcc 4.4.0 error at postreload.c:396
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: nospamname at web dot de
GCC build triplet: cygwin-i686
GCC host triplet: cygwin-i686
GCC target triplet: m68k-amigaos
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug c/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
@ 2009-06-11 13:52 ` schwab at linux-m68k dot org
2009-06-11 15:03 ` bonzini at gnu dot org
` (25 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: schwab at linux-m68k dot org @ 2009-06-11 13:52 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from schwab at linux-m68k dot org 2009-06-11 13:52 -------
*** Bug 40415 has been marked as a duplicate of this bug. ***
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug c/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
2009-06-11 13:52 ` [Bug c/40414] " schwab at linux-m68k dot org
@ 2009-06-11 15:03 ` bonzini at gnu dot org
2009-06-15 19:36 ` [Bug target/40414] " gni at gecko dot de
` (24 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: bonzini at gnu dot org @ 2009-06-11 15:03 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from bonzini at gnu dot org 2009-06-11 15:03 -------
Could be a duplicate of one of PR30064, PR34439, PR37053.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
2009-06-11 13:52 ` [Bug c/40414] " schwab at linux-m68k dot org
2009-06-11 15:03 ` bonzini at gnu dot org
@ 2009-06-15 19:36 ` gni at gecko dot de
2009-06-16 11:06 ` nospamname at web dot de
` (23 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: gni at gecko dot de @ 2009-06-15 19:36 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from gni at gecko dot de 2009-06-15 19:36 -------
Subject: gcc 4.4.0 error at postreload.c:396
(In reply to comment #2)
> Could be a duplicate of one of PR30064, PR34439, PR37053.
I compiled the provided testcases as stated in the appropriate PR
with the following result:
The testcase for PR30064 does ICE with 3.4.6 and 4.[012].0, it doesn't
ICE with 4.[34].0.
The testcase for PR34439 does ICE with 3.4.6 when not optimizing, does
always ICE with 4.[012].0. No ICE with 4.[34].0.
The testcase for PR37053 does ICE with 2.95.x without optimization,
3.[34].6 and 4.[012].0 always ICE, 4.[34].0 does ICE with optimization.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (2 preceding siblings ...)
2009-06-15 19:36 ` [Bug target/40414] " gni at gecko dot de
@ 2009-06-16 11:06 ` nospamname at web dot de
2009-08-02 7:23 ` nospamname at web dot de
` (22 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: nospamname at web dot de @ 2009-06-16 11:06 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from nospamname at web dot de 2009-06-16 11:06 -------
i get report of more info about -funswitch-loops
The -funswitch-loops Option seem work on gcc 4.3.0 and above not good for
speed.It generate much larger code(wma123) and code is slower in many case (try
out ffmpeg H264 decode)i get report from a Athlon 2600+ with single channel ram
running amiga emulator.
But on my System use a AMD64 3000+ and Dual Channel ram running amiga emulator
-funswitch-loops cause only large files but no slowdown.
but i guess on a real 68k CPU without 2. level cache, -funswitch-loops is more
not optimal.
gcc 3.4.0 have too this option set on -O3 or i am wrong ?
and here the speed is better.
Is there a way to tweak some values on backend for specific CPU so
-funswitch-loops works 3.4.0(maybe unroll not so much loops ?
for now best solution for speed (H264 decode work on the system with single
Channel ram same ot little faster as 3.4.0 build.) is let disable
-funswitch-loops disable as far i get speedvalue reports.
here are some values that show too slowdown on compilers 4.2.4 and 4.3.0 but on
X86
http://multimedia.cx/eggs/compiler-performance-profiling-with-ffmpeg/
The GCC 4.4.0 does allow change the compiler switches in sourceline.
maybe somebody can tell if can get more precise information with that feature,
what codeline cause the fault.
the furtherdevelop of Blitz basic (called amiblitz)can for example can set
optimize on every sourceline.this help lot to find sourceline that make problem
in peephole optimizer.
But Amiblitz of course have not such a longlooking ahead peephole optimizer as
gcc.
but maybe this gcc 4.4.0 feature can help in any way,to get more precise error
place ?
I can then test and report more.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (3 preceding siblings ...)
2009-06-16 11:06 ` nospamname at web dot de
@ 2009-08-02 7:23 ` nospamname at web dot de
2009-08-06 15:56 ` nospamname at web dot de
` (21 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: nospamname at web dot de @ 2009-08-02 7:23 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from nospamname at web dot de 2009-08-02 07:23 -------
the problem happen on a gcc4.4.1 (the release) too,this is output.
$ make_68k_v4
/usr/local/amiga/bin/m68k-amigaos-gcc-4.4.1.exe -V 4.4.1 -DHAVE_AV_CONFIG_H -I.
-I"/bin/ffmpeg8" -mnobitfield -m68060 -std=c99 -Wdeclaration-after-stat
ement -Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
-D_POSIX_C_SOURCE
=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
-fomit-frame-poin
ter -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -Wcast-qual
-Wwrite-stri
ngs -Wundef -O3 -s -c -o libavcodec/mpegvideo.o libavcodec/mpegvideo.c
libavcodec/mpegvideo.c: In function 'init_rl':
libavcodec/mpegvideo.c:760: warning: pointer targets in assignment differ in
sig
nedness
libavcodec/mpegvideo.c:765: warning: pointer targets in assignment differ in
sig
nedness
libavcodec/mpegvideo.c: In function 'MPV_motion_lowres':
libavcodec/mpegvideo.c:1707: error: insn does not satisfy its constraints:
(insn 937 3765 3766 59 libavcodec/mpegvideo.c:1488 (set (reg:SI 0 d0 [931])
(plus:SI (mem/f:SI (reg:SI 9 a1) [7 S4 A16])
(reg:SI 0 d0 [931]))) 131 {*addsi3_internal} (nil))
libavcodec/mpegvideo.c:1707: internal compiler error: in
reload_cse_simplify_ope
rands, at postreload.c:396
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (4 preceding siblings ...)
2009-08-02 7:23 ` nospamname at web dot de
@ 2009-08-06 15:56 ` nospamname at web dot de
2009-08-17 19:25 ` ami_stuff at o2 dot pl
` (20 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: nospamname at web dot de @ 2009-08-06 15:56 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from nospamname at web dot de 2009-08-06 15:56 -------
I check now more to find the instruction line that cause the ICE.Its this
call.It compile when i remove in 1 statement the 2
(2*mb_x + (i & 1))*block_s -> (mb_x + (i & 1))*block_s
But of course the program work.
it also compile when i let the 2 in first par in but remove it on second.
case 1:
mx = 0;
my = 0;
for(i=0;i<4;i++) {
hpel_motion_lowres(s, dest_y + ((i & 1) + (i >> 1) *
s->linesize)*block_s,
ref_picture[0], 0, 0,
(2*mb_x + (i & 1))*block_s, (2*mb_y + (i
>>1))*block_s,
s->width, s->height, s->linesize,
s->h_edge_pos >> lowres, s->v_edge_pos >> lowres,
block_s, block_s, pix_op,
s->mv[dir][i][0], s->mv[dir][i][1]);
mx += s->mv[dir][i][0];
my += s->mv[dir][i][1];
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (5 preceding siblings ...)
2009-08-06 15:56 ` nospamname at web dot de
@ 2009-08-17 19:25 ` ami_stuff at o2 dot pl
2009-08-17 19:33 ` ami_stuff at o2 dot pl
` (19 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: ami_stuff at o2 dot pl @ 2009-08-17 19:25 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from ami_stuff at o2 dot pl 2009-08-17 19:25 -------
The problem is not with "-funswitch-loops" optimization.
I get no ICE with these options (-O2 -fipa-cp-clone -finline-functions
-fgcse-after-reload -ftree-vectorize -fpredictive-commoning):
OPTFLAGS= -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement
-Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
-D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
-fomit-frame-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls
-Wcast-qual -Wwrite-strings -Wundef -O2 -fipa-cp-clone -finline-functions
-fgcse-after-reload -ftree-vectorize -fpredictive-commoning
I get ICE with -O3:
OPTFLAGS= -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement
-Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
-D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
-fomit-frame-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls
-Wcast-qual -Wwrite-strings -Wundef -O3
Also, ICE happens ONLY with -m68060 flag! When I use "-m68020 -m6881" or
-m68040 there is no ICE!
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (6 preceding siblings ...)
2009-08-17 19:25 ` ami_stuff at o2 dot pl
@ 2009-08-17 19:33 ` ami_stuff at o2 dot pl
2009-08-17 20:11 ` ami_stuff at o2 dot pl
` (18 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: ami_stuff at o2 dot pl @ 2009-08-17 19:33 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from ami_stuff at o2 dot pl 2009-08-17 19:33 -------
(In reply to comment #7)
> The problem is not with "-funswitch-loops" optimization.
>
> I get no ICE with these options (-O2 -fipa-cp-clone -finline-functions
> -fgcse-after-reload -ftree-vectorize -fpredictive-commoning):
>
> OPTFLAGS= -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement
> -Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
> -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
> -fomit-frame-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls
> -Wcast-qual -Wwrite-strings -Wundef -O2 -fipa-cp-clone -finline-functions
> -fgcse-after-reload -ftree-vectorize -fpredictive-commoning
>
> I get ICE with -O3:
>
> OPTFLAGS= -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement
> -Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
> -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
> -fomit-frame-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls
> -Wcast-qual -Wwrite-strings -Wundef -O3
>
> Also, ICE happens ONLY with -m68060 flag! When I use "-m68020 -m6881" or
> -m68040 there is no ICE!
>
Sorry, I forgot to add "-funswitch-loops" option, so again:
The problem is not with "-funswitch-loops" optimization.
I get no ICE with these options (-O2 -fipa-cp-clone -finline-functions
-fgcse-after-reload -ftree-vectorize -fpredictive-commoning -funswitch-loops):
OPTFLAGS= -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement
-Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
-D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
-fomit-frame-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls
-Wcast-qual -Wwrite-strings -Wundef -O2 -fipa-cp-clone -finline-functions
-fgcse-after-reload -ftree-vectorize -fpredictive-commoning -funswitch-loops
I get ICE with -O3:
OPTFLAGS= -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement
-Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
-D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
-fomit-frame-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls
-Wcast-qual -Wwrite-strings -Wundef -O3
Also, ICE happens ONLY with -m68060 flag! When I use "-m68020 -m6881" or
-m68040 there is no ICE!
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (7 preceding siblings ...)
2009-08-17 19:33 ` ami_stuff at o2 dot pl
@ 2009-08-17 20:11 ` ami_stuff at o2 dot pl
2009-08-17 20:11 ` ami_stuff at o2 dot pl
` (17 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: ami_stuff at o2 dot pl @ 2009-08-17 20:11 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from ami_stuff at o2 dot pl 2009-08-17 20:11 -------
Created an attachment (id=18390)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18390&action=view)
preprocessed file -O3
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (8 preceding siblings ...)
2009-08-17 20:11 ` ami_stuff at o2 dot pl
@ 2009-08-17 20:11 ` ami_stuff at o2 dot pl
2009-08-19 0:28 ` ami_stuff at o2 dot pl
` (16 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: ami_stuff at o2 dot pl @ 2009-08-17 20:11 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from ami_stuff at o2 dot pl 2009-08-17 20:11 -------
Created an attachment (id=18391)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18391&action=view)
asm output -O3
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (9 preceding siblings ...)
2009-08-17 20:11 ` ami_stuff at o2 dot pl
@ 2009-08-19 0:28 ` ami_stuff at o2 dot pl
2009-08-19 10:38 ` mikpe at it dot uu dot se
` (15 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: ami_stuff at o2 dot pl @ 2009-08-19 0:28 UTC (permalink / raw)
To: gcc-bugs
------- Comment #11 from ami_stuff at o2 dot pl 2009-08-19 00:28 -------
It ICEs also...
with -m68020 -m68881 -Os options:
/usr/local/amiga/bin/m68k-amigaos-gcc-4.4.1.exe -V 4.4.1 -DHAVE_AV_CONFIG_H -I.
-I"/bin/ffmpeg8" -mnobitfield -m68020 -m68881 -std=c99
-Wdeclaration-after-stat
ement -Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE
-D_POSIX_C_SOURCE
=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common
-fomit-frame-poin
ter -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -Wcast-qual
-Wwrite-stri
ngs -Wundef -Os -c -o libavcodec/mpegvideo.o libavcodec/mpegvideo.c
libavcodec/mpegvideo.c: In function 'init_rl':
libavcodec/mpegvideo.c:760: warning: pointer targets in assignment differ in
sig
nedness
libavcodec/mpegvideo.c:765: warning: pointer targets in assignment differ in
sig
nedness
libavcodec/mpegvideo.c: In function 'MPV_motion_lowres':
libavcodec/mpegvideo.c:1707: error: insn does not satisfy its constraints:
(insn 647 2733 2734 49 libavcodec/mpegvideo.c:1488 (set (reg/v/f:SI 7 d7
[orig:2
93 ptr_y ] [293])
(plus:SI (mem/f:SI (reg:SI 8 a0) [7 S4 A16])
(reg:SI 7 d7 [637]))) 131 {*addsi3_internal} (nil))
libavcodec/mpegvideo.c:1707: internal compiler error: in
reload_cse_simplify_ope
rands, at postreload.c:396
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
with -m68040 -Os options:
/usr/local/amiga/bin/m68k-amigaos-gcc-4.4.1.exe -V 4.4.1 -DHAVE_AV_CONFIG_H -I.
-I"/bin/ffmpeg8" -mnobitfield -m68040 -std=c99 -Wdeclaration-after-statement
-W
disabled-optimization -fno-math-errno -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common -fomit-frame-pointer
-Wal
l -Wno-switch -Wpointer-arith -Wredundant-decls -Wcast-qual -Wwrite-strings
-Wun
def -Os -c -o libavcodec/mpegvideo.o libavcodec/mpegvideo.c
libavcodec/mpegvideo.c: In function 'init_rl':
libavcodec/mpegvideo.c:760: warning: pointer targets in assignment differ in
sig
nedness
libavcodec/mpegvideo.c:765: warning: pointer targets in assignment differ in
sig
nedness
libavcodec/mpegvideo.c: In function 'MPV_motion_lowres':
libavcodec/mpegvideo.c:1707: error: insn does not satisfy its constraints:
(insn 647 2733 2734 49 libavcodec/mpegvideo.c:1488 (set (reg/v/f:SI 7 d7
[orig:2
93 ptr_y ] [293])
(plus:SI (mem/f:SI (reg:SI 8 a0) [7 S4 A16])
(reg:SI 7 d7 [637]))) 131 {*addsi3_internal} (nil))
libavcodec/mpegvideo.c:1707: internal compiler error: in
reload_cse_simplify_ope
rands, at postreload.c:396
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
with -m68060 -Os options:
/usr/local/amiga/bin/m68k-amigaos-gcc-4.4.1.exe -V 4.4.1 -DHAVE_AV_CONFIG_H -I.
-I"/bin/ffmpeg8" -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement
-W
disabled-optimization -fno-math-errno -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common -fomit-frame-pointer
-Wal
l -Wno-switch -Wpointer-arith -Wredundant-decls -Wcast-qual -Wwrite-strings
-Wun
def -Os -c -o libavcodec/mpegvideo.o libavcodec/mpegvideo.c
libavcodec/mpegvideo.c: In function 'init_rl':
libavcodec/mpegvideo.c:760: warning: pointer targets in assignment differ in
sig
nedness
libavcodec/mpegvideo.c:765: warning: pointer targets in assignment differ in
sig
nedness
libavcodec/mpegvideo.c: In function 'MPV_motion_lowres':
libavcodec/mpegvideo.c:1707: error: insn does not satisfy its constraints:
(insn 637 2688 2689 49 libavcodec/mpegvideo.c:1488 (set (reg/v/f:SI 7 d7
[orig:2
89 ptr_y ] [289])
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (10 preceding siblings ...)
2009-08-19 0:28 ` ami_stuff at o2 dot pl
@ 2009-08-19 10:38 ` mikpe at it dot uu dot se
2009-08-23 18:25 ` schwab at linux-m68k dot org
` (14 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: mikpe at it dot uu dot se @ 2009-08-19 10:38 UTC (permalink / raw)
To: gcc-bugs
------- Comment #12 from mikpe at it dot uu dot se 2009-08-19 10:38 -------
ICE confirmed with a gcc-4.4.1 cross to m68k-linux. Applying the PR37053 and
PR41064 fixes eliminated the ICE.
The mpegvideo.i test case does not compile as-is for me, as the compiler
complains about a syntax error:
libavcodec/mpegvideo.c:89: error: expected ';', ',' or ')' before 'p'
That's the ff_find_start_code() function head. Commenting out the restrict key
words eliminated that problem, leaving only the ICE to deal with.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (11 preceding siblings ...)
2009-08-19 10:38 ` mikpe at it dot uu dot se
@ 2009-08-23 18:25 ` schwab at linux-m68k dot org
2009-08-27 10:39 ` nospamname at web dot de
` (13 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: schwab at linux-m68k dot org @ 2009-08-23 18:25 UTC (permalink / raw)
To: gcc-bugs
------- Comment #13 from schwab at linux-m68k dot org 2009-08-23 18:25 -------
Fixed in 4.5.0.
--
schwab at linux-m68k dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |FIXED
Target Milestone|--- |4.5.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (12 preceding siblings ...)
2009-08-23 18:25 ` schwab at linux-m68k dot org
@ 2009-08-27 10:39 ` nospamname at web dot de
2009-09-03 18:58 ` mikpe at it dot uu dot se
` (12 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: nospamname at web dot de @ 2009-08-27 10:39 UTC (permalink / raw)
To: gcc-bugs
------- Comment #14 from nospamname at web dot de 2009-08-27 10:38 -------
I compile gcc 4.4.2 20090825 and test.
problem is still in.
Is this fix in gcc4.4.2 too ?.
>The mpegvideo.i test case does not compile as-is for me, as the compiler
>complains about a syntax error:
>libavcodec/mpegvideo.c:89: error: expected ';', ',' or ')' before 'p'
because ffmpeg use cpu specific code, you must configure first for
crosscompile.This line is used for the 68k compilers run on cygwin.
./configure --arch=m68k --enable-cross-compile --cross-prefix=m68k-amigaos-
--extra-cflags="-mnobitfield -m68060"
--
nospamname at web dot de changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |UNCONFIRMED
Resolution|FIXED |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (13 preceding siblings ...)
2009-08-27 10:39 ` nospamname at web dot de
@ 2009-09-03 18:58 ` mikpe at it dot uu dot se
2009-12-29 16:31 ` schwab at linux-m68k dot org
` (11 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: mikpe at it dot uu dot se @ 2009-09-03 18:58 UTC (permalink / raw)
To: gcc-bugs
------- Comment #15 from mikpe at it dot uu dot se 2009-09-03 18:58 -------
(In reply to comment #14)
> I compile gcc 4.4.2 20090825 and test.
>
> problem is still in.
>
> Is this fix in gcc4.4.2 too ?.
No, so far these fixes have only been applied to trunk aka gcc-4.5. They are
easily backported to 4.4 and 4.3 however (I've done that for my 4.4/4.3 trees).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (14 preceding siblings ...)
2009-09-03 18:58 ` mikpe at it dot uu dot se
@ 2009-12-29 16:31 ` schwab at linux-m68k dot org
2009-12-29 17:29 ` ami_stuff at o2 dot pl
` (10 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: schwab at linux-m68k dot org @ 2009-12-29 16:31 UTC (permalink / raw)
To: gcc-bugs
------- Comment #16 from schwab at linux-m68k dot org 2009-12-29 16:31 -------
m68k-amigaos is not a supported target.
--
schwab at linux-m68k dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |INVALID
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (15 preceding siblings ...)
2009-12-29 16:31 ` schwab at linux-m68k dot org
@ 2009-12-29 17:29 ` ami_stuff at o2 dot pl
2009-12-29 18:01 ` bonzini at gnu dot org
` (9 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: ami_stuff at o2 dot pl @ 2009-12-29 17:29 UTC (permalink / raw)
To: gcc-bugs
------- Comment #17 from ami_stuff at o2 dot pl 2009-12-29 17:29 -------
> m68k-amigaos is not a supported target.
LOL! So you prefere to not get any bugreports? I reported a few bugs which were
next confirmed on the other hardware and after some time fixed, no matter if I
use unsupported m68-amigaos target or not. I think that there is no chance to
see any m68k-specific bugs fixed, so I will not waste my time in the future.
Please don't forget to close the rest of my bugreports, because I also used
m68k-amigaos unsupported target. You may also chage status from FIXED to
INVALID if you prefere...
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (16 preceding siblings ...)
2009-12-29 17:29 ` ami_stuff at o2 dot pl
@ 2009-12-29 18:01 ` bonzini at gnu dot org
2009-12-29 18:45 ` nospamname at web dot de
` (8 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: bonzini at gnu dot org @ 2009-12-29 18:01 UTC (permalink / raw)
To: gcc-bugs
------- Comment #18 from bonzini at gnu dot org 2009-12-29 18:01 -------
True, it is P5 but it is not invalid. Andreas, if you want to close this as
invalid you should first follow the target deprecation process and propose to
remove the target for 4.6.
--
bonzini at gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |UNCONFIRMED
Priority|P3 |P5
Resolution|INVALID |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (17 preceding siblings ...)
2009-12-29 18:01 ` bonzini at gnu dot org
@ 2009-12-29 18:45 ` nospamname at web dot de
2009-12-29 19:31 ` bonzini at gnu dot org
` (7 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: nospamname at web dot de @ 2009-12-29 18:45 UTC (permalink / raw)
To: gcc-bugs
------- Comment #19 from nospamname at web dot de 2009-12-29 18:44 -------
The Problem is fixed in GCC4.5.0.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (18 preceding siblings ...)
2009-12-29 18:45 ` nospamname at web dot de
@ 2009-12-29 19:31 ` bonzini at gnu dot org
2009-12-29 21:44 ` joseph at codesourcery dot com
` (6 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: bonzini at gnu dot org @ 2009-12-29 19:31 UTC (permalink / raw)
To: gcc-bugs
------- Comment #20 from bonzini at gnu dot org 2009-12-29 19:30 -------
Adding dependencies on the patches that fix the bug.
--
bonzini at gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
BugsThisDependsOn| |37053, 41064
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2009-12-29 19:30:43
date| |
Bug 40414 depends on bug 41064, which changed state.
Bug 41064 Summary: [4.4 Regression]: build breakage for cris-elf building newlib, ICE in extract_insn, from r150726
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41064
What |Old Value |New Value
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |
Bug 40414 depends on bug 37053, which changed state.
Bug 37053 Summary: [4.3/4.4 regression] ICE in reload_cse_simplify_operands, at postreload.c:395
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37053
What |Old Value |New Value
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (19 preceding siblings ...)
2009-12-29 19:31 ` bonzini at gnu dot org
@ 2009-12-29 21:44 ` joseph at codesourcery dot com
2009-12-30 9:40 ` nospamname at web dot de
` (5 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: joseph at codesourcery dot com @ 2009-12-29 21:44 UTC (permalink / raw)
To: gcc-bugs
------- Comment #21 from joseph at codesourcery dot com 2009-12-29 21:44 -------
Subject: Re: gcc 4.4.0 error at postreload.c:396
On Tue, 29 Dec 2009, bonzini at gnu dot org wrote:
> True, it is P5 but it is not invalid. Andreas, if you want to close this as
> invalid you should first follow the target deprecation process and propose to
> remove the target for 4.6.
It is not a question of deprecation. There is no m68k-amigaos support in
FSF GCC and I don't think there ever has been. Thus the submitter is
using a version of GCC with an unknown set of third-party modifications.
They should report any bugs to the provider of that modified version of
GCC. That provider should determine whether the bugs are present in
unmodified FSF GCC for some m68k-* target supported by FSF GCC, and pass
on the reports to GCC Bugzilla (referencing the target supported by FSF
GCC) if so. The bug reporting instructions are quite explicit that bugs
in non-FSF versions of GCC do nto go here.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (20 preceding siblings ...)
2009-12-29 21:44 ` joseph at codesourcery dot com
@ 2009-12-30 9:40 ` nospamname at web dot de
2009-12-30 10:56 ` bonzini at gnu dot org
` (4 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: nospamname at web dot de @ 2009-12-30 9:40 UTC (permalink / raw)
To: gcc-bugs
------- Comment #22 from nospamname at web dot de 2009-12-30 09:39 -------
>There is no m68k-amigaos support in
>FSF GCC and I don't think there ever has been.
There is support for m68k-amigaos in FSF GCC.
search in gcc source for name amigaos and on changelog.lib you find this
Wed Sep 10 15:14:20 1997 Jeffrey A Law (law@cygnus.com)
* config.sub: Use "amigaos" instread of "amigados". Still
recognize "amigados" for backward compatibility.
Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
* INSTALL: Change 'amigados' to 'amigaos' to match current usage.
* install.texi (Configurations): Likewise.
* config.sub: Likewise.
In file configure you find more.
Now seem m68k-amigaos should remove, where is decicde if a target is remove or
not ?
---------------
But its true that amigaos cant build without changes from FSF GCC
configfiles.But there are no C or C++ source changes need.
I fear to submit the changes, not that m68k-amigaos get remove, because the
amiga OS change offical to PPC CPU since 7 years, but the PPC amigaos is not on
FSF GCC and they have only old compilers
m68k-amigaos is still used today and new programs are written with GCC 4.5.0
and there are users that use it
See here the uploads of the last 14 days.The yellow Symbol is m68k-amigaos
http://aminet.net/
To get m68k-amigaos compile is very easy, so i compile actual compiler and when
a problem occur we try to find it near and report it.We verify very carefully,
because we know a wrong bugreport increase the risc that m68k-amigaos os maybe
remove.
To get amigaos compile i have a small readme text file, that explain the steps
what lines must add to the configure files of Gcc and the platform specific
files that need copy and work always because of the GGC backend API
add in gcc-x.x.x/gcc/config.gcc
(search for m68k)
m68k-*-amigaos*)
tmake_file=m68k/t-amigaos
tm_file="${tm_file} m68k/amigaos.h"
tm_p_file="${tm_p_file} m68k/amigaos-protos.h"
tm_defines="TARGET_AMIGAOS TARGET_DEFAULT=0" # 68040
extra_objs=amigaos.o
gnu_ld=yes
;;
in gcc-x.x.x/gcc/config/m68k dir add files (from the 4.3.2 source)
amigaos.h
amigaos.c
t-amigaos
x-amigaos
xm-amigaos.h
amigaos-protos.h
host-amigaos.c
in dir gcc-x.x.x//gcc add file
amigacollect2.c
thats enough to build the gcc.more steps are need, to build the libs, libgcc
libstdc++ when you want new
to build libgcc: add in libgcc/config.host 68k cpu and later amigaos.see file
from 4.3.2 or use same.
the dir amigaos must add in libstdc++-v3/config (see 4.3.2 source)
now you can compile all.
when you get assembler error in atomicity.h change line with the cas so that,
the \n is last char.
"cas.l %0 , %1 , %2 \n"
for build libstdc++ with the crosscompilers you need do this steps too
in libstdc++/configure
after (search for "GLIBCXX_IS_NATIVE=true")
""""
if test $hostos = $targetos -o $targetos = darwin ; then
GLIBCXX_IS_NATIVE=true
fi
;;
""""
add this lines
"""
*-*-amigaos*)
LDFLAGS="${LDFLAGS-ld} -noixemul"
;;
""""
search for "Base decisions on target environment"
""""
# Base decisions on target environment.
case "${host}" in
""""
add this lines
"""
m68k-*-amigaos*)
#os_include_dir="usr/local/amiga/m68k-amigaos/include"
;;
"""
in gccx.x.x/libiberty/configure
after this lines
""""
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
_ACEOF
fi
""""
add this line
LDFLAGS="${LDFLAGS-ld} -noixemul"
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (21 preceding siblings ...)
2009-12-30 9:40 ` nospamname at web dot de
@ 2009-12-30 10:56 ` bonzini at gnu dot org
2009-12-30 12:07 ` nospamname at web dot de
` (3 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: bonzini at gnu dot org @ 2009-12-30 10:56 UTC (permalink / raw)
To: gcc-bugs
------- Comment #23 from bonzini at gnu dot org 2009-12-30 10:56 -------
You need a proper patch, not instructions.
However, it's clear from the bugreport and the patches required to fix it, that
it is not important whether the target is m68k-amigaos or another OS.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (22 preceding siblings ...)
2009-12-30 10:56 ` bonzini at gnu dot org
@ 2009-12-30 12:07 ` nospamname at web dot de
2009-12-30 12:22 ` bonzini at gnu dot org
` (2 subsequent siblings)
26 siblings, 0 replies; 28+ messages in thread
From: nospamname at web dot de @ 2009-12-30 12:07 UTC (permalink / raw)
To: gcc-bugs
------- Comment #24 from nospamname at web dot de 2009-12-30 12:06 -------
(In reply to comment #23)
> You need a proper patch, not instructions.
>
> However, it's clear from the bugreport and the patches required to fix it, that
> it is not important whether the target is m68k-amigaos or another OS.
>
Yes i know, and i can do a diff, but are there chances that this changes are
add or is m68k-amigaos going to remove complete in 4.6 ?
Wy can not the code stay in as long it work well ?
m68k-amigaos is a m68k bsd a.out Build that use sjlj Exception Handling on C++.
So there is no special support Code for AOS need and it work well with newest
compilers.
The only that need add to compile GCC and g++ is this.
add in gcc-x.x.x/gcc/config.gcc
(search for m68k)
m68k-*-amigaos*)
tmake_file=m68k/t-amigaos
tm_file="${tm_file} m68k/amigaos.h"
tm_p_file="${tm_p_file} m68k/amigaos-protos.h"
tm_defines="TARGET_AMIGAOS TARGET_DEFAULT=0" # 68040
extra_objs=amigaos.o
gnu_ld=yes
;;
more add in config files is only need for libgcc and libstdc++
When report a Bug, we can also compare the asm Code with a better support 68k
Target, thats no Problem, but we thought because of same C Code all work same.
But i like know what 68k target Andreas or other GCC Developer for 68k use and
what configure Options they use so i can build a cygwin Version for this
compilers.
Or is there a binary build for cygwin and these 68k Compilers here ?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (23 preceding siblings ...)
2009-12-30 12:07 ` nospamname at web dot de
@ 2009-12-30 12:22 ` bonzini at gnu dot org
2010-04-06 11:28 ` rguenth at gcc dot gnu dot org
2010-07-31 9:35 ` rguenth at gcc dot gnu dot org
26 siblings, 0 replies; 28+ messages in thread
From: bonzini at gnu dot org @ 2009-12-30 12:22 UTC (permalink / raw)
To: gcc-bugs
------- Comment #25 from bonzini at gnu dot org 2009-12-30 12:22 -------
Adding target support without at least libgcc makes little sense.
The small part in config.guess/config.sub is not going to be removed, since
those files are just imported in GCC and are handled as a separate project.
People use m68k-elf or m68k-uclinux to build cross compilers. The former can
be built easily using a combined tree.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (24 preceding siblings ...)
2009-12-30 12:22 ` bonzini at gnu dot org
@ 2010-04-06 11:28 ` rguenth at gcc dot gnu dot org
2010-07-31 9:35 ` rguenth at gcc dot gnu dot org
26 siblings, 0 replies; 28+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-04-06 11:28 UTC (permalink / raw)
To: gcc-bugs
------- Comment #26 from rguenth at gcc dot gnu dot org 2010-04-06 11:20 -------
GCC 4.5.0 is being released. Deferring to 4.5.1.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.5.0 |4.5.1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Bug target/40414] gcc 4.4.0 error at postreload.c:396
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
` (25 preceding siblings ...)
2010-04-06 11:28 ` rguenth at gcc dot gnu dot org
@ 2010-07-31 9:35 ` rguenth at gcc dot gnu dot org
26 siblings, 0 replies; 28+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-31 9:35 UTC (permalink / raw)
To: gcc-bugs
------- Comment #27 from rguenth at gcc dot gnu dot org 2010-07-31 09:29 -------
GCC 4.5.1 is being released, adjusting target milestone.
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.5.1 |4.5.2
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40414
^ permalink raw reply [flat|nested] 28+ messages in thread
end of thread, other threads:[~2010-07-31 9:32 UTC | newest]
Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-06-11 13:34 [Bug c/40414] New: gcc 4.4.0 error at postreload.c:396 nospamname at web dot de
2009-06-11 13:52 ` [Bug c/40414] " schwab at linux-m68k dot org
2009-06-11 15:03 ` bonzini at gnu dot org
2009-06-15 19:36 ` [Bug target/40414] " gni at gecko dot de
2009-06-16 11:06 ` nospamname at web dot de
2009-08-02 7:23 ` nospamname at web dot de
2009-08-06 15:56 ` nospamname at web dot de
2009-08-17 19:25 ` ami_stuff at o2 dot pl
2009-08-17 19:33 ` ami_stuff at o2 dot pl
2009-08-17 20:11 ` ami_stuff at o2 dot pl
2009-08-17 20:11 ` ami_stuff at o2 dot pl
2009-08-19 0:28 ` ami_stuff at o2 dot pl
2009-08-19 10:38 ` mikpe at it dot uu dot se
2009-08-23 18:25 ` schwab at linux-m68k dot org
2009-08-27 10:39 ` nospamname at web dot de
2009-09-03 18:58 ` mikpe at it dot uu dot se
2009-12-29 16:31 ` schwab at linux-m68k dot org
2009-12-29 17:29 ` ami_stuff at o2 dot pl
2009-12-29 18:01 ` bonzini at gnu dot org
2009-12-29 18:45 ` nospamname at web dot de
2009-12-29 19:31 ` bonzini at gnu dot org
2009-12-29 21:44 ` joseph at codesourcery dot com
2009-12-30 9:40 ` nospamname at web dot de
2009-12-30 10:56 ` bonzini at gnu dot org
2009-12-30 12:07 ` nospamname at web dot de
2009-12-30 12:22 ` bonzini at gnu dot org
2010-04-06 11:28 ` rguenth at gcc dot gnu dot org
2010-07-31 9:35 ` rguenth 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).