Except that I don't think you'll find the problem has to do with
the endianness of the processor and Lua.
I'm starting to agree with you.
I'm going to put a bet on a compiled code issue with the
compiler optimizing a copy or move incorrectly. Probably
in the memcpy() or memmove() operation.
I don't think the answer is that easy though :) I still suspect the allocator, just don't know how to prove it yet.
What optimization level do you have the compiler set to?
-Os -fomit-frame-pointer. I'll try to do -O0, thanks, that should've been one of the first things to try ...
PS: I'm just guessing here. I do have some experience with
debugging without a JTAG. Can you compile code snippets
to run on your target without Lua?
Can you do something like:
string[] = "abcdefgh"
for( i=0; i<8; ++i )
printf( "%s\n", &string[i] )