/* { dg-do compile } */ | |
/* { dg-additional-options "-O3" } */ | |
typedef float MushMeshVector[4]; | |
struct MushMeshQuaternionPair { | |
void VectorRotate(MushMeshVector &); | |
MushMeshVector m_first; | |
MushMeshVector m_second; | |
}; | |
void | |
MushMeshQuaternionPair:: | |
VectorRotate(MushMeshVector &ioVec) { | |
ioVec[2] = (2 - m_first[1] + m_first[3] * 0); | |
ioVec[3] = (m_first[3] + m_first[1] - m_first[2] * 0); | |
float c = ioVec[2], d = ioVec[3]; | |
ioVec[2] = (0 - d * m_second[1]); | |
ioVec[3] = (2 - c * m_second[1]); | |
} | |