diff --git a/libFDK/src/dct.cpp b/libFDK/src/dct.cpp
index 3c755bd..1e5b93e 100644
--- a/libFDK/src/dct.cpp
+++ b/libFDK/src/dct.cpp
@@ -324,12 +324,12 @@
   {
     FIXP_DBL *RESTRICT pDat_0 = &pDat[0];
     FIXP_DBL *RESTRICT pDat_1 = &pDat[L - 2];
-    register int i;
+    int i;
 
     /* 29 cycles on ARM926 */
     for (i = 0; i < M-1; i+=2,pDat_0+=2,pDat_1-=2)
     {
-      register FIXP_DBL accu1,accu2,accu3,accu4;
+      FIXP_DBL accu1,accu2,accu3,accu4;
 
       accu1 = pDat_1[1]; accu2 = pDat_0[0];
       accu3 = pDat_0[1]; accu4 = pDat_1[0];
@@ -342,7 +342,7 @@
     }
     if (M&1)
     {
-      register FIXP_DBL accu1,accu2;
+      FIXP_DBL accu1,accu2;
 
       accu1 = pDat_1[1]; accu2 = pDat_0[0];
 
@@ -363,7 +363,7 @@
   {
     FIXP_DBL *RESTRICT pDat_0 = &pDat[0];
     FIXP_DBL *RESTRICT pDat_1 = &pDat[L - 2];
-    register FIXP_DBL accu1,accu2,accu3,accu4;
+    FIXP_DBL accu1,accu2,accu3,accu4;
     int idx, i;
 
     /* Sin and Cos values are 0.0f and 1.0f */
@@ -450,12 +450,12 @@
     FIXP_DBL *RESTRICT pDat_0 = &pDat[0];
     FIXP_DBL *RESTRICT pDat_1 = &pDat[L - 2];
 
-    register int i;
+    int i;
 
     /* 34 cycles on ARM926 */
     for (i = 0; i < M-1; i+=2,pDat_0+=2,pDat_1-=2)
     {
-      register FIXP_DBL accu1,accu2,accu3,accu4;
+      FIXP_DBL accu1,accu2,accu3,accu4;
 
       accu1 =  pDat_1[1]; accu2 = -pDat_0[0];
       accu3 =  pDat_0[1]; accu4 = -pDat_1[0];
@@ -468,7 +468,7 @@
     }
     if (M&1)
     {
-      register FIXP_DBL accu1,accu2;
+      FIXP_DBL accu1,accu2;
 
       accu1 =  pDat_1[1]; accu2 = -pDat_0[0];
 
@@ -488,7 +488,7 @@
   {
     FIXP_DBL *RESTRICT pDat_0;
     FIXP_DBL *RESTRICT pDat_1;
-    register FIXP_DBL accu1,accu2,accu3,accu4;
+    FIXP_DBL accu1,accu2,accu3,accu4;
     int idx, i;
 
     pDat_0 = &pDat[0];
diff --git a/libSBRdec/src/env_calc.cpp b/libSBRdec/src/env_calc.cpp
index fa5330a..73bd7ba 100644
--- a/libSBRdec/src/env_calc.cpp
+++ b/libSBRdec/src/env_calc.cpp
@@ -2031,7 +2031,7 @@
   FIXP_SGL direct_ratio = /*FL2FXCONST_SGL(1.0f) */ (FIXP_SGL)MAXVAL_SGL - smooth_ratio;
   int    index = *ptrPhaseIndex;
   UCHAR   harmIndex = *ptrHarmIndex;
-  register int freqInvFlag = (lowSubband & 1);
+  int freqInvFlag = (lowSubband & 1);
   FIXP_DBL sineLevel;
   int shift;
 
