title: gcc inline assembler shift left problem
body: <p>I'm having trouble compiling the code below. It may also have logical errors, please help. thanks,</p>
  
  <pre><code>#include &lt;iostream&gt;
  
  using namespace std;
  
  int main()
  {
      int shifted_value;
      int value = 2;
  
      __asm__("shll %%eax,%1;" : "=a" (shifted_value): "a" (value));
  
      cout&lt;&lt;shifted_value&lt;&lt;endl;
  
      return 0 ;
  }
  </code></pre>
  
  <p>The error is:</p>
  
  <p>Error: suffix or operands invalid for `shl'</p>