<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/include/linux/compiler-intel.h, branch v3.10.49</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.10.49</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.10.49'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2013-12-20T15:45:10Z</updated>
<entry>
<title>x86, build, icc: Remove uninitialized_var() from compiler-intel.h</title>
<updated>2013-12-20T15:45:10Z</updated>
<author>
<name>H. Peter Anvin</name>
<email>hpa@linux.intel.com</email>
</author>
<published>2013-12-10T22:56:06Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=ac6d0ecfef36956cb0549c89398e5f7e1e84e658'/>
<id>urn:sha1:ac6d0ecfef36956cb0549c89398e5f7e1e84e658</id>
<content type='text'>
commit 503cf95c061a0551eb684da364509297efbe55d9 upstream.

When compiling with icc, &lt;linux/compiler-gcc.h&gt; ends up included
because the icc environment defines __GNUC__.  Thus, we neither need
nor want to have this macro defined in both compiler-gcc.h and
compiler-intel.h, and the fact that they are inconsistent just makes
the compiler spew warnings.

Reported-by: Sunil K. Pandey &lt;sunil.k.pandey@intel.com&gt;
Cc: Kevin B. Smith &lt;kevin.b.smith@intel.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
Link: http://lkml.kernel.org/n/tip-0mbwou1zt7pafij09b897lg3@git.kernel.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>byteorder: allow arch to opt to use GCC intrinsics for byteswapping</title>
<updated>2012-12-06T01:22:31Z</updated>
<author>
<name>David Woodhouse</name>
<email>David.Woodhouse@intel.com</email>
</author>
<published>2012-12-03T16:25:40Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=cf66bb93e0f75e0a4ba1ec070692618fa028e994'/>
<id>urn:sha1:cf66bb93e0f75e0a4ba1ec070692618fa028e994</id>
<content type='text'>
Since GCC 4.4, there have been __builtin_bswap32() and __builtin_bswap16()
intrinsics. A __builtin_bswap16() came a little later (4.6 for PowerPC,
48 for other platforms).

By using these instead of the inline assembler that most architectures
have in their __arch_swabXX() macros, we let the compiler see what's
actually happening. The resulting code should be at least as good, and
much *better* in the cases where it can be combined with a nearby load
or store, using a load-and-byteswap or store-and-byteswap instruction
(e.g. lwbrx/stwbrx on PowerPC, movbe on Atom).

When GCC is sufficiently recent *and* the architecture opts in to using
the intrinsics by setting CONFIG_ARCH_USE_BUILTIN_BSWAP, they will be
used in preference to the __arch_swabXX() macros. An architecture which
does not set ARCH_USE_BUILTIN_BSWAP will continue to use its own
hand-crafted macros.

Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Acked-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>Force erroneous inclusions of compiler-*.h files to be errors</title>
<updated>2007-10-17T15:42:47Z</updated>
<author>
<name>Robert P. J. Day</name>
<email>rpjday@mindspring.com</email>
</author>
<published>2007-10-17T06:26:11Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=94f582f82a85a941678c80c60a3baa8187c74217'/>
<id>urn:sha1:94f582f82a85a941678c80c60a3baa8187c74217</id>
<content type='text'>
Replace worthless comments with actual preprocessor errors when including
the wrong versions of the compiler.h files.

[akpm@linux-foundation.org: make it work]
Signed-off-by: Robert P. J. Day &lt;rpjday@mindspring.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>ARRAY_SIZE: check for type</title>
<updated>2007-05-07T19:13:00Z</updated>
<author>
<name>Rusty Russell</name>
<email>rusty@rustcorp.com.au</email>
</author>
<published>2007-05-06T21:51:05Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=c5e631cf65f4d6875efcd571275436f2964a8b48'/>
<id>urn:sha1:c5e631cf65f4d6875efcd571275436f2964a8b48</id>
<content type='text'>
We can use a gcc extension to ensure that ARRAY_SIZE() is handed an array,
not a pointer.  This is especially important when code is changed from a
fixed array to a pointer.  I assume the Intel compiler doesn't support
__builtin_types_compatible_p.

[jdike@addtoit.com: uml: update UML definition of ARRAY_SIZE]
Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Signed-off-by: Jeff Dike &lt;jdike@linux.intel.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Add unitialized_var() macro for suppressing gcc warnings</title>
<updated>2007-05-07T19:12:52Z</updated>
<author>
<name>Borislav Petkov</name>
<email>bbpetkov@yahoo.de</email>
</author>
<published>2007-05-06T21:49:17Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=9490991482a2091a828d997adbc088e24c310a4d'/>
<id>urn:sha1:9490991482a2091a828d997adbc088e24c310a4d</id>
<content type='text'>
Introduce a macro for suppressing gcc from generating a warning about a
probable uninitialized state of a variable.

Example:

-	spinlock_t *ptl;
+	spinlock_t *uninitialized_var(ptl);

Not a happy solution, but those warnings are obnoxious.

- Using the usual pointlessly-set-it-to-zero approach wastes several
  bytes of text.

- Using a macro means we can (hopefully) do something else if gcc changes
  cause the `x = x' hack to stop working

- Using a macro means that people who are worried about hiding true bugs
  can easily turn it off.

Signed-off-by: Borislav Petkov &lt;bbpetkov@yahoo.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ECC support</title>
<updated>2003-09-21T08:36:53Z</updated>
<author>
<name>Andrew Morton</name>
<email>akpm@osdl.org</email>
</author>
<published>2003-09-21T08:36:53Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=5fc4d8394c3192ba18c19f82f629b71e7e68cc0d'/>
<id>urn:sha1:5fc4d8394c3192ba18c19f82f629b71e7e68cc0d</id>
<content type='text'>
From: "Nakajima, Jun" &lt;jun.nakajima@intel.com&gt;

Split the increasingly messy compiler.h file into per-compiler files and also
add support for non-gcc compilers.  

With the current implementation:

  include/linux/compiler.h defines the compiler-dependent abstractions
  which can be overwritten by per-compiler definitions.

  include/linux/compiler-gcc.h contains the common definitions for all gcc
  versions.

  include/linux/compiler-gcc[2,3,+].h contains gcc major version specific
  definitions.

  include/linux/compiler-intel.h contains intel compiler specific
  definitions."
</content>
</entry>
</feed>
