I found comment:<br><br>/* Atomic increment of 32-bit values allows a lock-free implementation of the<br> * request side of signalSemaphoreWithIndex:<br> */<br><br>    /* Currently we provide definitions for x86 and GCC only.  */<br>

#if defined(__GNUC__) &amp;&amp; (defined(i386) || defined(__i386) || defined(__i386__) || defined(_X86_))<br>#ifdef TARGET_OS_IS_IPHONE<br>#define sqAtomicAddConst(var,n) OSAtomicAdd32(n,&amp;var)<br>#else<br># define sqAtomicAddConst(var,n) \<br>

    asm volatile (&quot;lock addl %1, %0&quot; : &quot;=m&quot; (var) : &quot;i&quot; (n), &quot;m&quot; (var))<br>#endif<br>#else<br>#ifdef TARGET_OS_IS_IPHONE<br>#define sqAtomicAddConst(var,n) OSAtomicAdd32(n,&amp;var)<br>

#endif<br>/* Dear implementor, you have choices.  Google atomic increment and you will<br> * find a number of implementations for other architectures.<br> */<br>#endif<br><br>I now try to google it.<br>Maybe you already know how to fix it?<br>

<br><div class="gmail_quote">2012/10/3 Denis Kudriashov <span dir="ltr">&lt;<a href="mailto:dionisiydk@gmail.com" target="_blank">dionisiydk@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Ok. I exclude IA32ABIPlugin. It&#39;s help. And now I have next problem:<br><br>[ 87%] Building C object CMakeFiles/StackVM.dir/cogVM/blessed/platforms/Cross/vm/sqTicker.c.o<br>In file included from /cogVM/blessed/platforms/Cross/vm/sqTicker.c:56:<br>


/cogVM/blessed/platforms/Cross/vm/sqAtomicOps.h:140: ошибка: #error atomic access of 64-bit variables not yet defined for this platform<br>make[2]: *** [CMakeFiles/StackVM.dir/cogVM/blessed/platforms/Cross/vm/sqTicker.c.o] error 1<br>


make[1]: *** [CMakeFiles/StackVM.dir/all] error 2<br>make: *** [all] error 2<br><br><br>What I can do now?<br><br><br><div class="gmail_quote">2012/10/3 David T. Lewis <span dir="ltr">&lt;<a href="mailto:lewis@mail.msen.com" target="_blank">lewis@mail.msen.com</a>&gt;</span><div>

<div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><br>
On Wed, Oct 03, 2012 at 10:31:55AM +0200, Igor Stasenko wrote:<br>
&gt;<br>
&gt; On 3 October 2012 06:29, Denis Kudriashov &lt;<a href="mailto:dionisiydk@gmail.com" target="_blank">dionisiydk@gmail.com</a>&gt; wrote:<br>
&gt; &gt;<br>
&gt; &gt; Great. I remove it.<br>
&gt; &gt; Now process stopped at ~30% on:<br>
&gt; &gt;<br>
&gt; &gt; tmp/cc33Ks89.s: Assembler messages:<br>
&gt; &gt; /tmp/cc33Ks89.s:90: Error: ARM register expected -- `mov [sp,#844],%edx&#39;<br>
&gt; &gt; /tmp/cc33Ks89.s:118: Error: bad instruction `fldl [r0,#0]&#39;<br>
&gt; &gt; make[2]: *** [IA32ABI/CMakeFiles/IA32ABI.dir/cogVM/blessed/platforms/Cross/plugins/IA32ABI/ia32abicc.c.o]<br>
</div>&gt; &gt; ???????????? 1<br>
<div>&gt;<br>
&gt; so remove that plugin from a build.<br>
&gt; You should start from minimum set of plugins and then proceed adding<br>
&gt; more once you can make them compiling/working.<br>
&gt;<br>
<br>
</div>FYI, the smallest useable VM requires these plugins:<br>
<br>
  BitBltSimulation<br>
  BalloonEnginePlugin<br>
  FilePlugin<br>
<br>
But usually you will also want networking, so a good starting point for<br>
a minimal VM is:<br>
<br>
  BitBltSimulation<br>
  BalloonEnginePlugin<br>
  FilePlugin<br>
  SocketPlugin<br>
<br>
Dave<br>
<br>
</blockquote></div></div></div><br>
</blockquote></div><br>