diff --git a/CMakeLists.txt b/CMakeLists.txt
index 46940fb..b2142ed 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -110,6 +110,7 @@
 if (WIN32)
     set (GLSLANG_SEARCH_PATH "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/glslang/Release"
                              "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/glslang/OSDependent/Windows/Release"
+                             "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/hlsl/Release"
                              "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/OGLCompilersDLL/Release"
                              "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/SPIRV/Release" )
     set (SPIRV_TOOLS_SEARCH_PATH "${CMAKE_SOURCE_DIR}/../spirv-tools/${BUILDTGT_DIR}/source/Release")
@@ -127,6 +128,9 @@
 find_library(OSDependent_LIB NAMES OSDependent
              HINTS ${GLSLANG_SEARCH_PATH} )
 
+find_library(HLSL_LIB NAMES HLSL
+             HINTS ${GLSLANG_SEARCH_PATH} )
+
 find_library(SPIRV_LIB NAMES SPIRV
              HINTS ${GLSLANG_SEARCH_PATH} )
 
@@ -137,6 +141,7 @@
 if (WIN32)
     set (GLSLANG_DEBUG_SEARCH_PATH "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/glslang/Debug"
                                    "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/glslang/OSDependent/Windows/Debug"
+                                   "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/hlsl/Debug"
                                    "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/OGLCompilersDLL/Debug"
                                    "${CMAKE_SOURCE_DIR}/../glslang/${BUILDTGT_DIR}/SPIRV/Debug")
     set (SPIRV_TOOLS_DEBUG_SEARCH_PATH "${CMAKE_SOURCE_DIR}/../spirv-tools/${BUILDTGT_DIR}/source/Debug")
@@ -144,6 +149,7 @@
     add_library(glslang     STATIC IMPORTED)
     add_library(OGLCompiler STATIC IMPORTED)
     add_library(OSDependent STATIC IMPORTED)
+    add_library(HLSL        STATIC IMPORTED)
     add_library(SPIRV       STATIC IMPORTED)
     add_library(Loader      STATIC IMPORTED)
     add_library(SPIRV-Tools STATIC IMPORTED)
@@ -154,6 +160,8 @@
                  HINTS ${GLSLANG_DEBUG_SEARCH_PATH} )
     find_library(OSDependent_DLIB NAMES OSDependent
                  HINTS ${GLSLANG_DEBUG_SEARCH_PATH} )
+    find_library(HLSL_DLIB NAMES HLSL
+                 HINTS ${GLSLANG_DEBUG_SEARCH_PATH} )
     find_library(SPIRV_DLIB NAMES SPIRV
                  HINTS ${GLSLANG_DEBUG_SEARCH_PATH} )
     find_library(SPIRV_TOOLS_DLIB NAMES SPIRV-Tools
@@ -168,6 +176,9 @@
     set_target_properties(OSDependent PROPERTIES
                          IMPORTED_LOCATION       "${OSDependent_LIB}"
                          IMPORTED_LOCATION_DEBUG "${OSDependent_DLIB}")
+    set_target_properties(HLSL PROPERTIES
+                         IMPORTED_LOCATION       "${HLSL_LIB}"
+                         IMPORTED_LOCATION_DEBUG "${HLSL_DLIB}")
     set_target_properties(SPIRV PROPERTIES
                          IMPORTED_LOCATION       "${SPIRV_LIB}"
                          IMPORTED_LOCATION_DEBUG "${SPIRV_DLIB}")
@@ -175,10 +186,10 @@
                          IMPORTED_LOCATION       "${SPIRV_TOOLS_LIB}"
                          IMPORTED_LOCATION_DEBUG "${SPIRV_TOOLS_DLIB}")
 
-    set (GLSLANG_LIBRARIES glslang OGLCompiler OSDependent SPIRV)
+    set (GLSLANG_LIBRARIES glslang OGLCompiler OSDependent HLSL SPIRV)
     set (SPIRV_TOOLS_LIBRARIES SPIRV-Tools)
 else ()
-    set (GLSLANG_LIBRARIES ${GLSLANG_LIB} ${OGLCompiler_LIB} ${OSDependent_LIB} ${SPIRV_LIB})
+    set (GLSLANG_LIBRARIES ${GLSLANG_LIB} ${OGLCompiler_LIB} ${OSDependent_LIB} ${HLSL_LIB} ${SPIRV_LIB})
     set (SPIRV_TOOLS_LIBRARIES ${SPIRV_TOOLS_LIB})
 endif()
 
diff --git a/build-android/glslang_revision_android b/build-android/glslang_revision_android
index c48dee1..56c5bed 100644
--- a/build-android/glslang_revision_android
+++ b/build-android/glslang_revision_android
@@ -1 +1 @@
-3c5b1e6b31aca0eb52fe7e82a963ff735f1de31b
+d99524197f3b68dbd6267bd3f4d7e8a0f49167b4
diff --git a/build-android/jni/Android.mk b/build-android/jni/Android.mk
index 96df1fa..8b43750 100644
--- a/build-android/jni/Android.mk
+++ b/build-android/jni/Android.mk
@@ -157,6 +157,11 @@
 include $(PREBUILT_STATIC_LIBRARY)
 
 include $(CLEAR_VARS)
