- Home /
EXC_ARM_DA_ALIGN crash in mono_runtime_invoke_profiled (iOS)
I'm trying to run a project on iOS (more specifically, an iPhone 4S running iOS 6.1.3), using XCode 5.0). It crashes during startup with an EXC_ARM_DA_ALIGN crash in mono_runtime_invoke_profiled, which is called (via a few other steps) from MonoBehaviour::Start.
I've tried doing a clean build, restarting the computer, and various other voodoo, but the problem remains.
My vague understanding of EXC_ARM_DA_ALIGN is that it indicates an attempt to access a non-aligned data element (like a double that's not on an 8-byte boundary, for example). At any rate, it certainly doesn't seem like something I could be causing in my Unity code... though clearly it's triggered by something in the code, since other projects work OK. But ultimately it seems like it must be a bug in Unity or Mono. (I'm using Unity 4.2.1f4.)
Has anybody else run into this issue? Any work-arounds?
After more investigation, it appears to be crashing on this line:
lut[i,j,k] = val;
where lut is declared as
const int kLutSize = 8;
const int kLutSizeVertical = 4;
static float[,,] lut = new float[kLutSize,kLutSizeVertical,kLutSize];
The assignment works fine when i, j, and k are all zero; but when k=1, kaboom.
This array is only 256 elements, so I don't think it's a memory-constraint issue... perhaps three-dimensional arrays are simply broken. Can anyone else confirm or shed light?
Yep, it appears to be any three-dimensional array access (of type float, at least). Reported here
Your answer
![](https://koobas.hobune.stream/wayback/20220613115802im_/https://answers.unity.com/themes/thub/images/avi.jpg)