Skip to content

Commit

Permalink
- Work around issue with tree-loop-vectorize in p_acs.cpp.
Browse files Browse the repository at this point in the history
  • Loading branch information
Blzut3 committed Jan 16, 2016
1 parent f9ae304 commit 8f31af3
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions src/p_acs.cpp
Expand Up @@ -1954,11 +1954,14 @@ bool FBehavior::Init(int lumpnum, FileReader * fr, int len)
int arraynum = MapVarStore[LittleLong(chunk[2])];
if ((unsigned)arraynum < (unsigned)NumArrays)
{
int initsize = MIN<int> (ArrayStore[arraynum].ArraySize, (LittleLong(chunk[1])-4)/4);
// Use unsigned iterator here to avoid issue with GCC 4.9/5.x
// optimizer. Might be some undefined behavior in this code,
// but I don't know what it is.
unsigned int initsize = MIN<unsigned int> (ArrayStore[arraynum].ArraySize, (LittleLong(chunk[1])-4)/4);
SDWORD *elems = ArrayStore[arraynum].Elements;
for (i = 0; i < initsize; ++i)
for (unsigned int j = 0; j < initsize; ++j)
{
elems[i] = LittleLong(chunk[3+i]);
elems[j] = LittleLong(chunk[3+j]);
}
}
chunk = (DWORD *)NextChunk((BYTE *)chunk);
Expand Down

0 comments on commit 8f31af3

Please sign in to comment.