diff -urN tinycc.old/lib/libtcc1.c tinycc/lib/libtcc1.c
--- tinycc.old/lib/libtcc1.c	2016-04-15 08:38:09.000000000 +0300
+++ tinycc/lib/libtcc1.c	2016-04-15 08:41:23.000000000 +0300
@@ -737,6 +737,17 @@
 /* __ARM_NR_cacheflush is kernel private and should not be used in user space.
  * However, there is no ARM asm parser in tcc so we use it for now */
 #if 1
+    #ifndef __ARM_NR_cacheflush
+        #define __thumb__ /* r2 value in asm */
+        #if defined(__thumb__)
+            #define __NR_SYSCALL_BASE   0
+        #else
+            #define __NR_SYSCALL_BASE   0x900000
+        #endif
+    #define __ARM_NR_BASE       (__NR_SYSCALL_BASE+0x0f0000)
+    #define __ARM_NR_cacheflush (__ARM_NR_BASE+2)
+    #endif
+
     syscall(__ARM_NR_cacheflush, beginning, end, 0);
 #else
     __asm__ ("push {r7}\n\t"
