Updated whitelist and a fix for target x86_64

Updated whitelist for new rsForEachInternal signature.

Correctly handles RS object parameters of rsForEachInternal for the
x86_64 target.

Change-Id: I1b53861083b87c51c5bdaeaec2be469dc7af7a0a
diff --git a/lib/Renderscript/RSStubsWhiteList.cpp b/lib/Renderscript/RSStubsWhiteList.cpp
index 08976d6..08463e9 100644
--- a/lib/Renderscript/RSStubsWhiteList.cpp
+++ b/lib/Renderscript/RSStubsWhiteList.cpp
@@ -631,7 +631,7 @@
 "_Z16rsMatrixMultiplyPK12rs_matrix4x4Dv2_f",
 "_Z16rsMatrixMultiplyPK12rs_matrix4x4Dv3_f",
 "_Z16rsMatrixMultiplyPK12rs_matrix4x4Dv4_f",
-"_Z17rsForEachInternaliP14rs_script_calliiz",
+"_Z17rsForEachInternaliP14rs_script_calliiP13rs_allocation",
 "_Z17rsMatrixLoadOrthoP12rs_matrix4x4ffffff",
 "_Z17rsMatrixLoadScaleP12rs_matrix4x4fff",
 "_Z17rsMatrixTranslateP12rs_matrix4x4fff",
diff --git a/lib/Renderscript/RSX86CallConvPass.cpp b/lib/Renderscript/RSX86CallConvPass.cpp
index 5a0c990..19c1d9d 100644
--- a/lib/Renderscript/RSX86CallConvPass.cpp
+++ b/lib/Renderscript/RSX86CallConvPass.cpp
@@ -83,6 +83,9 @@
     // rsClearObject's first parameter is a pointer
     if (FName.find("rsClearObject") != std::string::npos && ArgNo == 0)
       return false;
+    // rsForEachInternal's fifth parameter is a pointer
+    if (FName.find("rsForEachInternal") != std::string::npos && ArgNo == 4)
+      return false;
 
     return true;
   }