block-sha1: guard gcc extensions with __GNUC__

With this, the code should now be portable to any C compiler.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Nicolas Pitre 2009-08-18 15:37:22 -04:00 committed by Junio C Hamano
parent 51ea55190b
commit e9c5dcd131

View file

@ -9,7 +9,7 @@
#include "sha1.h" #include "sha1.h"
#if defined(__i386__) || defined(__x86_64__) #if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))
/* /*
* Force usage of rol or ror by selecting the one with the smaller constant. * Force usage of rol or ror by selecting the one with the smaller constant.
@ -54,7 +54,7 @@
#if defined(__i386__) || defined(__x86_64__) #if defined(__i386__) || defined(__x86_64__)
#define setW(x, val) (*(volatile unsigned int *)&W(x) = (val)) #define setW(x, val) (*(volatile unsigned int *)&W(x) = (val))
#elif defined(__arm__) #elif defined(__GNUC__) && defined(__arm__)
#define setW(x, val) do { W(x) = (val); __asm__("":::"memory"); } while (0) #define setW(x, val) do { W(x) = (val); __asm__("":::"memory"); } while (0)
#else #else
#define setW(x, val) (W(x) = (val)) #define setW(x, val) (W(x) = (val))