+LOCAL_MODULE := HLSL-prebuilt
+LOCAL_SRC_FILES := $(SRC_DIR)/../shaderc/android_test/obj/local/$(TARGET_ARCH_ABI)/libHLSL.a
+include $(PREBUILT_STATIC_LIBRARY)
+
+include $(CLEAR_VARS)
 LOCAL_MODULE := shaderc_util-prebuilt
 LOCAL_SRC_FILES := $(SRC_DIR)/../shaderc/android_test/obj/local/$(TARGET_ARCH_ABI)/libshaderc_util.a
 include $(PREBUILT_STATIC_LIBRARY)
@@ -185,7 +190,7 @@
                     $(SRC_DIR)/../shaderc/libshaderc/include/
 
 LOCAL_STATIC_LIBRARIES := googletest_main layer_utils
-LOCAL_SHARED_LIBRARIES += shaderc-prebuilt glslang-prebuilt OGLCompiler-prebuilt OSDependent-prebuilt shaderc_util-prebuilt SPIRV-prebuilt SPIRV-Tools-prebuilt
+LOCAL_SHARED_LIBRARIES += shaderc-prebuilt glslang-prebuilt OGLCompiler-prebuilt OSDependent-prebuilt HLSL-prebuilt shaderc_util-prebuilt SPIRV-prebuilt SPIRV-Tools-prebuilt
 LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR --include=$(SRC_DIR)/tests/vulkan_wrapper.h
 LOCAL_LDLIBS := -llog
 include $(BUILD_EXECUTABLE)
diff --git a/build-android/shaderc_revision_android b/build-android/shaderc_revision_android
index 04b2324..8187523 100644
--- a/build-android/shaderc_revision_android
+++ b/build-android/shaderc_revision_android
@@ -1 +1 @@
-53cf6692879c6dcd5f4ccdffb8c10bb17b5e9d55
+4213a472474053f456464b7d00d14adf814ecc44
diff --git a/build-android/spirv-tools_revision_android b/build-android/spirv-tools_revision_android
index e83c901..9a829b9 100644
--- a/build-android/spirv-tools_revision_android
+++ b/build-android/spirv-tools_revision_android
@@ -1 +1 @@
-9149a66ca406d86967b104cac209bad309fd2c33
+469f0e8fd53b527ad410c46bf18eee327c9256a3
diff --git a/build-android/update_external_sources_android.bat b/build-android/update_external_sources_android.bat
index f2b719f..08d9630 100755
--- a/build-android/update_external_sources_android.bat
+++ b/build-android/update_external_sources_android.bat
@@ -116,7 +116,7 @@
    if exist %SPIRV_TOOLS_DIR% (
       rd /S /Q %SPIRV_TOOLS_DIR%
    )
-   if %errorlevel% neq 0 (goto:error)
+   if %ERRORLEVEL% neq 0 (goto:error)
    if not exist %SPIRV_TOOLS_DIR% (
       call:create_spirv-tools
    )
@@ -162,7 +162,7 @@
 
 :create_glslang
    echo.
-   echo Creating local glslang repository %GLSLANG_DIR%)
+   echo Creating local glslang repository %GLSLANG_DIR%
    mkdir %GLSLANG_DIR%
    cd %GLSLANG_DIR%
    git clone https://github.com/KhronosGroup/glslang.git .
@@ -179,11 +179,15 @@
    cd %GLSLANG_DIR%
    git fetch --all
    git checkout %GLSLANG_REVISION%
+   if not exist %GLSLANG_DIR%\SPIRV (
+      echo glslang source update failed!
+      set errorCode=1
+   )
 goto:eof
 
 :create_spirv-tools
    echo.
-   echo Creating local spirv-tools repository %SPIRV_TOOLS_DIR%)
+   echo Creating local spirv-tools repository %SPIRV_TOOLS_DIR%
    mkdir %SPIRV_TOOLS_DIR%
    cd %SPIRV_TOOLS_DIR%
    git clone https://github.com/KhronosGroup/SPIRV-Tools.git .
@@ -200,6 +204,10 @@
    cd %SPIRV_TOOLS_DIR%
    git fetch --all
    git checkout %SPIRV_TOOLS_REVISION%
+   if not exist %SPIRV_TOOLS_DIR%\source (
+      echo spirv-tools source update failed!
+      set errorCode=1
+   )
 goto:eof
 
 :create_shaderc
@@ -221,6 +229,10 @@
    cd %SHADERC_DIR%
    git fetch --all
    git checkout %SHADERC_REVISION%
+   if not exist %SHADERC_DIR%\libshaderc (
+      echo shaderc source update failed!
+      set errorCode=1
+   )
 goto:eof
 
 :build_shaderc
diff --git a/glslang_revision b/glslang_revision
index 4722425..56c5bed 100644
--- a/glslang_revision
+++ b/glslang_revision
@@ -1 +1 @@
-c3869fee412a90c4eadea0bf936ab2530d2dff51
+d99524197f3b68dbd6267bd3f4d7e8a0f49167b4
diff --git a/spirv-tools_revision b/spirv-tools_revision
index dcf6926..9a829b9 100644
--- a/spirv-tools_revision
+++ b/spirv-tools_revision
@@ -1 +1 @@
-6836e17f243eebfc4a2950faee49ed3a0015b20b
+469f0e8fd53b527ad410c46bf18eee327c9256a3
