[RFC PATCH] Fix middle-end/6963
David Edelsohn
dje@watson.ibm.com
Fri Jun 28 08:18:00 GMT 2002
>>>>> Richard Henderson writes:
Richard> You need to provide the test case.
gcc -O1 -maix64 (produces corrupt assembly language)
gcc -O2 -maix64 (ICE in sched_analyze_2)
GCC 3.1 branch and GCC 3.2 trunk, either AIX target or PowerPC64 Linux
target.
Thanks, David
----- Begin Testcase -----
#define NIL (void *)0
typedef struct _LispObj LispObj;
struct _LispObj {
int type : 6;
LispObj *next;
long integer;
double real;
};
extern LispObj *LispNewCons();
LispObj *
Lisp_Makearray(LispObj *list, LispObj *ary, LispObj *disp)
{
long count = 1, c=1;
LispObj *dim, *obj;
dim = list->next;
for (obj = dim; obj != NIL; obj = obj->next)
count *= (obj->type == 0 ? obj->real : obj->integer);
for (c = 1, obj = disp->next; obj != NIL; obj = obj->next)
c *= (int)(obj->type == 0 ? obj->real : obj->integer);
count == 0;
if (count)
while (count) {
ary->next = LispNewCons();
count--;
}
return (obj);
}
----- End Testcase -----
More information about the Gcc-patches
mailing list