diff --git a/CMakeLists.txt b/CMakeLists.txt
index ac756f556d7fc5549d9f3a791a0ae460f30abdb0..12655f78e557d185a346d0d67b4fab6064dc4e10 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -13,7 +13,7 @@ elseif(UNIX)
     add_definitions(-fPIC)
     add_definitions(-DGLSLANG_OSINCLUDE_UNIX)
 else(WIN32)
-    message("unkown platform")
+    message("unknown platform")
 endif(WIN32)
 
 if(CMAKE_COMPILER_IS_GNUCXX)
diff --git a/README.md b/README.md
index 77508774628bdffceffca78f71d8c461f4f8ab01..56bdeec95771b3118c1da730b8c220148e323d7e 100644
--- a/README.md
+++ b/README.md
@@ -103,7 +103,7 @@ class TProgram
 See `ShaderLang.h` and the usage of it in `StandAlone/StandAlone.cpp` for more
 details.
 
-### C Functional Interface (orginal)
+### C Functional Interface (orignal)
 
 This interface is in roughly the first 2/3 of `ShaderLang.h`, and referred to
 as the `Sh*()` interface, as all the entry points start `Sh`.
@@ -118,7 +118,7 @@ ShCompile(shader, compiler) -> compiler(AST) -> <back end>
 ```
 
 In practice, `ShCompile()` takes shader strings, default version, and
-warning/error and other options for controling compilation.
+warning/error and other options for controlling compilation.
 
 Testing
 -------
diff --git a/SPIRV/SPVRemapper.cpp b/SPIRV/SPVRemapper.cpp
index 965867efb0281fc7ed2225b596afaf3aa560d562..35dda17b7b8f2f62d76acb568bac968efcc47e6b 100755
--- a/SPIRV/SPVRemapper.cpp
+++ b/SPIRV/SPVRemapper.cpp
@@ -573,7 +573,7 @@ namespace spv {
             op_fn_nop);
 
         // Window size for context-sensitive canonicalization values
-        // Emperical best size from a single data set.  TODO: Would be a good tunable.
+        // Empirical best size from a single data set.  TODO: Would be a good tunable.
         // We essentially perform a little convolution around each instruction,
         // to capture the flavor of nearby code, to hopefully match to similar
         // code in other modules.
diff --git a/SPIRV/SpvBuilder.cpp b/SPIRV/SpvBuilder.cpp
index 4235f2734fe1318c8db3f569038186bed74f0522..e347fe38c47e0903d7539cbd351252a3d54f83ba 100644
--- a/SPIRV/SpvBuilder.cpp
+++ b/SPIRV/SpvBuilder.cpp
@@ -2319,7 +2319,7 @@ void Builder::simplifyAccessChainSwizzle()
 
 // To the extent any swizzling can become part of the chain
 // of accesses instead of a post operation, make it so.
-// If 'dynamic' is true, include transfering a non-static component index,
+// If 'dynamic' is true, include transferring a non-static component index,
 // otherwise, only transfer static indexes.
 //
 // Also, Boolean vectors are likely to be special.  While
diff --git a/glslang/Include/InfoSink.h b/glslang/Include/InfoSink.h
index a321ebcc1d81d48ab9f4cfa0600f89cf2035fbff..5862e5d8a5c9f54504b60c0a9f0b5ec7a936d596 100644
--- a/glslang/Include/InfoSink.h
+++ b/glslang/Include/InfoSink.h
@@ -92,7 +92,7 @@ public:
         case EPrefixInternalError: append("INTERNAL ERROR: "); break;
         case EPrefixUnimplemented: append("UNIMPLEMENTED: ");  break;
         case EPrefixNote:          append("NOTE: ");           break;
-        default:                   append("UNKOWN ERROR: ");   break;
+        default:                   append("UNKNOWN ERROR: ");   break;
         }
     }
     void location(const TSourceLoc& loc) {
diff --git a/glslang/Include/PoolAlloc.h b/glslang/Include/PoolAlloc.h
index de41053f60872cec17329b5fbd48437ba3bf44dc..c3bebc6317e1afd208ec160eedfaa14aff5a52b3 100644
--- a/glslang/Include/PoolAlloc.h
+++ b/glslang/Include/PoolAlloc.h
@@ -95,7 +95,7 @@ public:
 
     void checkAllocList() const;
 
-    // Return total size needed to accomodate user buffer of 'size',
+    // Return total size needed to accommodate user buffer of 'size',
     // plus our tracking data.
     inline static size_t allocationSize(size_t size) {
         return size + 2 * guardBlockSize + headerSize();
@@ -241,8 +241,8 @@ protected:
     int numCalls;           // just an interesting statistic
     size_t totalBytes;      // just an interesting statistic
 private:
-    TPoolAllocator& operator=(const TPoolAllocator&);  // dont allow assignment operator
-    TPoolAllocator(const TPoolAllocator&);  // dont allow default copy constructor
+    TPoolAllocator& operator=(const TPoolAllocator&);  // don't allow assignment operator
+    TPoolAllocator(const TPoolAllocator&);  // don't allow default copy constructor
 };
 
 
diff --git a/glslang/OSDependent/Unix/ossource.cpp b/glslang/OSDependent/Unix/ossource.cpp
index 5ce882ab6ae8369e8f1b00b1c19d9247b6fc1872..3bd725eafddc273e56dccd3b1e8b3917706557cb 100644
--- a/glslang/OSDependent/Unix/ossource.cpp
+++ b/glslang/OSDependent/Unix/ossource.cpp
@@ -61,7 +61,7 @@ static void DetachThreadLinux(void *)
 
 
 //
-// Registers cleanup handler, sets cancel type and state, and excecutes the thread specific
+// Registers cleanup handler, sets cancel type and state, and executes the thread specific
 // cleanup handler.  This function will be called in the Standalone.cpp for regression 
 // testing.  When OpenGL applications are run with the driver code, Linux OS does the 
 // thread cleanup.