[T106][ZXW-22]7520V3SCV2.01.01.02P42U09_VEC_V0.8_AP_VEC origin source commit

Change-Id: Ic6e05d89ecd62fc34f82b23dcf306c93764aec4b
diff --git a/ap/build/uClibc/extra/scripts/gen-as-const.awk b/ap/build/uClibc/extra/scripts/gen-as-const.awk
new file mode 100644
index 0000000..013bd6e
--- /dev/null
+++ b/ap/build/uClibc/extra/scripts/gen-as-const.awk
@@ -0,0 +1,33 @@
+# Script used in producing headers of assembly constants from C expressions.
+# The input to this script looks like:
+#	#cpp-directive ...
+#	NAME1
+#	NAME2 expression ...
+# The output of this script is C code to be run through gcc -S and then
+# massaged to extract the integer constant values of the given C expressions.
+# A line giving just a name implies an expression consisting of just that name.
+
+BEGIN { started = 0 }
+
+# cpp directives go straight through.
+/^#/ { print; next }
+
+NF >= 1 && !started {
+  printf "void dummy(void);\n";
+  print "void dummy(void) {";
+  started = 1;
+}
+
+# Separator.
+$1 == "--" { next }
+
+NF == 1 { sub(/^.*$/, "& &"); }
+
+NF > 1 {
+  name = $1;
+  sub(/^[^ 	]+[ 	]+/, "");
+  printf "__asm__ (\"@@@name@@@%s@@@value@@@%%0@@@end@@@\" : : \"i\" ((long) %s));\n",
+    name, $0;
+}
+
+END { if (started) print "}" }