On Thursday, 23 January 2014 at 16:56:19 UTC, Johannes Pfau wrote:
I think what could be happening here is that GCC doesn't know what
memory you're accessing via the message pointer in SendCommand.

See http://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html
and search for "If your assembler instructions access memory in an
unpredictable fashion"

Maybe typing "message" as uint* or uint[3]* instead of void* is already good enough. Otherwise try using a memory input as described on that
page.

That appears to be it. I added memory to the clobber list and it worked without any extra modifiers. And, my executable is now only 56 bytes. It still doesn't do anything useful, but it's small and optimized :-)

Thanks so much for the information and the help.

Mike



Reply via email to