aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xutils/CheckBuiltinMacros.sh23
1 files changed, 23 insertions, 0 deletions
diff --git a/utils/CheckBuiltinMacros.sh b/utils/CheckBuiltinMacros.sh
new file mode 100755
index 0000000000..6a8573c0c1
--- /dev/null
+++ b/utils/CheckBuiltinMacros.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+set -ex
+
+if [ -z "$CC" ]; then
+ CC="gcc"
+fi
+
+SRCLANG=c
+MACROLIST=macro-list.txt
+CCDEFS=cc-definitions.txt
+CLANGDEFS=clang-definitions.txt
+
+# Gather list of macros as "NAME" = NAME.
+$CC -dM -E -x $SRCLANG /dev/null -o - | \
+grep "#define" | sort -f | sed -e "s/#define \([^ ]*\) .*/\"\1\" = \1/" > $MACROLIST
+
+$CC -E -x $SRCLANG $MACROLIST > $CCDEFS
+
+clang -E -x $SRCLANG $MACROLIST > $CLANGDEFS
+
+diff $CCDEFS $CLANGDEFS
+
+