diff --git a/README.chromium b/README.chromium
index 1a4f19dcf30832e6644ee8d72eb9d6e1249f3d09..ddf84920126b294124cb3571524fc444ae30b406 100644
--- a/README.chromium
+++ b/README.chromium
@@ -1,6 +1,6 @@
 Name: libyuv
 URL: http://code.google.com/p/libyuv/
-Version: 1563
+Version: 1564
 License: BSD
 License File: LICENSE
 
diff --git a/include/libyuv/version.h b/include/libyuv/version.h
index 72958db3a1cd08a8828563ca66dbeb356af82137..218b3832b0ffc0880f953f650e1b58de338b98ba 100644
--- a/include/libyuv/version.h
+++ b/include/libyuv/version.h
@@ -11,6 +11,6 @@
 #ifndef INCLUDE_LIBYUV_VERSION_H_  // NOLINT
 #define INCLUDE_LIBYUV_VERSION_H_
 
-#define LIBYUV_VERSION 1563
+#define LIBYUV_VERSION 1564
 
 #endif  // INCLUDE_LIBYUV_VERSION_H_  NOLINT
diff --git a/unit_test/rotate_argb_test.cc b/unit_test/rotate_argb_test.cc
index d557a19b367e2050b8039414c282f30aab025c40..24640800a195d0866e28cfa4ac0b031ff814ee69 100644
--- a/unit_test/rotate_argb_test.cc
+++ b/unit_test/rotate_argb_test.cc
@@ -98,62 +98,34 @@ static void ARGBTestRotate(int src_width, int src_height,
                 disable_cpu_flags, benchmark_cpu_info, 4);
 }
 
