Bug 15193 - [3.4/4.0 Regression] Unary minus using pointer to V4SF vector causes -fforce-mem to exhaust all memory
|
Bug#:
15193
|
Product: gcc
|
Version: 3.4.0
|
|
Host: i686-pc-linux-gnu
|
Target: i686-pc-linux-gnu
|
Build: i686-pc-linux-gnu
|
|
Status: RESOLVED
|
Severity: critical
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: rth@gcc.gnu.org
|
Reported By: ahu@ds9a.nl
|
|
Component: rtl-optimization
|
Target Milestone: 3.4.1
|
|
Summary: [3.4/4.0 Regression] Unary minus using pointer to V4SF vector causes -fforce-mem to exhaust all memory
|
|
Keywords: ice-on-valid-code, memory-hog
|
|
Opened: 2004-04-28 19:05
|
|
Description:
|
Last confirmed: 2004-04-28 19:16
|
Opened: 2004-04-28 19:05
|
Compile the below with gcc chelper-exploit.c -c -O -fforce-mem -msse :
typedef int v4sf __attribute__ ((mode(V4SF)));
void cprocess(v4sf* d_r)
{
v4sf force= -(*d_r);
}
And the compiler (cc1) will try to allocate all memory.
Problem disappears with removing the '-', or by switching to 3.3.3 or to the SSA
branche, by removing -O or removing -fforce-mem, by removing -msse
Confirmed, here is an example which is happens even on the tree-ssa:
typedef int v4sf __attribute__ ((mode(V4SF)));
v4sf cprocess(v4sf* d_r)
{
v4sf force= -(*d_r);
return force;
}
Richard --
As the IA32 maintainer, would you please look at this?
Tnanks,
-- Mark