diff --git a/cbits/sha256.c b/cbits/sha256.c
--- a/cbits/sha256.c
+++ b/cbits/sha256.c
@@ -50,7 +50,7 @@
 {
 #if WORDS_BIGENDIAN
   return hl;
-#elif __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)
+#elif __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)
   return __builtin_bswap32(hl);
 #else
   /* GCC usually transforms this into a bswap insn */
@@ -73,7 +73,7 @@
 {
 #if WORDS_BIGENDIAN
   return hll;
-#elif __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)
+#elif __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)
   return __builtin_bswap64(hll);
 #else
   return ((uint64_t)cpu_to_be32(hll & 0xffffffff) << 32LL) | cpu_to_be32(hll >> 32);
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,8 @@
+## 0.11.100.1
+
+ - Use `__builtin_bswap{32,64}` only with GCC >= 4.3
+   ([#1](https://github.com/hvr/cryptohash-sha256/issues/1))
+
 ## 0.11.100.0
 
  - new `hmac` and `hmaclazy` functions providing HMAC-SHA1
diff --git a/cryptohash-sha256.cabal b/cryptohash-sha256.cabal
--- a/cryptohash-sha256.cabal
+++ b/cryptohash-sha256.cabal
@@ -1,5 +1,5 @@
 name:                cryptohash-sha256
-version:             0.11.100.0
+version:             0.11.100.1
 description:
     A practical incremental and one-pass, pure API to the
     <https://en.wikipedia.org/wiki/SHA-2 SHA-256 hash algorithm>
