Add some discussion of what SlangVersion means for libclcore.

Bug: http://b/29154200
Bug: http://b/28070272

Test: aosp_x86-eng build top-level and slang

Change-Id: I8e3ac97596895f71258a4862602a1bf17c3761d2
diff --git a/driver/README.txt b/driver/README.txt
new file mode 100644
index 0000000..09a05b3
--- /dev/null
+++ b/driver/README.txt
@@ -0,0 +1,17 @@
+----------------------
+Slang compiler version
+----------------------
+
+See SlangVersion in frameworks/compile/slang/slang_version.h.  The
+bitcode wrapper has a field that indicates the version of the slang
+compiler that produced that bitcode.  A bitcode consumer is allowed to
+make certain assumptions if the version number is sufficiently high.
+However, only user bitcode has a wrapper -- libclcore.bc does not.
+Therefore, libclcore.bc must not violate ANY of the guarantees
+provided at a particular SlangVersion that allow the aforementioned
+assumptions.  This is important because when user bitcode is linked to
+libclcore.bc (bcc::Script::LinkRuntime()) the linked bitcode is
+treated as having the same SlangVersion as the user bitcode.  This
+implies that whenever we modify (runtime, driver, bcc) to take
+advantage of some new SlangVersion guarantee, we may have to update
+libclcore.bc to conform to that guarantee.