title: GCC Bitwise Attribute
body: <p>What does GCC's <code>__attribute__(bitwise)</code> mean? The attribute isn't mentioned in the info pages of GCC-4.6. I stumbled upon it in the file <code>open-iscsi-2.0.871/include/iscsi_proto.h</code> in source the project <strong>Open-ISCSI</strong> where it is used as</p>
  <pre><code>...
  /*
   * If running svn modules we may need to define these.
   * This should not go upstream since this is already properly defined there
   */
  #ifdef __CHECKER__
  #define __bitwise__ __attribute__((bitwise))
  #else
  #define __bitwise__
  #endif
  #ifdef __CHECK_ENDIAN__
  #define __bitwise __bitwise__
  #else
  #define __bitwise
  #endif
  
  /*! initiator tags; opaque for target */
  typedef uint32_t __bitwise__ itt_t;
  /*! below makes sense only for initiator that created this tag */
  #define build_itt(itt, age) ((__force itt_t)\
      ((itt) | ((age) &lt;&lt; ISCSI_AGE_SHIFT)))
  #define get_itt(itt) ((__force uint32_t)(itt_t)(itt) &amp; ISCSI_ITT_MASK)
  #define RESERVED_ITT ((__force itt_t)0xffffffff)
  ...
  </code></pre>
  <p>I'm suspecting something involving <em>byte-order</em> but I can't make any sense of the snippet given above.</p>