-TEST_F(LibYUVRotateTest, ARGBRotate0) {
+TEST_F(LibYUVRotateTest, ARGBRotate0_Opt) {
   ARGBTestRotate(benchmark_width_, benchmark_height_,
                  benchmark_width_, benchmark_height_,
                  kRotate0, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, ARGBRotate90) {
+TEST_F(LibYUVRotateTest, ARGBRotate90_Opt) {
   ARGBTestRotate(benchmark_width_, benchmark_height_,
                  benchmark_height_, benchmark_width_,
                  kRotate90, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, ARGBRotate180) {
+TEST_F(LibYUVRotateTest, ARGBRotate180_Opt) {
   ARGBTestRotate(benchmark_width_, benchmark_height_,
                  benchmark_width_, benchmark_height_,
                  kRotate180, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, ARGBRotate270) {
+TEST_F(LibYUVRotateTest, ARGBRotate270_Opt) {
   ARGBTestRotate(benchmark_width_, benchmark_height_,
                  benchmark_height_, benchmark_width_,
                  kRotate270, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, ARGBRotate0_Odd) {
-  ARGBTestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
-                 benchmark_width_ - 3, benchmark_height_ - 1,
-                 kRotate0, benchmark_iterations_,
-                 disable_cpu_flags_, benchmark_cpu_info_);
-}
-
-TEST_F(LibYUVRotateTest, ARGBRotate90_Odd) {
-  ARGBTestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
-                 benchmark_height_ - 1, benchmark_width_ - 3,
-                 kRotate90, benchmark_iterations_,
-                 disable_cpu_flags_, benchmark_cpu_info_);
-}
-
-TEST_F(LibYUVRotateTest, ARGBRotate180_Odd) {
-  ARGBTestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
-                 benchmark_width_ - 3, benchmark_height_ - 1,
-                 kRotate180, benchmark_iterations_,
-                 disable_cpu_flags_, benchmark_cpu_info_);
-}
-
-TEST_F(LibYUVRotateTest, ARGBRotate270_Odd) {
-  ARGBTestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
-                 benchmark_height_ - 1, benchmark_width_ - 3,
-                 kRotate270, benchmark_iterations_,
-                 disable_cpu_flags_, benchmark_cpu_info_);
-}
-
 static void TestRotatePlane(int src_width, int src_height,
                             int dst_width, int dst_height,
                             libyuv::RotationMode mode,
@@ -166,56 +138,56 @@ static void TestRotatePlane(int src_width, int src_height,
                 disable_cpu_flags, benchmark_cpu_info, 1);
 }
 
-TEST_F(LibYUVRotateTest, RotatePlane0) {
+TEST_F(LibYUVRotateTest, RotatePlane0_Opt) {
   TestRotatePlane(benchmark_width_, benchmark_height_,
                   benchmark_width_, benchmark_height_,
                   kRotate0, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, RotatePlane90) {
+TEST_F(LibYUVRotateTest, RotatePlane90_Opt) {
   TestRotatePlane(benchmark_width_, benchmark_height_,
                   benchmark_height_, benchmark_width_,
                   kRotate90, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, RotatePlane180) {
+TEST_F(LibYUVRotateTest, RotatePlane180_Opt) {
   TestRotatePlane(benchmark_width_, benchmark_height_,
                   benchmark_width_, benchmark_height_,
                   kRotate180, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, RotatePlane270) {
+TEST_F(LibYUVRotateTest, RotatePlane270_Opt) {
   TestRotatePlane(benchmark_width_, benchmark_height_,
                   benchmark_height_, benchmark_width_,
                   kRotate270, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, RotatePlane0_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_RotatePlane0_Odd) {
   TestRotatePlane(benchmark_width_ - 3, benchmark_height_ - 1,
                   benchmark_width_ - 3, benchmark_height_ - 1,
                   kRotate0, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, RotatePlane90_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_RotatePlane90_Odd) {
   TestRotatePlane(benchmark_width_ - 3, benchmark_height_ - 1,
                   benchmark_height_ - 1, benchmark_width_ - 3,
                   kRotate90, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, RotatePlane180_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_RotatePlane180_Odd) {
   TestRotatePlane(benchmark_width_ - 3, benchmark_height_ - 1,
                   benchmark_width_ - 3, benchmark_height_ - 1,
                   kRotate180, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, RotatePlane270_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_RotatePlane270_Odd) {
   TestRotatePlane(benchmark_width_ - 3, benchmark_height_ - 1,
                   benchmark_height_ - 1, benchmark_width_ - 3,
                   kRotate270, benchmark_iterations_,
diff --git a/unit_test/rotate_test.cc b/unit_test/rotate_test.cc
index c97cc208bb4c401d6f610c553020f78bce8dbdc4..b7957aa96118d45514da094a352364393e8efbca 100644
--- a/unit_test/rotate_test.cc
+++ b/unit_test/rotate_test.cc
@@ -83,56 +83,59 @@ static void I420TestRotate(int src_width, int src_height,
   free_aligned_buffer_64(src_i420);
 }
 
-TEST_F(LibYUVRotateTest, I420Rotate0) {
+TEST_F(LibYUVRotateTest, I420Rotate0_Opt) {
   I420TestRotate(benchmark_width_, benchmark_height_,
                  benchmark_width_, benchmark_height_,
                  kRotate0, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, I420Rotate90) {
+TEST_F(LibYUVRotateTest, I420Rotate90_Opt) {
   I420TestRotate(benchmark_width_, benchmark_height_,
                  benchmark_height_, benchmark_width_,
                  kRotate90, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, I420Rotate180) {
+TEST_F(LibYUVRotateTest, I420Rotate180_Opt) {
   I420TestRotate(benchmark_width_, benchmark_height_,
                  benchmark_width_, benchmark_height_,
                  kRotate180, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, I420Rotate270) {
+TEST_F(LibYUVRotateTest, I420Rotate270_Opt) {
   I420TestRotate(benchmark_width_, benchmark_height_,
                  benchmark_height_, benchmark_width_,
                  kRotate270, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, I420Rotate0_Odd) {
+// TODO(fbarchard): Remove odd width tests.
+// Odd width tests work but disabled because they use C code and can be
+// tested by passing an odd width command line or environment variable.
+TEST_F(LibYUVRotateTest, DISABLED_I420Rotate0_Odd) {
   I420TestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
                  benchmark_width_ - 3, benchmark_height_ - 1,
                  kRotate0, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, I420Rotate90_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_I420Rotate90_Odd) {
   I420TestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
                  benchmark_height_ - 1, benchmark_width_ - 3,
                  kRotate90, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, I420Rotate180_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_I420Rotate180_Odd) {
   I420TestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
                  benchmark_width_ - 3, benchmark_height_ - 1,
                  kRotate180, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, I420Rotate270_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_I420Rotate270_Odd) {
   I420TestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
                  benchmark_height_ - 1, benchmark_width_ - 3,
                  kRotate270, benchmark_iterations_,
@@ -203,56 +206,56 @@ static void NV12TestRotate(int src_width, int src_height,
   free_aligned_buffer_64(src_nv12);
 }
 
-TEST_F(LibYUVRotateTest, NV12Rotate0) {
+TEST_F(LibYUVRotateTest, NV12Rotate0_Opt) {
   NV12TestRotate(benchmark_width_, benchmark_height_,
                  benchmark_width_, benchmark_height_,
                  kRotate0, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, NV12Rotate90) {
+TEST_F(LibYUVRotateTest, NV12Rotate90_Opt) {
   NV12TestRotate(benchmark_width_, benchmark_height_,
                  benchmark_height_, benchmark_width_,
                  kRotate90, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, NV12Rotate180) {
+TEST_F(LibYUVRotateTest, NV12Rotate180_Opt) {
   NV12TestRotate(benchmark_width_, benchmark_height_,
                  benchmark_width_, benchmark_height_,
                  kRotate180, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, NV12Rotate270) {
+TEST_F(LibYUVRotateTest, NV12Rotate270_Opt) {
   NV12TestRotate(benchmark_width_, benchmark_height_,
                  benchmark_height_, benchmark_width_,
                  kRotate270, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, NV12Rotate0_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_NV12Rotate0_Odd) {
   NV12TestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
                  benchmark_width_ - 3, benchmark_height_ - 1,
                  kRotate0, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, NV12Rotate90_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_NV12Rotate90_Odd) {
   NV12TestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
                  benchmark_height_ - 1, benchmark_width_ - 3,
                  kRotate90, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, NV12Rotate180_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_NV12Rotate180_Odd) {
   NV12TestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
                  benchmark_width_ - 3, benchmark_height_ - 1,
                  kRotate180, benchmark_iterations_,
                  disable_cpu_flags_, benchmark_cpu_info_);
 }
 
-TEST_F(LibYUVRotateTest, NV12Rotate270_Odd) {
+TEST_F(LibYUVRotateTest, DISABLED_NV12Rotate270_Odd) {
   NV12TestRotate(benchmark_width_ - 3, benchmark_height_ - 1,
                  benchmark_height_ - 1, benchmark_width_ - 3,
                  kRotate270, benchmark_iterations_,