--- a/tools/polly/lib/ScheduleOptimizer.cpp	2013/06/23 01:29:29	184655
+++ b/tools/polly/lib/ScheduleOptimizer.cpp	2014/01/26 19:36:28	200155
@@ -396,7 +396,7 @@
       isl_band_list_free(Children);
     } else if (PollyVectorizerChoice != VECTORIZER_NONE) {
       for (int j = 0; j < isl_band_n_member(Band); j++) {
-        if (isl_band_member_is_zero_distance(Band, j)) {
+        if (isl_band_member_is_coincident(Band, j)) {
           isl_map *TileMap;
           isl_union_map *TileUMap;
 
@@ -514,8 +514,17 @@
   isl_options_set_schedule_max_coefficient(S.getIslCtx(), MaxCoefficient);
 
   isl_options_set_on_error(S.getIslCtx(), ISL_ON_ERROR_CONTINUE);
+
+  isl_schedule_constraints *ScheduleConstraints;
+  ScheduleConstraints = isl_schedule_constraints_on_domain(Domain);
+  ScheduleConstraints =
+      isl_schedule_constraints_set_proximity(ScheduleConstraints, Proximity);
+  ScheduleConstraints = isl_schedule_constraints_set_validity(
+      ScheduleConstraints, isl_union_map_copy(Validity));
+  ScheduleConstraints =
+      isl_schedule_constraints_set_coincidence(ScheduleConstraints, Validity);
   isl_schedule *Schedule;
-  Schedule = isl_union_set_compute_schedule(Domain, Validity, Proximity);
+  Schedule = isl_schedule_constraints_compute_schedule(ScheduleConstraints);
   isl_options_set_on_error(S.getIslCtx(), ISL_ON_ERROR_ABORT);
 
   // In cases the scheduler is not able to optimize the code, we just do not
--- a/tools/polly/lib/CodeGen/IslCodeGeneration.cpp	2014/01/26 18:51:00	200154
+++ b/tools/polly/lib/CodeGen/IslCodeGeneration.cpp	2014/01/26 19:36:28	200155
@@ -445,6 +445,8 @@
   case isl_ast_op_and_then:
   case isl_ast_op_or_else:
   case isl_ast_op_call:
+  case isl_ast_op_member:
+  case isl_ast_op_access:
     llvm_unreachable("Unsupported isl ast expression");
   case isl_ast_op_max:
   case isl_ast_op_min:
--- a/tools/polly/lib/CodeGen/CodeGeneration.cpp	2014/01/19 11:28:24	199584
+++ b/tools/polly/lib/CodeGen/CodeGeneration.cpp	2014/01/19 11:31:23	199585
@@ -801,7 +801,7 @@
   int NumberOfIterations = polly::getNumberOfIterations(LoopDomain);
   if (NumberOfIterations == -1)
     return -1;
-  return NumberOfIterations / isl_int_get_si(For->stride) + 1;
+  return NumberOfIterations / mpz_get_si(For->stride) + 1;
 }
 
 void ClastStmtCodeGen::codegenForVector(const clast_for *F) {
