Add gcc intrinsics implementations for atomic and mutex
diff --git a/src/hb-atomic-private.hh b/src/hb-atomic-private.hh
index 29e4146..3394afc 100644
--- a/src/hb-atomic-private.hh
+++ b/src/hb-atomic-private.hh
@@ -72,13 +72,20 @@
 #endif
 
 
-#else
+#elif !defined(HB_NO_MT)
 
-#define HB_ATOMIC_INT_NIL 1
+#define HB_ATOMIC_INT_NIL 1 /* Warn that fallback implementation is in use. */
+typedef volatile int hb_atomic_int_t;
+#define hb_atomic_int_add(AI, V)	(((AI) += (V)) - (V))
+
+
+#else /* HB_NO_MT */
+
 typedef int hb_atomic_int_t;
 #define hb_atomic_int_add(AI, V)	(((AI) += (V)) - (V))
 
 #endif
 
+/* TODO Add tracing. */
 
 #endif /* HB_ATOMIC_PRIVATE_HH */