Add RSInvariant pass to recognize Load from RsExpandKernelDriverInfo as invariant.
This allows more-aggressive optimization of foreachexp-generated code and of the
rsGet*(rs_kernel_context) API functions. In particular, it facilitates LICM of
Loads out of the wrapper loop in a .expand function.
Bug: 18964628
Change-Id: I77a87b325724ca08c4a04f5a46f316be78a5e0fd
diff --git a/lib/Renderscript/Android.mk b/lib/Renderscript/Android.mk
index e6754b5..bbb289d 100644
--- a/lib/Renderscript/Android.mk
+++ b/lib/Renderscript/Android.mk
@@ -25,6 +25,7 @@
RSCompilerDriver.cpp \
RSEmbedInfo.cpp \
RSForEachExpand.cpp \
+ RSInvariant.cpp \
RSScript.cpp \
RSInvokeHelperPass.cpp \
RSIsThreadablePass.cpp \