[PATCH] ScopDetection: Only detect scops that have at least one read and one write

Johannes Doerfert doerfert at cs.uni-saarland.de
Thu Feb 19 06:21:31 PST 2015


Hey Tobias,

do you kow how much we actually gain by your change? Why shouldn't we
keep (and delete) SCoPs that have no stores (or at least delete the
loads and let the other passes delete the rest)? Why shouldn't we look at
generating memset intrinsics for loops that only write?

Regarding the patch, could you please comment your member variables
(even though it's pretty obvious).

--
  Johannes

On 02/18, Tobias Grosser wrote:
> Hi jdoerfert, sebpop, dpeixott, simbuerg,
> 
> Scops that only read seem generally uninteresting and scops that only write are
> most likely initializations where there is also little to optimize.  To not
> waste compile time we bail early.
> 
> http://reviews.llvm.org/D7735
> 
> Files:
>   include/polly/ScopDetection.h
>   include/polly/ScopDetectionDiagnostic.h
>   lib/Analysis/ScopDetection.cpp
>   lib/Analysis/ScopDetectionDiagnostic.cpp
>   test/CodePreparation/if_condition.ll
>   test/CodePreparation/multiple_loops_trivial_phis.ll
>   test/CodePreparation/single_loop_trivial_phi.ll
>   test/DeadCodeElimination/chained_iterations.ll
>   test/DeadCodeElimination/chained_iterations_2.ll
>   test/DeadCodeElimination/computeout.ll
>   test/DeadCodeElimination/dead_iteration_elimination.ll
>   test/DeadCodeElimination/non-affine-affine-mix.ll
>   test/DeadCodeElimination/non-affine.ll
>   test/DeadCodeElimination/null_schedule.ll
>   test/Dependences/computeout.ll
>   test/Dependences/do_pluto_matmult.ll
>   test/Dependences/reduction_complex_location.ll
>   test/Dependences/reduction_dependences_equal_non_reduction_dependences.ll
>   test/Dependences/reduction_mixed_reduction_and_non_reduction_dependences.ll
>   test/Dependences/reduction_multiple_loops_array_sum.ll
>   test/Dependences/reduction_multiple_loops_array_sum_2.ll
>   test/Dependences/reduction_multiple_loops_array_sum_3.ll
>   test/Dependences/reduction_multiple_reductions.ll
>   test/Dependences/reduction_multiple_reductions_2.ll
>   test/Dependences/reduction_only_reduction_like_access.ll
>   test/Dependences/reduction_partially_escaping_intermediate_in_other_stmt.ll
>   test/Dependences/reduction_privatization_deps.ll
>   test/Dependences/reduction_privatization_deps_2.ll
>   test/Dependences/reduction_privatization_deps_3.ll
>   test/Dependences/reduction_privatization_deps_4.ll
>   test/Dependences/reduction_privatization_deps_5.ll
>   test/Dependences/reduction_simple_iv.ll
>   test/Dependences/reduction_simple_iv_debug_wrapped_dependences.ll
>   test/Dependences/reduction_simple_privatization_deps_2.ll
>   test/Dependences/reduction_simple_privatization_deps_w_parameter.ll
>   test/Dependences/reduction_two_reductions_different_rloops.ll
>   test/Dependences/sequential_loops.ll
>   test/IndependentBlocks/inter_bb_scalar_dep.ll
>   test/IndependentBlocks/intra_and_inter_bb_scalar_dep.ll
>   test/IndependentBlocks/intra_bb_scalar_dep.ll
>   test/IndependentBlocks/phi_outside_scop.ll
>   test/IndependentBlocks/scalar_to_array.ll
>   test/IndependentBlocks/scev-invalidated.ll
>   test/Isl/Ast/OpenMP/multiple_loops_outer_parallel.ll
>   test/Isl/Ast/OpenMP/nested_loop_both_parallel.ll
>   test/Isl/Ast/OpenMP/nested_loop_both_parallel_parametric.ll
>   test/Isl/Ast/OpenMP/nested_loop_inner_parallel.ll
>   test/Isl/Ast/OpenMP/nested_loop_outer_parallel.ll
>   test/Isl/Ast/OpenMP/single_loop_param_non_parallel.ll
>   test/Isl/Ast/OpenMP/single_loop_param_parallel.ll
>   test/Isl/Ast/OpenMP/single_loop_param_parallel_computeout.ll
>   test/Isl/Ast/alias_simple_1.ll
>   test/Isl/Ast/alias_simple_2.ll
>   test/Isl/Ast/alias_simple_3.ll
>   test/Isl/Ast/aliasing_multiple_alias_groups.ll
>   test/Isl/Ast/aliasing_parametric_simple_1.ll
>   test/Isl/Ast/aliasing_parametric_simple_2.ll
>   test/Isl/Ast/dependence_distance_constant.ll
>   test/Isl/Ast/dependence_distance_multiple_constant.ll
>   test/Isl/Ast/dependence_distance_parametric.ll
>   test/Isl/Ast/dependence_distance_parametric_expr.ll
>   test/Isl/Ast/dependence_distance_varying.ll
>   test/Isl/Ast/dependence_distance_varying_in_outer_loop.ll
>   test/Isl/Ast/dependence_distance_varying_multiple.ll
>   test/Isl/Ast/reduction_clauses_multidimensional_access.ll
>   test/Isl/Ast/reduction_clauses_onedimensional_access.ll
>   test/Isl/Ast/reduction_dependences_equal_non_reduction_dependences.ll
>   test/Isl/Ast/reduction_different_reduction_clauses.ll
>   test/Isl/Ast/reduction_in_one_dimension.ll
>   test/Isl/Ast/reduction_loop_reversal.ll
>   test/Isl/Ast/reduction_modulo_and_loop_reversal_schedule.ll
>   test/Isl/Ast/reduction_modulo_and_loop_reversal_schedule_2.ll
>   test/Isl/Ast/reduction_modulo_schedule.ll
>   test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions.ll
>   test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_2.ll
>   test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_3.ll
>   test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_4.ll
>   test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_5.ll
>   test/Isl/Ast/reduction_multiple_dimensions.ll
>   test/Isl/Ast/reduction_multiple_dimensions_2.ll
>   test/Isl/Ast/reduction_multiple_dimensions_3.ll
>   test/Isl/Ast/reduction_multiple_dimensions_4.ll
>   test/Isl/Ast/run-time-condition.ll
>   test/Isl/Ast/simple-run-time-condition.ll
>   test/Isl/Ast/single_loop_strip_mine.ll
>   test/Isl/CodeGen/20100617.ll
>   test/Isl/CodeGen/20100622.ll
>   test/Isl/CodeGen/20100707.ll
>   test/Isl/CodeGen/20100707_2.ll
>   test/Isl/CodeGen/20100708.ll
>   test/Isl/CodeGen/20100708_2.ll
>   test/Isl/CodeGen/20100713.ll
>   test/Isl/CodeGen/20100713_2.ll
>   test/Isl/CodeGen/20100717.ll
>   test/Isl/CodeGen/20100718-DomInfo-2.ll
>   test/Isl/CodeGen/20100718-DomInfo.ll
>   test/Isl/CodeGen/20100720-MultipleConditions.ll
>   test/Isl/CodeGen/20100809-IndependentBlock.ll
>   test/Isl/CodeGen/20100811-ScalarDependencyBetweenBrAndCnd.ll
>   test/Isl/CodeGen/20101030-Overflow.ll
>   test/Isl/CodeGen/20101103-Overflow3.ll
>   test/Isl/CodeGen/20101103-signmissmatch.ll
>   test/Isl/CodeGen/20110226-Ignore-Dead-Code.ll
>   test/Isl/CodeGen/20110226-PHI-Node-removed.ll
>   test/Isl/CodeGen/20110312-Fail-without-basicaa.ll
>   test/Isl/CodeGen/20120316-InvalidCast.ll
>   test/Isl/CodeGen/20120403-RHS-type-mismatch.ll
>   test/Isl/CodeGen/20130211-getNumberOfIterations.ll
>   test/Isl/CodeGen/20130221.ll
>   test/Isl/CodeGen/LoopParallelMD/do_not_mutate_debug_info.ll
>   test/Isl/CodeGen/LoopParallelMD/loop_nest_param_parallel.ll
>   test/Isl/CodeGen/LoopParallelMD/single_loop_param_parallel.ll
>   test/Isl/CodeGen/MemAccess/bad_alignment.ll
>   test/Isl/CodeGen/MemAccess/codegen_constant_offset.ll
>   test/Isl/CodeGen/MemAccess/codegen_simple.ll
>   test/Isl/CodeGen/MemAccess/codegen_simple_float.ll
>   test/Isl/CodeGen/MemAccess/codegen_simple_md.ll
>   test/Isl/CodeGen/MemAccess/codegen_simple_md_float.ll
>   test/Isl/CodeGen/MemAccess/default_aligned_new_access_function.ll
>   test/Isl/CodeGen/MemAccess/simple.ll
>   test/Isl/CodeGen/MemAccess/simple_analyze.ll
>   test/Isl/CodeGen/MemAccess/simple_stride_test.ll
>   test/Isl/CodeGen/OpenMP/loop-body-references-outer-iv.ll
>   test/Isl/CodeGen/OpenMP/loop-body-references-outer-values-2.ll
>   test/Isl/CodeGen/OpenMP/loop-body-references-outer-values-3.ll
>   test/Isl/CodeGen/OpenMP/loop-body-references-outer-values.ll
>   test/Isl/CodeGen/OpenMP/loop-bounds-reference-outer-ids.ll
>   test/Isl/CodeGen/OpenMP/reference-other-bb.ll
>   test/Isl/CodeGen/OpenMP/reference-preceeding-loop.ll
>   test/Isl/CodeGen/OpenMP/single_loop.ll
>   test/Isl/CodeGen/OpenMP/single_loop_with_loop_invariant_baseptr.ll
>   test/Isl/CodeGen/OpenMP/two-parallel-loops-reference-outer-indvar.ll
>   test/Isl/CodeGen/PHIInExit.ll
>   test/Isl/CodeGen/aliasing_different_base_and_access_type.ll
>   test/Isl/CodeGen/aliasing_different_pointer_types.ll
>   test/Isl/CodeGen/aliasing_multidimensional_access.ll
>   test/Isl/CodeGen/aliasing_parametric_simple_1.ll
>   test/Isl/CodeGen/aliasing_parametric_simple_2.ll
>   test/Isl/CodeGen/aliasing_struct_element.ll
>   test/Isl/CodeGen/alignment.ll
>   test/Isl/CodeGen/annotated_alias_scopes.ll
>   test/Isl/CodeGen/blas_sscal_simplified.ll
>   test/Isl/CodeGen/constant_condition.ll
>   test/Isl/CodeGen/create-conditional-scop.ll
>   test/Isl/CodeGen/debug-intrinsics.ll
>   test/Isl/CodeGen/intrinsics_lifetime.ll
>   test/Isl/CodeGen/intrinsics_misc.ll
>   test/Isl/CodeGen/loop_with_condition.ll
>   test/Isl/CodeGen/loop_with_condition_2.ll
>   test/Isl/CodeGen/loop_with_condition_ineq.ll
>   test/Isl/CodeGen/loop_with_condition_nested.ll
>   test/Isl/CodeGen/loop_with_conditional_entry_edge_splited_hard_case.ll
>   test/Isl/CodeGen/multidim_2d_parametric_array_static_loop_bounds.ll
>   test/Isl/CodeGen/multidim_alias_check.ll
>   test/Isl/CodeGen/no_guard_bb.ll
>   test/Isl/CodeGen/openmp_limit_threads.ll
>   test/Isl/CodeGen/pointer-type-expressions-2.ll
>   test/Isl/CodeGen/pointer-type-expressions.ll
>   test/Isl/CodeGen/pointer-type-pointer-type-comparison.ll
>   test/Isl/CodeGen/reduction.ll
>   test/Isl/CodeGen/reduction_2.ll
>   test/Isl/CodeGen/reduction_simple_binary.ll
>   test/Isl/CodeGen/run-time-condition-with-scev-parameters.ll
>   test/Isl/CodeGen/run-time-condition.ll
>   test/Isl/CodeGen/scalar-references-used-in-scop-compute.ll
>   test/Isl/CodeGen/scev.ll
>   test/Isl/CodeGen/scop_never_executed_runtime_check_location.ll
>   test/Isl/CodeGen/sequential_loops.ll
>   test/Isl/CodeGen/simple_loop_non_single_exit.ll
>   test/Isl/CodeGen/simple_loop_non_single_exit_2.ll
>   test/Isl/CodeGen/simple_non_single_entry.ll
>   test/Isl/CodeGen/simple_nonaffine_loop.ll
>   test/Isl/CodeGen/simple_vec_assign_scalar.ll
>   test/Isl/CodeGen/simple_vec_assign_scalar_2.ll
>   test/Isl/CodeGen/simple_vec_call.ll
>   test/Isl/CodeGen/simple_vec_call_2.ll
>   test/Isl/CodeGen/simple_vec_cast.ll
>   test/Isl/CodeGen/simple_vec_const.ll
>   test/Isl/CodeGen/simple_vec_large_width.ll
>   test/Isl/CodeGen/simple_vec_ptr_ptr_ty.ll
>   test/Isl/CodeGen/simple_vec_stride_negative_one.ll
>   test/Isl/CodeGen/simple_vec_stride_x.ll
>   test/Isl/CodeGen/simple_vec_two_stmts.ll
>   test/Isl/CodeGen/single_do_loop_int_max_iterations.ll
>   test/Isl/CodeGen/single_do_loop_int_param_iterations.ll
>   test/Isl/CodeGen/single_do_loop_ll_max_iterations.ll
>   test/Isl/CodeGen/single_do_loop_one_iteration.ll
>   test/Isl/CodeGen/single_do_loop_scev_replace.ll
>   test/Isl/CodeGen/single_loop.ll
>   test/Isl/CodeGen/single_loop_int_max_iterations.ll
>   test/Isl/CodeGen/single_loop_ll_max_iterations.ll
>   test/Isl/CodeGen/single_loop_one_iteration.ll
>   test/Isl/CodeGen/single_loop_param.ll
>   test/Isl/CodeGen/single_loop_zero_iterations.ll
>   test/Isl/CodeGen/split_edges.ll
>   test/Isl/CodeGen/split_edges_2.ll
>   test/Isl/CodeGen/test-invalid-operands-for-select-2.ll
>   test/Isl/CodeGen/test-invalid-operands-for-select.ll
>   test/Isl/CodeGen/test.ll
>   test/Isl/CodeGen/two-scops-in-row.ll
>   test/Isl/single_loop_param_less_equal.ll
>   test/Isl/single_loop_param_less_than.ll
>   test/Isl/single_loop_uint_max_iterations.ll
>   test/Isl/single_loop_ull_max_iterations.ll
>   test/ScheduleOptimizer/2012-03-16-Empty-Domain.ll
>   test/ScheduleOptimizer/2012-04-16-Trivially-vectorizable-loops.ll
>   test/ScheduleOptimizer/2012-10-14-Zero-Bands.ll
>   test/ScheduleOptimizer/2013-04-11-Empty-Domain-two.ll
>   test/ScheduleOptimizer/computeout.ll
>   test/ScheduleOptimizer/line-tiling-2.ll
>   test/ScheduleOptimizer/line-tiling.ll
>   test/ScheduleOptimizer/prevectorization.ll
>   test/ScheduleOptimizer/rectangular-tiling.ll
>   test/ScopDetect/aliasing_parametric_simple_1.ll
>   test/ScopDetect/aliasing_parametric_simple_2.ll
>   test/ScopDetect/aliasing_simple_1.ll
>   test/ScopDetect/aliasing_simple_2.ll
>   test/ScopDetect/base_pointer.ll
>   test/ScopDetect/cross_loop_non_single_exit.ll
>   test/ScopDetect/cross_loop_non_single_exit_2.ll
>   test/ScopDetect/dependency_to_phi_node_outside_of_region.ll
>   test/ScopDetect/indvars.ll
>   test/ScopDetect/intrinsics_1.ll
>   test/ScopDetect/intrinsics_2.ll
>   test/ScopDetect/intrinsics_3.ll
>   test/ScopDetect/invalidate_scalar_evolution.ll
>   test/ScopDetect/keep_going_expansion.ll
>   test/ScopDetect/multidim_two_accesses_different_delinearization.ll
>   test/ScopDetect/nested_loop_single_exit.ll
>   test/ScopDetect/parametric-multiply-in-scev.ll
>   test/ScopDetect/remove_all_children.ll
>   test/ScopDetect/report-scop-location.ll
>   test/ScopDetect/run_time_alias_check.ll
>   test/ScopDetect/sequential_loops.ll
>   test/ScopDetect/simple_loop.ll
>   test/ScopDetect/simple_loop_non_single_entry.ll
>   test/ScopDetect/simple_loop_non_single_exit.ll
>   test/ScopDetect/simple_loop_non_single_exit_2.ll
>   test/ScopDetect/simple_loop_two_phi_nodes.ll
>   test/ScopDetect/simple_loop_with_param.ll
>   test/ScopDetect/simple_loop_with_param_2.ll
>   test/ScopDetect/simple_non_single_entry.ll
>   test/ScopDetect/skip_function_attribute.ll
>   test/ScopDetectionDiagnostics/ReportAlias-01.ll
>   test/ScopDetectionDiagnostics/ReportDifferentElementSize.ll
>   test/ScopDetectionDiagnostics/ReportFuncCall-01.ll
>   test/ScopDetectionDiagnostics/ReportLoopBound-01.ll
>   test/ScopDetectionDiagnostics/ReportMultipleNonAffineAccesses.ll
>   test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll
>   test/ScopDetectionDiagnostics/ReportUnprofitable.ll
>   (91 more files...)
> 
> EMAIL PREFERENCES
>   http://reviews.llvm.org/settings/panel/emailpreferences/

> Index: include/polly/ScopDetection.h
> ===================================================================
> --- include/polly/ScopDetection.h
> +++ include/polly/ScopDetection.h
> @@ -156,8 +156,12 @@
>      SetVector<const SCEVUnknown *> NonAffineAccesses;
>      BaseToElSize ElementSize;
>  
> +    bool hasLoads;
> +    bool hasStores;
> +
>      DetectionContext(Region &R, AliasAnalysis &AA, bool Verify)
> -        : CurRegion(R), AST(AA), Verifying(Verify), Log(&R) {}
> +        : CurRegion(R), AST(AA), Verifying(Verify), Log(&R), hasLoads(false),
> +          hasStores(false) {}
>    };
>  
>    // Remember the valid regions
> Index: include/polly/ScopDetectionDiagnostic.h
> ===================================================================
> --- include/polly/ScopDetectionDiagnostic.h
> +++ include/polly/ScopDetectionDiagnostic.h
> @@ -111,6 +111,7 @@
>    rrkUnknownInst,
>    rrkPHIinExit,
>    rrkEntry,
> +  rrkUnprofitable,
>    rrkLastOther
>  };
>  
> @@ -830,6 +831,24 @@
>    //@}
>  };
>  
> +//===----------------------------------------------------------------------===//
> +/// @brief Report regions that seem not profitable to be optimized.
> +class ReportUnprofitable : public ReportOther {
> +  //===--------------------------------------------------------------------===//
> +public:
> +  ReportUnprofitable();
> +
> +  /// @name LLVM-RTTI interface
> +  //@{
> +  static bool classof(const RejectReason *RR);
> +  //@}
> +
> +  /// @name RejectReason interface
> +  //@{
> +  virtual std::string getMessage() const override;
> +  //@}
> +};
> +
>  } // namespace polly
>  
>  #endif // POLLY_SCOP_DETECTION_DIAGNOSTIC_H
> Index: lib/Analysis/ScopDetection.cpp
> ===================================================================
> --- lib/Analysis/ScopDetection.cpp
> +++ lib/Analysis/ScopDetection.cpp
> @@ -84,6 +84,11 @@
>                                cl::Hidden, cl::init(false), cl::ZeroOrMore,
>                                cl::cat(PollyCategory));
>  
> +static cl::opt<bool> DetectUnprofitable("polly-detect-unprofitable",
> +                                        cl::desc("Detect unprofitable scops"),
> +                                        cl::Hidden, cl::init(false),
> +                                        cl::ZeroOrMore, cl::cat(PollyCategory));
> +
>  static cl::opt<std::string> OnlyFunction(
>      "polly-only-func",
>      cl::desc("Only run on functions that contain a certain string"),
> @@ -623,8 +628,11 @@
>    }
>  
>    // Check the access function.
> -  if (isa<LoadInst>(Inst) || isa<StoreInst>(Inst))
> +  if (isa<LoadInst>(Inst) || isa<StoreInst>(Inst)) {
> +    Context.hasStores |= isa<StoreInst>(Inst);
> +    Context.hasLoads |= isa<LoadInst>(Inst);
>      return isValidMemoryAccess(Inst, Context);
> +  }
>  
>    // We do not know this instruction, therefore we assume it is invalid.
>    return invalid<ReportUnknownInst>(Context, /*Assert=*/true, &Inst);
> @@ -868,6 +876,11 @@
>    if (!allBlocksValid(Context))
>      return false;
>  
> +  // We can probably not do a lot on scops that only write or only read
> +  // data.
> +  if (!DetectUnprofitable && (!Context.hasStores || !Context.hasLoads))
> +    invalid<ReportUnprofitable>(Context, /*Assert=*/true);
> +
>    DEBUG(dbgs() << "OK\n");
>    return true;
>  }
> Index: lib/Analysis/ScopDetectionDiagnostic.cpp
> ===================================================================
> --- lib/Analysis/ScopDetectionDiagnostic.cpp
> +++ lib/Analysis/ScopDetectionDiagnostic.cpp
> @@ -591,4 +591,16 @@
>  bool ReportEntry::classof(const RejectReason *RR) {
>    return RR->getKind() == rrkEntry;
>  }
> +
> +//===----------------------------------------------------------------------===//
> +// ReportUnprofitable.
> +ReportUnprofitable::ReportUnprofitable() : ReportOther(rrkUnprofitable) {}
> +
> +std::string ReportUnprofitable::getMessage() const {
> +  return "Region can not profitably be optimized!";
> +}
> +
> +bool ReportUnprofitable::classof(const RejectReason *RR) {
> +  return RR->getKind() == rrkUnprofitable;
> +}
>  } // namespace polly
> Index: test/CodePreparation/if_condition.ll
> ===================================================================
> --- test/CodePreparation/if_condition.ll
> +++ test/CodePreparation/if_condition.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-prepare -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-prepare -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-prepare -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-prepare -S < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/CodePreparation/multiple_loops_trivial_phis.ll
> ===================================================================
> --- test/CodePreparation/multiple_loops_trivial_phis.ll
> +++ test/CodePreparation/multiple_loops_trivial_phis.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -S -polly-prepare < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -S -polly-prepare < %s | FileCheck %s
>  ; ModuleID = 'multiple_loops_trivial_phis.ll'
>  ;
>  ; int f(int * __restrict__ A) {
> Index: test/CodePreparation/single_loop_trivial_phi.ll
> ===================================================================
> --- test/CodePreparation/single_loop_trivial_phi.ll
> +++ test/CodePreparation/single_loop_trivial_phi.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -S -polly-prepare < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -S -polly-prepare < %s | FileCheck %s
>  ; ModuleID = 'single_loop_trivial_phi.ll'
>  ;
>  ; int f(int *A, int N) {
> Index: test/DeadCodeElimination/chained_iterations.ll
> ===================================================================
> --- test/DeadCodeElimination/chained_iterations.ll
> +++ test/DeadCodeElimination/chained_iterations.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences-analysis-type=value-based -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences-analysis-type=value-based -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK-DCE
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences-analysis-type=value-based -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences-analysis-type=value-based -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK-DCE
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  ;
> Index: test/DeadCodeElimination/chained_iterations_2.ll
> ===================================================================
> --- test/DeadCodeElimination/chained_iterations_2.ll
> +++ test/DeadCodeElimination/chained_iterations_2.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences-analysis-type=value-based -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences-analysis-type=value-based -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK-DCE
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences-analysis-type=value-based -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences-analysis-type=value-based -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK-DCE
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  ;
> Index: test/DeadCodeElimination/computeout.ll
> ===================================================================
> --- test/DeadCodeElimination/computeout.ll
> +++ test/DeadCodeElimination/computeout.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt -S %loadPolly -basicaa -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> -; RUN: opt -S %loadPolly -basicaa -polly-dce -polly-ast -analyze -polly-no-early-exit -polly-dependences-computeout=1 < %s | FileCheck %s -check-prefix=TIMEOUT
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dce -polly-ast -analyze -polly-no-early-exit -polly-dependences-computeout=1 < %s | FileCheck %s -check-prefix=TIMEOUT
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/DeadCodeElimination/dead_iteration_elimination.ll
> ===================================================================
> --- test/DeadCodeElimination/dead_iteration_elimination.ll
> +++ test/DeadCodeElimination/dead_iteration_elimination.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences-analysis-type=value-based -polly-dce -polly-dce-precise-steps=2 -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences-analysis-type=value-based -polly-dce -polly-dce-precise-steps=2 -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  ;
> Index: test/DeadCodeElimination/non-affine-affine-mix.ll
> ===================================================================
> --- test/DeadCodeElimination/non-affine-affine-mix.ll
> +++ test/DeadCodeElimination/non-affine-affine-mix.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-allow-nonaffine -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-allow-nonaffine -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
>  ;
>  ;    void f(int *A) {
>  ;      for (int i = 0; i < 1024; i++)
> Index: test/DeadCodeElimination/non-affine.ll
> ===================================================================
> --- test/DeadCodeElimination/non-affine.ll
> +++ test/DeadCodeElimination/non-affine.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-allow-nonaffine -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-allow-nonaffine -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
>  ;
>  ; CHECK: for (int c0 = 0; c0 <= 1023; c0 += 1)
>  ;
> Index: test/DeadCodeElimination/null_schedule.ll
> ===================================================================
> --- test/DeadCodeElimination/null_schedule.ll
> +++ test/DeadCodeElimination/null_schedule.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences-analysis-type=value-based -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK-DCE
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences-analysis-type=value-based -polly-dce -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK-DCE
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  ; A[0] = 1;
> Index: test/Dependences/computeout.ll
> ===================================================================
> --- test/Dependences/computeout.ll
> +++ test/Dependences/computeout.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences -analyze < %s | FileCheck %s -check-prefix=VALUE
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences -analyze -polly-dependences-computeout=1 < %s | FileCheck %s -check-prefix=TIMEOUT
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze < %s | FileCheck %s -check-prefix=VALUE
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze -polly-dependences-computeout=1 < %s | FileCheck %s -check-prefix=TIMEOUT
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Dependences/do_pluto_matmult.ll
> ===================================================================
> --- test/Dependences/do_pluto_matmult.ll
> +++ test/Dependences/do_pluto_matmult.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -basicaa -polly-dependences -analyze -polly-dependences-analysis-type=value-based < %s | FileCheck %s -check-prefix=VALUE
> -; RUN: opt %loadPolly -basicaa -polly-dependences -analyze -polly-dependences-analysis-type=memory-based -polly-delinearize < %s | FileCheck %s -check-prefix=MEMORY
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze -polly-dependences-analysis-type=value-based < %s | FileCheck %s -check-prefix=VALUE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze -polly-dependences-analysis-type=memory-based -polly-delinearize < %s | FileCheck %s -check-prefix=MEMORY
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/Dependences/reduction_complex_location.ll
> ===================================================================
> --- test/Dependences/reduction_complex_location.ll
> +++ test/Dependences/reduction_complex_location.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt -basicaa %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt -basicaa %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: RAW dependences:
>  ; CHECK:   {  }
> Index: test/Dependences/reduction_dependences_equal_non_reduction_dependences.ll
> ===================================================================
> --- test/Dependences/reduction_dependences_equal_non_reduction_dependences.ll
> +++ test/Dependences/reduction_dependences_equal_non_reduction_dependences.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; This loopnest contains a reduction which imposes the same dependences as the
>  ; accesses to the array A. We need to ensure we keep the dependences of A.
> Index: test/Dependences/reduction_mixed_reduction_and_non_reduction_dependences.ll
> ===================================================================
> --- test/Dependences/reduction_mixed_reduction_and_non_reduction_dependences.ll
> +++ test/Dependences/reduction_mixed_reduction_and_non_reduction_dependences.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: RAW dependences:
>  ; CHECK-DAG: Stmt_for_body3[i0, i1] -> Stmt_for_body3[i0 + i1, o1] : i1 <= 1023 - i0 and i1 >= 0 and i1 <= 1 and i0 >= 0 and o1 <= 511 and o1 >= 1 
> Index: test/Dependences/reduction_multiple_loops_array_sum.ll
> ===================================================================
> --- test/Dependences/reduction_multiple_loops_array_sum.ll
> +++ test/Dependences/reduction_multiple_loops_array_sum.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt -basicaa %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt -basicaa %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; Verify that only the inner reduction like accesses cause reduction dependences
>  ;
> Index: test/Dependences/reduction_multiple_loops_array_sum_2.ll
> ===================================================================
> --- test/Dependences/reduction_multiple_loops_array_sum_2.ll
> +++ test/Dependences/reduction_multiple_loops_array_sum_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze -basicaa < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze -basicaa < %s | FileCheck %s
>  ;
>  ; CHECK: RAW dependences:
>  ; CHECK:   {  }
> Index: test/Dependences/reduction_multiple_loops_array_sum_3.ll
> ===================================================================
> --- test/Dependences/reduction_multiple_loops_array_sum_3.ll
> +++ test/Dependences/reduction_multiple_loops_array_sum_3.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze -basicaa < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze -basicaa < %s | FileCheck %s
>  ;
>  ; CHECK: Reduction dependences:
>  ; CHECK:   { Stmt_for_inc[i0, i1] -> Stmt_for_inc[i0, 1 + i1] : i0 <= 99 and i0 >= 0 and i1 <= 98 and i1 >= 0 }
> Index: test/Dependences/reduction_multiple_reductions.ll
> ===================================================================
> --- test/Dependences/reduction_multiple_reductions.ll
> +++ test/Dependences/reduction_multiple_reductions.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; Verify we do not have dependences between the if and the else clause
>  ;
> Index: test/Dependences/reduction_multiple_reductions_2.ll
> ===================================================================
> --- test/Dependences/reduction_multiple_reductions_2.ll
> +++ test/Dependences/reduction_multiple_reductions_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: RAW dependences:
>  ; CHECK-DAG: Stmt_S2[i0, i1] -> Stmt_S3[i0] : i0 <= 1023 and i0 >= 0 and i1 <= 1023 and i1 >= 0
> Index: test/Dependences/reduction_only_reduction_like_access.ll
> ===================================================================
> --- test/Dependences/reduction_only_reduction_like_access.ll
> +++ test/Dependences/reduction_only_reduction_like_access.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; FIXME: Change the comment once we allow different pointers
>  ; The statement is "almost" reduction like but should not yield any reduction dependences
> Index: test/Dependences/reduction_partially_escaping_intermediate_in_other_stmt.ll
> ===================================================================
> --- test/Dependences/reduction_partially_escaping_intermediate_in_other_stmt.ll
> +++ test/Dependences/reduction_partially_escaping_intermediate_in_other_stmt.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze -basicaa < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze -basicaa < %s | FileCheck %s
>  ;
>  ; CHECK: Reduction dependences:
>  ; CHECK:   [N] -> { Stmt_for_body3[i0, i1] -> Stmt_for_body3[i0, 1 + i1] : i0 <= 1023 and i0 >= 0 and i1 <= 1022 and i1 >= 0 and i1 >= 1024 - N + i0 }
> Index: test/Dependences/reduction_privatization_deps.ll
> ===================================================================
> --- test/Dependences/reduction_privatization_deps.ll
> +++ test/Dependences/reduction_privatization_deps.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK:      RAW dependences:
>  ; CHECK-DAG:    Stmt_S0[i0] -> Stmt_S1[o0, i0 - o0] : i0 <= 1023 and o0 >= 0 and o0 <= i0
> Index: test/Dependences/reduction_privatization_deps_2.ll
> ===================================================================
> --- test/Dependences/reduction_privatization_deps_2.ll
> +++ test/Dependences/reduction_privatization_deps_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; We have privatization dependences from a textually later statement to a
>  ; textually earlier one, but the dependences still go forward in time.
> Index: test/Dependences/reduction_privatization_deps_3.ll
> ===================================================================
> --- test/Dependences/reduction_privatization_deps_3.ll
> +++ test/Dependences/reduction_privatization_deps_3.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ;  CHECK: RAW dependences:
>  ;  CHECK-DAG:  Stmt_S2[i0, i1] -> Stmt_S3[o0] : o0 <= 1 and i1 <= 1 - i0 and o0 <= 1 + i0 - i1 and o0 >= 1 - i1
> Index: test/Dependences/reduction_privatization_deps_4.ll
> ===================================================================
> --- test/Dependences/reduction_privatization_deps_4.ll
> +++ test/Dependences/reduction_privatization_deps_4.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK:     RAW dependences:
>  ; CHECK-DAG:   Stmt_S2[i0, i1] -> Stmt_S1[i1] : i0 >= 0 and i1 >= 1 + i0 and i1 <= 98
> Index: test/Dependences/reduction_privatization_deps_5.ll
> ===================================================================
> --- test/Dependences/reduction_privatization_deps_5.ll
> +++ test/Dependences/reduction_privatization_deps_5.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK:     RAW dependences:
>  ; CHECK-DAG:   Stmt_S2[i0, 0] -> Stmt_S1[1 + i0, 0] : i0 >= 0 and i0 <= 97
> Index: test/Dependences/reduction_simple_iv.ll
> ===================================================================
> --- test/Dependences/reduction_simple_iv.ll
> +++ test/Dependences/reduction_simple_iv.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK:  RAW dependences:
>  ; CHECK:    {  }
> Index: test/Dependences/reduction_simple_iv_debug_wrapped_dependences.ll
> ===================================================================
> --- test/Dependences/reduction_simple_iv_debug_wrapped_dependences.ll
> +++ test/Dependences/reduction_simple_iv_debug_wrapped_dependences.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze -debug-only=polly-dependence 2>&1 < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze -debug-only=polly-dependence 2>&1 < %s | FileCheck %s
>  ;
>  ; REQUIRES: asserts
>  ;
> Index: test/Dependences/reduction_simple_privatization_deps_2.ll
> ===================================================================
> --- test/Dependences/reduction_simple_privatization_deps_2.ll
> +++ test/Dependences/reduction_simple_privatization_deps_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK:      RAW dependences:
>  ; CHECK-DAG:    Stmt_S1[i0, i1] -> Stmt_S2[i0] : i0 <= 99 and i0 >= 0 and i1 <= 99 and i1 >= 0
> Index: test/Dependences/reduction_simple_privatization_deps_w_parameter.ll
> ===================================================================
> --- test/Dependences/reduction_simple_privatization_deps_w_parameter.ll
> +++ test/Dependences/reduction_simple_privatization_deps_w_parameter.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK:      RAW dependences:
>  ; CHECK-DAG:    Stmt_S0[] -> Stmt_S1[o0] : N >= 11 and o0 <= 1023 and o0 >= 0
> Index: test/Dependences/reduction_two_reductions_different_rloops.ll
> ===================================================================
> --- test/Dependences/reduction_two_reductions_different_rloops.ll
> +++ test/Dependences/reduction_two_reductions_different_rloops.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-dependences -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: RAW dependences:
>  ; CHECK:   {  }
> Index: test/Dependences/sequential_loops.ll
> ===================================================================
> --- test/Dependences/sequential_loops.ll
> +++ test/Dependences/sequential_loops.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences -analyze -polly-dependences-analysis-type=value-based < %s | FileCheck %s -check-prefix=VALUE
> -; RUN: opt -S %loadPolly -basicaa -polly-dependences -analyze -polly-dependences-analysis-type=memory-based < %s | FileCheck %s -check-prefix=MEMORY
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze -polly-dependences-analysis-type=value-based < %s | FileCheck %s -check-prefix=VALUE
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-dependences -analyze -polly-dependences-analysis-type=memory-based < %s | FileCheck %s -check-prefix=MEMORY
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/IndependentBlocks/inter_bb_scalar_dep.ll
> ===================================================================
> --- test/IndependentBlocks/inter_bb_scalar_dep.ll
> +++ test/IndependentBlocks/inter_bb_scalar_dep.ll
> @@ -1,7 +1,7 @@
> -; RUN: opt %loadPolly -basicaa -polly-independent -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
> -; RUN: opt %loadPolly -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
>  
>  ; void f(long A[], int N, int *init_ptr) {
>  ;   long i, j;
> Index: test/IndependentBlocks/intra_and_inter_bb_scalar_dep.ll
> ===================================================================
> --- test/IndependentBlocks/intra_and_inter_bb_scalar_dep.ll
> +++ test/IndependentBlocks/intra_and_inter_bb_scalar_dep.ll
> @@ -1,7 +1,7 @@
> -; RUN: opt %loadPolly -basicaa -polly-independent -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
> -; RUN: opt %loadPolly -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
>  
>  ; void f(long A[], int N, int *init_ptr) {
>  ;   long i, j;
> Index: test/IndependentBlocks/intra_bb_scalar_dep.ll
> ===================================================================
> --- test/IndependentBlocks/intra_bb_scalar_dep.ll
> +++ test/IndependentBlocks/intra_bb_scalar_dep.ll
> @@ -1,7 +1,7 @@
> -; RUN: opt %loadPolly -basicaa -polly-independent -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s
>  
>  ; void f(long A[], int N, int *init_ptr) {
>  ;   long i, j;
> Index: test/IndependentBlocks/phi_outside_scop.ll
> ===================================================================
> --- test/IndependentBlocks/phi_outside_scop.ll
> +++ test/IndependentBlocks/phi_outside_scop.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -basicaa -polly-independent -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -S < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/IndependentBlocks/scalar_to_array.ll
> ===================================================================
> --- test/IndependentBlocks/scalar_to_array.ll
> +++ test/IndependentBlocks/scalar_to_array.ll
> @@ -1,7 +1,7 @@
> -; RUN: opt %loadPolly -basicaa -polly-independent < %s -S | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent < %s -S | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
> -; RUN: opt %loadPolly -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array < %s -S | FileCheck %s -check-prefix=SCALARACCESS
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent < %s -S | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent < %s -S | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array -S < %s | FileCheck %s -check-prefix=SCALARACCESS
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-independent -disable-polly-intra-scop-scalar-to-array < %s -S | FileCheck %s -check-prefix=SCALARACCESS
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/IndependentBlocks/scev-invalidated.ll
> ===================================================================
> --- test/IndependentBlocks/scev-invalidated.ll
> +++ test/IndependentBlocks/scev-invalidated.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-independent < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-independent < %s
>  target datalayout ="e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/Ast/OpenMP/multiple_loops_outer_parallel.ll
> ===================================================================
> --- test/Isl/Ast/OpenMP/multiple_loops_outer_parallel.ll
> +++ test/Isl/Ast/OpenMP/multiple_loops_outer_parallel.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-parallel -polly-parallel-force -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-parallel -polly-parallel-force -analyze < %s | FileCheck %s
>  ;
>  ;       void jd(int *A) {
>  ; CHECK:  #pragma omp parallel for
> Index: test/Isl/Ast/OpenMP/nested_loop_both_parallel.ll
> ===================================================================
> --- test/Isl/Ast/OpenMP/nested_loop_both_parallel.ll
> +++ test/Isl/Ast/OpenMP/nested_loop_both_parallel.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-parallel -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/Ast/OpenMP/nested_loop_both_parallel_parametric.ll
> ===================================================================
> --- test/Isl/Ast/OpenMP/nested_loop_both_parallel_parametric.ll
> +++ test/Isl/Ast/OpenMP/nested_loop_both_parallel_parametric.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-parallel -polly-parallel-force -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-parallel -polly-parallel-force -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  ; int A[1024][1024];
> Index: test/Isl/Ast/OpenMP/nested_loop_inner_parallel.ll
> ===================================================================
> --- test/Isl/Ast/OpenMP/nested_loop_inner_parallel.ll
> +++ test/Isl/Ast/OpenMP/nested_loop_inner_parallel.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-parallel -polly-parallel-force -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-parallel -polly-parallel-force -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/Ast/OpenMP/nested_loop_outer_parallel.ll
> ===================================================================
> --- test/Isl/Ast/OpenMP/nested_loop_outer_parallel.ll
> +++ test/Isl/Ast/OpenMP/nested_loop_outer_parallel.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-parallel -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/Ast/OpenMP/single_loop_param_non_parallel.ll
> ===================================================================
> --- test/Isl/Ast/OpenMP/single_loop_param_non_parallel.ll
> +++ test/Isl/Ast/OpenMP/single_loop_param_non_parallel.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-parallel -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/Ast/OpenMP/single_loop_param_parallel.ll
> ===================================================================
> --- test/Isl/Ast/OpenMP/single_loop_param_parallel.ll
> +++ test/Isl/Ast/OpenMP/single_loop_param_parallel.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-parallel -polly-parallel-force -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-parallel -polly-parallel-force -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/Ast/OpenMP/single_loop_param_parallel_computeout.ll
> ===================================================================
> --- test/Isl/Ast/OpenMP/single_loop_param_parallel_computeout.ll
> +++ test/Isl/Ast/OpenMP/single_loop_param_parallel_computeout.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-parallel -polly-dependences-computeout=1 -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-parallel -polly-dependences-computeout=1 -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/Ast/alias_simple_1.ll
> ===================================================================
> --- test/Isl/Ast/alias_simple_1.ll
> +++ test/Isl/Ast/alias_simple_1.ll
> @@ -1,8 +1,8 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s --check-prefix=NOAA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -basicaa < %s | FileCheck %s --check-prefix=BASI
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -tbaa < %s | FileCheck %s --check-prefix=TBAA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -scev-aa < %s | FileCheck %s --check-prefix=SCEV
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -globalsmodref-aa < %s | FileCheck %s --check-prefix=GLOB
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s --check-prefix=NOAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -basicaa < %s | FileCheck %s --check-prefix=BASI
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -tbaa < %s | FileCheck %s --check-prefix=TBAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -scev-aa < %s | FileCheck %s --check-prefix=SCEV
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -globalsmodref-aa < %s | FileCheck %s --check-prefix=GLOB
>  ;
>  ;    int A[1024];
>  ;
> Index: test/Isl/Ast/alias_simple_2.ll
> ===================================================================
> --- test/Isl/Ast/alias_simple_2.ll
> +++ test/Isl/Ast/alias_simple_2.ll
> @@ -1,8 +1,8 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s --check-prefix=NOAA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -basicaa < %s | FileCheck %s --check-prefix=BASI
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -tbaa < %s | FileCheck %s --check-prefix=TBAA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -scev-aa < %s | FileCheck %s --check-prefix=SCEV
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -globalsmodref-aa < %s | FileCheck %s --check-prefix=GLOB
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s --check-prefix=NOAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -basicaa < %s | FileCheck %s --check-prefix=BASI
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -tbaa < %s | FileCheck %s --check-prefix=TBAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -scev-aa < %s | FileCheck %s --check-prefix=SCEV
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -globalsmodref-aa < %s | FileCheck %s --check-prefix=GLOB
>  ;
>  ;    int A[1024], B[1024];
>  ;
> Index: test/Isl/Ast/alias_simple_3.ll
> ===================================================================
> --- test/Isl/Ast/alias_simple_3.ll
> +++ test/Isl/Ast/alias_simple_3.ll
> @@ -1,8 +1,8 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s --check-prefix=NOAA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -basicaa < %s | FileCheck %s --check-prefix=BASI
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -tbaa < %s | FileCheck %s --check-prefix=TBAA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -scev-aa < %s | FileCheck %s --check-prefix=SCEV
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -globalsmodref-aa < %s | FileCheck %s --check-prefix=GLOB
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s --check-prefix=NOAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -basicaa < %s | FileCheck %s --check-prefix=BASI
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -tbaa < %s | FileCheck %s --check-prefix=TBAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -scev-aa < %s | FileCheck %s --check-prefix=SCEV
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -polly-no-early-exit -globalsmodref-aa < %s | FileCheck %s --check-prefix=GLOB
>  ;
>  ;    int A[1024];
>  ;    float B[1024];
> Index: test/Isl/Ast/aliasing_multiple_alias_groups.ll
> ===================================================================
> --- test/Isl/Ast/aliasing_multiple_alias_groups.ll
> +++ test/Isl/Ast/aliasing_multiple_alias_groups.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze          < %s | FileCheck %s --check-prefix=NOAA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze -tbaa    < %s | FileCheck %s --check-prefix=TBAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze          < %s | FileCheck %s --check-prefix=NOAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze -tbaa    < %s | FileCheck %s --check-prefix=TBAA
>  ;
>  ;    void jd(int *Int0, int *Int1, float *Float0, float *Float1) {
>  ;      for (int i = 0; i < 1024; i++) {
> Index: test/Isl/Ast/aliasing_parametric_simple_1.ll
> ===================================================================
> --- test/Isl/Ast/aliasing_parametric_simple_1.ll
> +++ test/Isl/Ast/aliasing_parametric_simple_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze %s | FileCheck %s
>  ;
>  ;    void jd(int *A, int *B, int c) {
>  ;      for (int i = 0; i < 1024; i++)
> Index: test/Isl/Ast/aliasing_parametric_simple_2.ll
> ===================================================================
> --- test/Isl/Ast/aliasing_parametric_simple_2.ll
> +++ test/Isl/Ast/aliasing_parametric_simple_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-ast -analyze < %s | FileCheck %s
>  ;
>  ;    void jd(int *A, int *B, int c) {
>  ;      for (int i = 0; i < 1024; i++)
> Index: test/Isl/Ast/dependence_distance_constant.ll
> ===================================================================
> --- test/Isl/Ast/dependence_distance_constant.ll
> +++ test/Isl/Ast/dependence_distance_constant.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ;        void f(int *A, int N) {
>  ; CHECK:   #pragma minimal dependence distance: 1
> Index: test/Isl/Ast/dependence_distance_multiple_constant.ll
> ===================================================================
> --- test/Isl/Ast/dependence_distance_multiple_constant.ll
> +++ test/Isl/Ast/dependence_distance_multiple_constant.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ;        void f(int *restrict A, int *restrict B, int N) {
>  ; CHECK:   #pragma minimal dependence distance: 5
> Index: test/Isl/Ast/dependence_distance_parametric.ll
> ===================================================================
> --- test/Isl/Ast/dependence_distance_parametric.ll
> +++ test/Isl/Ast/dependence_distance_parametric.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ;        void f(int *A, int N, int c) {
>  ; CHECK:   #pragma minimal dependence distance: 1
> Index: test/Isl/Ast/dependence_distance_parametric_expr.ll
> ===================================================================
> --- test/Isl/Ast/dependence_distance_parametric_expr.ll
> +++ test/Isl/Ast/dependence_distance_parametric_expr.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ;        void f(int *A, int N, int c, int v) {
>  ; CHECK:   #pragma minimal dependence distance: 1
> Index: test/Isl/Ast/dependence_distance_varying.ll
> ===================================================================
> --- test/Isl/Ast/dependence_distance_varying.ll
> +++ test/Isl/Ast/dependence_distance_varying.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ;         void f(int *A, int N) {
>  ; CHECK:    #pragma minimal dependence distance: ((N - 1) % 2) + 1
> Index: test/Isl/Ast/dependence_distance_varying_in_outer_loop.ll
> ===================================================================
> --- test/Isl/Ast/dependence_distance_varying_in_outer_loop.ll
> +++ test/Isl/Ast/dependence_distance_varying_in_outer_loop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-canonicalize -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-canonicalize -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ;        void f(int *restrict A, int *restrict sum) {
>  ; CHECK:   #pragma minimal dependence distance: 1
> Index: test/Isl/Ast/dependence_distance_varying_multiple.ll
> ===================================================================
> --- test/Isl/Ast/dependence_distance_varying_multiple.ll
> +++ test/Isl/Ast/dependence_distance_varying_multiple.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ;        void f(int *restrict A, int *restrict B, int *restrict C, int *restrict D,
>  ;               int *restrict E, int N) {
> Index: test/Isl/Ast/reduction_clauses_multidimensional_access.ll
> ===================================================================
> --- test/Isl/Ast/reduction_clauses_multidimensional_access.ll
> +++ test/Isl/Ast/reduction_clauses_multidimensional_access.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-delinearize -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-delinearize -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: #pragma known-parallel reduction (^ : sum)
>  ;        void f(int N, int M, int P, int sum[P][M]) {
> Index: test/Isl/Ast/reduction_clauses_onedimensional_access.ll
> ===================================================================
> --- test/Isl/Ast/reduction_clauses_onedimensional_access.ll
> +++ test/Isl/Ast/reduction_clauses_onedimensional_access.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: #pragma known-parallel reduction (^ : sum)
>  ;        void f(int N, int M, int *sum) {
> Index: test/Isl/Ast/reduction_dependences_equal_non_reduction_dependences.ll
> ===================================================================
> --- test/Isl/Ast/reduction_dependences_equal_non_reduction_dependences.ll
> +++ test/Isl/Ast/reduction_dependences_equal_non_reduction_dependences.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; This loopnest contains a reduction which imposes the same dependences as the
>  ; accesses to the array A. We need to ensure we do __not__ parallelize anything
> Index: test/Isl/Ast/reduction_different_reduction_clauses.ll
> ===================================================================
> --- test/Isl/Ast/reduction_different_reduction_clauses.ll
> +++ test/Isl/Ast/reduction_different_reduction_clauses.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: #pragma simd reduction (+ : sum{{[1,2]}}, sum{{[1,2]}}) reduction (* : prod) reduction (| : or) reduction (& : and)
>  ; CHECK: #pragma known-parallel reduction (+ : sum{{[1,2]}}, sum{{[1,2]}}) reduction (* : prod) reduction (| : or) reduction (& : and)
> Index: test/Isl/Ast/reduction_in_one_dimension.ll
> ===================================================================
> --- test/Isl/Ast/reduction_in_one_dimension.ll
> +++ test/Isl/Ast/reduction_in_one_dimension.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; Verify that we won't privatize anything in the outer dimension
>  ;
> Index: test/Isl/Ast/reduction_loop_reversal.ll
> ===================================================================
> --- test/Isl/Ast/reduction_loop_reversal.ll
> +++ test/Isl/Ast/reduction_loop_reversal.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK-NOT: #pragma simd{{\s*$}}
>  ; CHECK: #pragma simd reduction
> Index: test/Isl/Ast/reduction_modulo_and_loop_reversal_schedule.ll
> ===================================================================
> --- test/Isl/Ast/reduction_modulo_and_loop_reversal_schedule.ll
> +++ test/Isl/Ast/reduction_modulo_and_loop_reversal_schedule.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK-NOT: #pragma simd{{\s*$}}
>  ; CHECK: #pragma simd reduction
> Index: test/Isl/Ast/reduction_modulo_and_loop_reversal_schedule_2.ll
> ===================================================================
> --- test/Isl/Ast/reduction_modulo_and_loop_reversal_schedule_2.ll
> +++ test/Isl/Ast/reduction_modulo_and_loop_reversal_schedule_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK:    #pragma known-parallel reduction
>  ; CHECK:    for (int c0 = 0; c0 <= 2; c0 += 1) {
> Index: test/Isl/Ast/reduction_modulo_schedule.ll
> ===================================================================
> --- test/Isl/Ast/reduction_modulo_schedule.ll
> +++ test/Isl/Ast/reduction_modulo_schedule.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK-NOT: #pragma simd{{\s*$}}
>  ; CHECK: #pragma simd reduction
> Index: test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions.ll
> ===================================================================
> --- test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions.ll
> +++ test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK:    #pragma known-parallel
>  ; CHECK:    for (int c0 = 0; c0 <= 1; c0 += 1)
> Index: test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_2.ll
> ===================================================================
> --- test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_2.ll
> +++ test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; Verify that the outer dimension doesnt't carry reduction dependences
>  ;
> Index: test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_3.ll
> ===================================================================
> --- test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_3.ll
> +++ test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_3.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; Verify that the outer dimension doesnt't carry reduction dependences
>  ;
> Index: test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_4.ll
> ===================================================================
> --- test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_4.ll
> +++ test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_4.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; Verify that the outer dimension doesnt't carry reduction dependences
>  ;
> Index: test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_5.ll
> ===================================================================
> --- test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_5.ll
> +++ test/Isl/Ast/reduction_modulo_schedule_multiple_dimensions_5.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; Verify that only the outer dimension needs privatization
>  ;
> Index: test/Isl/Ast/reduction_multiple_dimensions.ll
> ===================================================================
> --- test/Isl/Ast/reduction_multiple_dimensions.ll
> +++ test/Isl/Ast/reduction_multiple_dimensions.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK-NOT:#pragma known-parallel reduction
>  ; CHECK:    #pragma known-parallel
> Index: test/Isl/Ast/reduction_multiple_dimensions_2.ll
> ===================================================================
> --- test/Isl/Ast/reduction_multiple_dimensions_2.ll
> +++ test/Isl/Ast/reduction_multiple_dimensions_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK-NOT:#pragma known-parallel reduction
>  ; CHECK:    #pragma known-parallel
> Index: test/Isl/Ast/reduction_multiple_dimensions_3.ll
> ===================================================================
> --- test/Isl/Ast/reduction_multiple_dimensions_3.ll
> +++ test/Isl/Ast/reduction_multiple_dimensions_3.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK-NOT:#pragma known-parallel reduction
>  ; CHECK:    #pragma known-parallel
> Index: test/Isl/Ast/reduction_multiple_dimensions_4.ll
> ===================================================================
> --- test/Isl/Ast/reduction_multiple_dimensions_4.ll
> +++ test/Isl/Ast/reduction_multiple_dimensions_4.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK-NOT:#pragma known-parallel reduction
>  ; CHECK:    #pragma known-parallel
> Index: test/Isl/Ast/run-time-condition.ll
> ===================================================================
> --- test/Isl/Ast/run-time-condition.ll
> +++ test/Isl/Ast/run-time-condition.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
>  
>  ; for (i = 0; i < 1024; i++)
>  ;   A[i] = B[i];
> Index: test/Isl/Ast/simple-run-time-condition.ll
> ===================================================================
> --- test/Isl/Ast/simple-run-time-condition.ll
> +++ test/Isl/Ast/simple-run-time-condition.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -analyze -polly-no-early-exit -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -analyze -polly-no-early-exit -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/Ast/single_loop_strip_mine.ll
> ===================================================================
> --- test/Isl/Ast/single_loop_strip_mine.ll
> +++ test/Isl/Ast/single_loop_strip_mine.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -basicaa -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-import-jscop-dir=%S -basicaa -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK-VECTOR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop-dir=%S -basicaa -polly-import-jscop -polly-ast -polly-ast-detect-parallel -analyze -polly-no-early-exit < %s | FileCheck %s -check-prefix=CHECK-VECTOR
>  
>  ; for (i = 0; i < 1024; i++)
>  ;   A[i] = B[i];
> Index: test/Isl/CodeGen/20100617.ll
> ===================================================================
> --- test/Isl/CodeGen/20100617.ll
> +++ test/Isl/CodeGen/20100617.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100622.ll
> ===================================================================
> --- test/Isl/CodeGen/20100622.ll
> +++ test/Isl/CodeGen/20100622.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> -; RUN: opt %loadPolly -polly-detect -analyze  < %s | not FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze  < %s | not FileCheck %s
>  
>  target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32"
>  target triple = "i386-portbld-freebsd8.0"
> Index: test/Isl/CodeGen/20100707.ll
> ===================================================================
> --- test/Isl/CodeGen/20100707.ll
> +++ test/Isl/CodeGen/20100707.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100707_2.ll
> ===================================================================
> --- test/Isl/CodeGen/20100707_2.ll
> +++ test/Isl/CodeGen/20100707_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100708.ll
> ===================================================================
> --- test/Isl/CodeGen/20100708.ll
> +++ test/Isl/CodeGen/20100708.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100708_2.ll
> ===================================================================
> --- test/Isl/CodeGen/20100708_2.ll
> +++ test/Isl/CodeGen/20100708_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100713.ll
> ===================================================================
> --- test/Isl/CodeGen/20100713.ll
> +++ test/Isl/CodeGen/20100713.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100713_2.ll
> ===================================================================
> --- test/Isl/CodeGen/20100713_2.ll
> +++ test/Isl/CodeGen/20100713_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100717.ll
> ===================================================================
> --- test/Isl/CodeGen/20100717.ll
> +++ test/Isl/CodeGen/20100717.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly  -polly-codegen-isl -disable-output < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable  -polly-codegen-isl -disable-output < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100718-DomInfo-2.ll
> ===================================================================
> --- test/Isl/CodeGen/20100718-DomInfo-2.ll
> +++ test/Isl/CodeGen/20100718-DomInfo-2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -verify-dom-info -disable-output < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -verify-dom-info -disable-output < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100718-DomInfo.ll
> ===================================================================
> --- test/Isl/CodeGen/20100718-DomInfo.ll
> +++ test/Isl/CodeGen/20100718-DomInfo.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -verify-dom-info -disable-output < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -verify-dom-info -disable-output < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20100720-MultipleConditions.ll
> ===================================================================
> --- test/Isl/CodeGen/20100720-MultipleConditions.ll
> +++ test/Isl/CodeGen/20100720-MultipleConditions.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -analyze < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -analyze < %s
>  
>  ;int bar1();
>  ;int bar2();
> Index: test/Isl/CodeGen/20100809-IndependentBlock.ll
> ===================================================================
> --- test/Isl/CodeGen/20100809-IndependentBlock.ll
> +++ test/Isl/CodeGen/20100809-IndependentBlock.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -disable-output < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -disable-output < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  define void @cfft2([2 x float]* %x) nounwind {
> Index: test/Isl/CodeGen/20100811-ScalarDependencyBetweenBrAndCnd.ll
> ===================================================================
> --- test/Isl/CodeGen/20100811-ScalarDependencyBetweenBrAndCnd.ll
> +++ test/Isl/CodeGen/20100811-ScalarDependencyBetweenBrAndCnd.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -disable-output < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -disable-output < %s
>  target datalayout =
>  "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/Isl/CodeGen/20101030-Overflow.ll
> ===================================================================
> --- test/Isl/CodeGen/20101030-Overflow.ll
> +++ test/Isl/CodeGen/20101030-Overflow.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20101103-Overflow3.ll
> ===================================================================
> --- test/Isl/CodeGen/20101103-Overflow3.ll
> +++ test/Isl/CodeGen/20101103-Overflow3.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  define void @Reflection_coefficients(i16* %r) nounwind {
> Index: test/Isl/CodeGen/20101103-signmissmatch.ll
> ===================================================================
> --- test/Isl/CodeGen/20101103-signmissmatch.ll
> +++ test/Isl/CodeGen/20101103-signmissmatch.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/CodeGen/20110226-Ignore-Dead-Code.ll
> ===================================================================
> --- test/Isl/CodeGen/20110226-Ignore-Dead-Code.ll
> +++ test/Isl/CodeGen/20110226-Ignore-Dead-Code.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/20110226-PHI-Node-removed.ll
> ===================================================================
> --- test/Isl/CodeGen/20110226-PHI-Node-removed.ll
> +++ test/Isl/CodeGen/20110226-PHI-Node-removed.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/Isl/CodeGen/20110312-Fail-without-basicaa.ll
> ===================================================================
> --- test/Isl/CodeGen/20110312-Fail-without-basicaa.ll
> +++ test/Isl/CodeGen/20110312-Fail-without-basicaa.ll
> @@ -1,5 +1,5 @@
>  ; This should be run without alias analysis enabled.
> -;RUN: opt %loadPolly -polly-independent < %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-independent < %s
>  target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32"
>  target triple = "i386-pc-linux-gnu"
>  
> Index: test/Isl/CodeGen/20120316-InvalidCast.ll
> ===================================================================
> --- test/Isl/CodeGen/20120316-InvalidCast.ll
> +++ test/Isl/CodeGen/20120316-InvalidCast.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -S -polly-detect-scops-in-functions-without-loops -polly-detect-scops-in-regions-without-loops -polly-codegen-isl -polly-no-early-exit < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -S -polly-detect-scops-in-functions-without-loops -polly-detect-scops-in-regions-without-loops -polly-codegen-isl -polly-no-early-exit < %s | FileCheck %s
>  
>  ; CHECK: polly.start
>  
> Index: test/Isl/CodeGen/20120403-RHS-type-mismatch.ll
> ===================================================================
> --- test/Isl/CodeGen/20120403-RHS-type-mismatch.ll
> +++ test/Isl/CodeGen/20120403-RHS-type-mismatch.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  
>  ; We just check that this compilation does not crash.
>  
> Index: test/Isl/CodeGen/20130211-getNumberOfIterations.ll
> ===================================================================
> --- test/Isl/CodeGen/20130211-getNumberOfIterations.ll
> +++ test/Isl/CodeGen/20130211-getNumberOfIterations.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -polly-vectorizer=polly < %s
> -; RUN: opt %loadPolly -polly-codegen-isl -polly-vectorizer=bb < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -polly-vectorizer=polly < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -polly-vectorizer=bb < %s
>  
>  ; This test case checks that the polly vectorizer does not crash when
>  ; calculating the number of iterations.
> Index: test/Isl/CodeGen/20130221.ll
> ===================================================================
> --- test/Isl/CodeGen/20130221.ll
> +++ test/Isl/CodeGen/20130221.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -S < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -S < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/LoopParallelMD/do_not_mutate_debug_info.ll
> ===================================================================
> --- test/Isl/CodeGen/LoopParallelMD/do_not_mutate_debug_info.ll
> +++ test/Isl/CodeGen/LoopParallelMD/do_not_mutate_debug_info.ll
> @@ -1,6 +1,6 @@
>  ; This test checks that we do not accidently mutate the debug info when
>  ; inserting loop parallel metadata.
> -; RUN: opt %loadPolly < %s  -S -polly -polly-codegen-isl -polly-ast-detect-parallel | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable < %s  -S -polly -polly-codegen-isl -polly-ast-detect-parallel | FileCheck %s
>  ; CHECK-NOT: !7 = !{!7}
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/Isl/CodeGen/LoopParallelMD/loop_nest_param_parallel.ll
> ===================================================================
> --- test/Isl/CodeGen/LoopParallelMD/loop_nest_param_parallel.ll
> +++ test/Isl/CodeGen/LoopParallelMD/loop_nest_param_parallel.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -polly-ast-detect-parallel -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -polly-ast-detect-parallel -S < %s | FileCheck %s
>  ;
>  ; Check that we mark multiple parallel loops correctly including the memory instructions.
>  ;
> Index: test/Isl/CodeGen/LoopParallelMD/single_loop_param_parallel.ll
> ===================================================================
> --- test/Isl/CodeGen/LoopParallelMD/single_loop_param_parallel.ll
> +++ test/Isl/CodeGen/LoopParallelMD/single_loop_param_parallel.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=SEQUENTIAL
> -; RUN: opt %loadPolly -polly-codegen-isl -polly-ast-detect-parallel -S < %s | FileCheck %s -check-prefix=PARALLEL
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=SEQUENTIAL
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -polly-ast-detect-parallel -S < %s | FileCheck %s -check-prefix=PARALLEL
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/CodeGen/MemAccess/bad_alignment.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/bad_alignment.ll
> +++ test/Isl/CodeGen/MemAccess/bad_alignment.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-import-jscop -polly-import-jscop-dir=%S -analyze 2>&1 < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop -polly-import-jscop-dir=%S -analyze 2>&1 < %s | FileCheck %s
>  ;
>  ; Check that we do not allow to access elements not accessed before because the
>  ; alignment information would become invalid.
> Index: test/Isl/CodeGen/MemAccess/codegen_constant_offset.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/codegen_constant_offset.ll
> +++ test/Isl/CodeGen/MemAccess/codegen_constant_offset.ll
> @@ -1,4 +1,4 @@
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-codegen-isl -instnamer < %s -S | FileCheck %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-codegen-isl -instnamer < %s -S | FileCheck %s
>  
>  ;int A[100];
>  ;
> Index: test/Isl/CodeGen/MemAccess/codegen_simple.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/codegen_simple.ll
> +++ test/Isl/CodeGen/MemAccess/codegen_simple.ll
> @@ -1,4 +1,4 @@
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-codegen-isl -instnamer < %s -S | FileCheck %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-codegen-isl -instnamer < %s -S | FileCheck %s
>  
>  ;int A[100];
>  ;
> Index: test/Isl/CodeGen/MemAccess/codegen_simple_float.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/codegen_simple_float.ll
> +++ test/Isl/CodeGen/MemAccess/codegen_simple_float.ll
> @@ -1,4 +1,4 @@
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-codegen-isl -instnamer < %s -S | FileCheck %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-codegen-isl -instnamer < %s -S | FileCheck %s
>  ;
>  ;float A[100];
>  ;
> Index: test/Isl/CodeGen/MemAccess/codegen_simple_md.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/codegen_simple_md.ll
> +++ test/Isl/CodeGen/MemAccess/codegen_simple_md.ll
> @@ -1,7 +1,7 @@
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHCONST %s
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withoutconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHOUTCONST %s
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHCONST %s
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withoutconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHOUTCONST %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHCONST %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withoutconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHOUTCONST %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHCONST %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withoutconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHOUTCONST %s
>  
>  ;int A[1040];
>  ;
> Index: test/Isl/CodeGen/MemAccess/codegen_simple_md_float.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/codegen_simple_md_float.ll
> +++ test/Isl/CodeGen/MemAccess/codegen_simple_md_float.ll
> @@ -1,7 +1,7 @@
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHCONST %s
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withoutconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHOUTCONST %s
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHCONST %s
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withoutconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHOUTCONST %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHCONST %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withoutconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHOUTCONST %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHCONST %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed+withoutconst -polly-codegen-isl < %s -S | FileCheck -check-prefix=WITHOUTCONST %s
>  ;
>  ;float A[1040];
>  ;
> Index: test/Isl/CodeGen/MemAccess/default_aligned_new_access_function.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/default_aligned_new_access_function.ll
> +++ test/Isl/CodeGen/MemAccess/default_aligned_new_access_function.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-import-jscop -polly-import-jscop-dir=%S -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-import-jscop -polly-import-jscop-dir=%S -analyze < %s | FileCheck %s
>  ;
>  ; Check that we allow the new access functions even though they access
>  ; different locations than the original ones (but the alignment is the
> Index: test/Isl/CodeGen/MemAccess/simple.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/simple.ll
> +++ test/Isl/CodeGen/MemAccess/simple.ll
> @@ -1,4 +1,4 @@
> -;RUN: opt %loadPolly -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -stats < %s 2>&1  | FileCheck %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -stats < %s 2>&1  | FileCheck %s
>  ; REQUIRES: asserts
>  
>  ;int A[100];
> Index: test/Isl/CodeGen/MemAccess/simple_analyze.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/simple_analyze.ll
> +++ test/Isl/CodeGen/MemAccess/simple_analyze.ll
> @@ -1,5 +1,5 @@
> -;RUN: opt %loadPolly -polly-import-jscop -analyze -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed < %s | FileCheck %s
> -;RUN: opt %loadPolly -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-codegen-isl -polly-vectorizer=polly -S < %s | FileCheck %s --check-prefix=JSCOPVEC
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop -analyze -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed < %s | FileCheck %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-import-jscop -polly-import-jscop-dir=%S -polly-import-jscop-postfix=transformed -polly-codegen-isl -polly-vectorizer=polly -S < %s | FileCheck %s --check-prefix=JSCOPVEC
>  target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32"
>  
>  @A = common global [100 x i32] zeroinitializer, align 4
> Index: test/Isl/CodeGen/MemAccess/simple_stride_test.ll
> ===================================================================
> --- test/Isl/CodeGen/MemAccess/simple_stride_test.ll
> +++ test/Isl/CodeGen/MemAccess/simple_stride_test.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-import-jscop -polly-import-jscop-dir=%S -polly-codegen-isl -polly-vectorizer=polly -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-import-jscop -polly-import-jscop-dir=%S -polly-codegen-isl -polly-vectorizer=polly -S < %s | FileCheck %s
>  ;
>  ; Check that we use the correct __new__ strides:
>  ;    stride zero for B
> Index: test/Isl/CodeGen/OpenMP/loop-body-references-outer-iv.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/loop-body-references-outer-iv.ll
> +++ test/Isl/CodeGen/OpenMP/loop-body-references-outer-iv.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
>  
>  ; This code has failed the scev based code generation as the scev in the scop
>  ; contains an AddRecExpr of an outer loop. When generating code, we did not
> Index: test/Isl/CodeGen/OpenMP/loop-body-references-outer-values-2.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/loop-body-references-outer-values-2.ll
> +++ test/Isl/CodeGen/OpenMP/loop-body-references-outer-values-2.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
>  
>  ; AST: #pragma simd
>  ; AST: #pragma omp parallel for
> Index: test/Isl/CodeGen/OpenMP/loop-body-references-outer-values-3.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/loop-body-references-outer-values-3.ll
> +++ test/Isl/CodeGen/OpenMP/loop-body-references-outer-values-3.ll
> @@ -1,6 +1,6 @@
> -; RUN: opt %loadPolly -basicaa -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> -; RUN: opt %loadPolly -basicaa -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> -; RUN: opt %loadPolly -basicaa -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
>  
>  ; The interesting part of this test case is the instruction:
>  ;   %tmp = bitcast i8* %call to i64**
> Index: test/Isl/CodeGen/OpenMP/loop-body-references-outer-values.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/loop-body-references-outer-values.ll
> +++ test/Isl/CodeGen/OpenMP/loop-body-references-outer-values.ll
> @@ -1,6 +1,6 @@
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR
>  
>  ; Make sure we correctly forward the reference to 'A' to the OpenMP subfunction.
>  ;
> Index: test/Isl/CodeGen/OpenMP/loop-bounds-reference-outer-ids.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/loop-bounds-reference-outer-ids.ll
> +++ test/Isl/CodeGen/OpenMP/loop-bounds-reference-outer-ids.ll
> @@ -1,6 +1,6 @@
> -; RUN: opt %loadPolly -polly-parallel -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> -; RUN: opt %loadPolly -polly-parallel -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR
> -; RUN: opt %loadPolly -polly-parallel -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR
>  ;
>  ; float A[100];
>  ;
> Index: test/Isl/CodeGen/OpenMP/reference-other-bb.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/reference-other-bb.ll
> +++ test/Isl/CodeGen/OpenMP/reference-other-bb.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
>  
>  ; IR: @foo.polly.subfn
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
> Index: test/Isl/CodeGen/OpenMP/reference-preceeding-loop.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/reference-preceeding-loop.ll
> +++ test/Isl/CodeGen/OpenMP/reference-preceeding-loop.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
>  
>  
>  ; - Test the case where scalar evolution references a loop that is outside
> Index: test/Isl/CodeGen/OpenMP/single_loop.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/single_loop.ll
> +++ test/Isl/CodeGen/OpenMP/single_loop.ll
> @@ -1,10 +1,10 @@
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
>  
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-import-jscop -polly-import-jscop-dir=%S -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST-STRIDE4
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-import-jscop -polly-import-jscop-dir=%S -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR-STRIDE4
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-import-jscop -polly-import-jscop-dir=%S -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR-STRIDE4
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-import-jscop -polly-import-jscop-dir=%S -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST-STRIDE4
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-import-jscop -polly-import-jscop-dir=%S -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR-STRIDE4
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-import-jscop -polly-import-jscop-dir=%S -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=IR-STRIDE4
>  
>  ; This extensive test case tests the creation of the full set of OpenMP calls
>  ; as well as the subfunction creation using a trivial loop as example.
> Index: test/Isl/CodeGen/OpenMP/single_loop_with_loop_invariant_baseptr.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/single_loop_with_loop_invariant_baseptr.ll
> +++ test/Isl/CodeGen/OpenMP/single_loop_with_loop_invariant_baseptr.ll
> @@ -1,6 +1,6 @@
> -; RUN: opt %loadPolly -tbaa -polly-parallel -polly-parallel-force -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> -; RUN: opt %loadPolly -tbaa -polly-parallel -polly-parallel-force -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> -; RUN: opt %loadPolly -tbaa -polly-parallel -polly-parallel-force -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -tbaa -polly-parallel -polly-parallel-force -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> +; RUN: opt %loadPolly -polly-detect-unprofitable -tbaa -polly-parallel -polly-parallel-force -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -tbaa -polly-parallel -polly-parallel-force -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
>  
>  ; #define N 1024
>  ; float A[N];
> Index: test/Isl/CodeGen/OpenMP/two-parallel-loops-reference-outer-indvar.ll
> ===================================================================
> --- test/Isl/CodeGen/OpenMP/two-parallel-loops-reference-outer-indvar.ll
> +++ test/Isl/CodeGen/OpenMP/two-parallel-loops-reference-outer-indvar.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> -; RUN: opt %loadPolly -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-ast -analyze < %s | FileCheck %s -check-prefix=AST
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-parallel -polly-parallel-force -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s -check-prefix=IR
>  
>  ; This test case verifies that we create correct code even if two OpenMP loops
>  ; share common outer variables.
> Index: test/Isl/CodeGen/PHIInExit.ll
> ===================================================================
> --- test/Isl/CodeGen/PHIInExit.ll
> +++ test/Isl/CodeGen/PHIInExit.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/aliasing_different_base_and_access_type.ll
> ===================================================================
> --- test/Isl/CodeGen/aliasing_different_base_and_access_type.ll
> +++ test/Isl/CodeGen/aliasing_different_base_and_access_type.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -S -polly-code-generator=isl -polly-codegen-isl < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -S -polly-code-generator=isl -polly-codegen-isl < %s | FileCheck %s
>  ;
>  ; We have to cast %B to "short *" before we create RTCs.
>  ;
> Index: test/Isl/CodeGen/aliasing_different_pointer_types.ll
> ===================================================================
> --- test/Isl/CodeGen/aliasing_different_pointer_types.ll
> +++ test/Isl/CodeGen/aliasing_different_pointer_types.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-codegen-isl -S < %s | FileCheck %s
>  ;
>  ; Check that we cast the different pointer types correctly before we compare
>  ; them in the RTC's. We use i8* as max pointer type.
> Index: test/Isl/CodeGen/aliasing_multidimensional_access.ll
> ===================================================================
> --- test/Isl/CodeGen/aliasing_multidimensional_access.ll
> +++ test/Isl/CodeGen/aliasing_multidimensional_access.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -S -polly-codegen-isl -polly-code-generator=isl -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -S -polly-codegen-isl -polly-code-generator=isl -polly-delinearize < %s | FileCheck %s
>  ;
>  ; Check that we calculate the maximal access into array A correctly.
>  ;
> Index: test/Isl/CodeGen/aliasing_parametric_simple_1.ll
> ===================================================================
> --- test/Isl/CodeGen/aliasing_parametric_simple_1.ll
> +++ test/Isl/CodeGen/aliasing_parametric_simple_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-codegen-isl -S < %s | FileCheck %s
>  ;
>  ;    void jd(int *A, int *B, int c) {
>  ;      for (int i = 0; i < 1024; i++)
> Index: test/Isl/CodeGen/aliasing_parametric_simple_2.ll
> ===================================================================
> --- test/Isl/CodeGen/aliasing_parametric_simple_2.ll
> +++ test/Isl/CodeGen/aliasing_parametric_simple_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-codegen-isl -S < %s | FileCheck %s
>  ;
>  ;    void jd(int *A, int *B, int c) {
>  ;      for (int i = 0; i < 1024; i++)
> Index: test/Isl/CodeGen/aliasing_struct_element.ll
> ===================================================================
> --- test/Isl/CodeGen/aliasing_struct_element.ll
> +++ test/Isl/CodeGen/aliasing_struct_element.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -S -polly-code-generator=isl -polly-codegen-isl < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -S -polly-code-generator=isl -polly-codegen-isl < %s | FileCheck %s
>  ;
>  ; We should only access (or compute the address of) "the first element" of %S
>  ; as it is a single struct not a struct array. The maximal access to S, thus
> Index: test/Isl/CodeGen/alignment.ll
> ===================================================================
> --- test/Isl/CodeGen/alignment.ll
> +++ test/Isl/CodeGen/alignment.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s
>  ;
>  ; Check that the special alignment information is kept
>  ;
> Index: test/Isl/CodeGen/annotated_alias_scopes.ll
> ===================================================================
> --- test/Isl/CodeGen/annotated_alias_scopes.ll
> +++ test/Isl/CodeGen/annotated_alias_scopes.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-codegen-isl -S < %s | FileCheck %s --check-prefix=SCOPES
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-codegen-isl -polly-annotate-alias-scopes=false -S < %s | FileCheck %s --check-prefix=NOSCOPES
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-codegen-isl -S < %s | FileCheck %s --check-prefix=SCOPES
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-codegen-isl -polly-annotate-alias-scopes=false -S < %s | FileCheck %s --check-prefix=NOSCOPES
>  ;
>  ; Check that we create alias scopes that indicate the accesses to A, B and C cannot alias in any way.
>  ;
> Index: test/Isl/CodeGen/blas_sscal_simplified.ll
> ===================================================================
> --- test/Isl/CodeGen/blas_sscal_simplified.ll
> +++ test/Isl/CodeGen/blas_sscal_simplified.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl < %s
>  ;
>  ; Regression test for a bug in the runtime check generation.
>  
> Index: test/Isl/CodeGen/constant_condition.ll
> ===================================================================
> --- test/Isl/CodeGen/constant_condition.ll
> +++ test/Isl/CodeGen/constant_condition.ll
> @@ -1,4 +1,4 @@
> -;RUN: opt %loadPolly -polly-no-early-exit -polly-prepare -polly-detect-scops-in-regions-without-loops -polly-detect-scops-in-functions-without-loops -polly-ast -analyze < %s | FileCheck %s
> +;RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-prepare -polly-detect-scops-in-regions-without-loops -polly-detect-scops-in-functions-without-loops -polly-ast -analyze < %s | FileCheck %s
>  
>  ;#include <string.h>
>  ;int A[1];
> Index: test/Isl/CodeGen/create-conditional-scop.ll
> ===================================================================
> --- test/Isl/CodeGen/create-conditional-scop.ll
> +++ test/Isl/CodeGen/create-conditional-scop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -basicaa -polly-codegen-isl -verify-loop-info < %s -S | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -basicaa -polly-codegen-isl -verify-loop-info < %s -S | FileCheck %s
>  
>  target datalayout = "e-p:32:32:32-i64:64:64-i32:32:32-i16:16:16-i1:32:32-f64:64:64-f32:32:32-a0:0-n32"
>  target triple = "hexagon-unknown-linux-gnu"
> Index: test/Isl/CodeGen/debug-intrinsics.ll
> ===================================================================
> --- test/Isl/CodeGen/debug-intrinsics.ll
> +++ test/Isl/CodeGen/debug-intrinsics.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/intrinsics_lifetime.ll
> ===================================================================
> --- test/Isl/CodeGen/intrinsics_lifetime.ll
> +++ test/Isl/CodeGen/intrinsics_lifetime.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl -S < %s | FileCheck %s
>  ;
>  ; Verify that we remove the lifetime markers from the optimized SCoP.
>  ;
> Index: test/Isl/CodeGen/intrinsics_misc.ll
> ===================================================================
> --- test/Isl/CodeGen/intrinsics_misc.ll
> +++ test/Isl/CodeGen/intrinsics_misc.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl -S < %s | FileCheck %s
>  ;
>  ; Verify that we remove the misc intrinsics  from the optimized SCoP.
>  ;
> Index: test/Isl/CodeGen/loop_with_condition.ll
> ===================================================================
> --- test/Isl/CodeGen/loop_with_condition.ll
> +++ test/Isl/CodeGen/loop_with_condition.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -basicaa -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -basicaa -polly-ast -analyze < %s | FileCheck %s
>  
>  ;#include <string.h>
>  ;#define N 1024
> Index: test/Isl/CodeGen/loop_with_condition_2.ll
> ===================================================================
> --- test/Isl/CodeGen/loop_with_condition_2.ll
> +++ test/Isl/CodeGen/loop_with_condition_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  
>  ; Verify that we actually detect this loop as the innermost loop even though
>  ; there is a conditional inside.
> Index: test/Isl/CodeGen/loop_with_condition_ineq.ll
> ===================================================================
> --- test/Isl/CodeGen/loop_with_condition_ineq.ll
> +++ test/Isl/CodeGen/loop_with_condition_ineq.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -basicaa -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -basicaa -polly-ast -analyze < %s | FileCheck %s
>  
>  ;#include <string.h>
>  ;#define N 1024
> Index: test/Isl/CodeGen/loop_with_condition_nested.ll
> ===================================================================
> --- test/Isl/CodeGen/loop_with_condition_nested.ll
> +++ test/Isl/CodeGen/loop_with_condition_nested.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -basicaa -polly-ast -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -basicaa -polly-codegen-isl -loops -analyze < %s | FileCheck %s -check-prefix=LOOPS
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -basicaa -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -basicaa -polly-codegen-isl -loops -analyze < %s | FileCheck %s -check-prefix=LOOPS
>  
>  
>  ;#include <string.h>
> Index: test/Isl/CodeGen/loop_with_conditional_entry_edge_splited_hard_case.ll
> ===================================================================
> --- test/Isl/CodeGen/loop_with_conditional_entry_edge_splited_hard_case.ll
> +++ test/Isl/CodeGen/loop_with_conditional_entry_edge_splited_hard_case.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s
>  ;
>  ; Test case to trigger the hard way of creating a unique entering
>  ; edge for the SCoP. It is triggered because the entering edge
> Index: test/Isl/CodeGen/multidim_2d_parametric_array_static_loop_bounds.ll
> ===================================================================
> --- test/Isl/CodeGen/multidim_2d_parametric_array_static_loop_bounds.ll
> +++ test/Isl/CodeGen/multidim_2d_parametric_array_static_loop_bounds.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/multidim_alias_check.ll
> ===================================================================
> --- test/Isl/CodeGen/multidim_alias_check.ll
> +++ test/Isl/CodeGen/multidim_alias_check.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -polly-delinearize < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -polly-delinearize < %s
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/no_guard_bb.ll
> ===================================================================
> --- test/Isl/CodeGen/no_guard_bb.ll
> +++ test/Isl/CodeGen/no_guard_bb.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -S -verify-dom-info < %s | FileCheck %s
>  ;
>  ; CHECK-NOT: br i1 true, label %polly.{{.*}}, label %polly.{{.*}}
>  ;
> Index: test/Isl/CodeGen/openmp_limit_threads.ll
> ===================================================================
> --- test/Isl/CodeGen/openmp_limit_threads.ll
> +++ test/Isl/CodeGen/openmp_limit_threads.ll
> @@ -1,6 +1,6 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -polly-parallel -S < %s | FileCheck %s --check-prefix=AUTO
> -; RUN: opt %loadPolly -polly-codegen-isl -polly-parallel -polly-num-threads=1 -S < %s | FileCheck %s --check-prefix=ONE
> -; RUN: opt %loadPolly -polly-codegen-isl -polly-parallel -polly-num-threads=4 -S < %s | FileCheck %s --check-prefix=FOUR
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -polly-parallel -S < %s | FileCheck %s --check-prefix=AUTO
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -polly-parallel -polly-num-threads=1 -S < %s | FileCheck %s --check-prefix=ONE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -polly-parallel -polly-num-threads=4 -S < %s | FileCheck %s --check-prefix=FOUR
>  ;
>  ; AUTO: call void @GOMP_parallel_loop_runtime_start(void (i8*)* @jd.polly.subfn, i8* %polly.par.userContext{{[0-9]*}}, i32 0, i64 0, i64 1024, i64 1)
>  ; ONE: call void @GOMP_parallel_loop_runtime_start(void (i8*)* @jd.polly.subfn, i8* %polly.par.userContext{{[0-9]*}}, i32 1, i64 0, i64 1024, i64 1)
> Index: test/Isl/CodeGen/pointer-type-expressions-2.ll
> ===================================================================
> --- test/Isl/CodeGen/pointer-type-expressions-2.ll
> +++ test/Isl/CodeGen/pointer-type-expressions-2.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CODEGEN
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CODEGEN
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  
>  define void @foo(i8* %start, i8* %end) {
> Index: test/Isl/CodeGen/pointer-type-expressions.ll
> ===================================================================
> --- test/Isl/CodeGen/pointer-type-expressions.ll
> +++ test/Isl/CodeGen/pointer-type-expressions.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CODEGEN
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CODEGEN
>  
>  ; void f(int a[], int N, float *P) {
>  ;   int i;
> Index: test/Isl/CodeGen/pointer-type-pointer-type-comparison.ll
> ===================================================================
> --- test/Isl/CodeGen/pointer-type-pointer-type-comparison.ll
> +++ test/Isl/CodeGen/pointer-type-pointer-type-comparison.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CODEGEN
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CODEGEN
>  ;
>  ;    void f(int a[], int N, float *P, float *Q) {
>  ;      int i;
> Index: test/Isl/CodeGen/reduction.ll
> ===================================================================
> --- test/Isl/CodeGen/reduction.ll
> +++ test/Isl/CodeGen/reduction.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl -S < %s 2>&1 | not FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl -S < %s 2>&1 | not FileCheck %s
>  
>  ;#include <string.h>
>  ;#include <stdio.h>
> Index: test/Isl/CodeGen/reduction_2.ll
> ===================================================================
> --- test/Isl/CodeGen/reduction_2.ll
> +++ test/Isl/CodeGen/reduction_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -basicaa -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -basicaa -polly-ast -analyze < %s | FileCheck %s
>  
>  ;#include <string.h>
>  ;#include <stdio.h>
> Index: test/Isl/CodeGen/reduction_simple_binary.ll
> ===================================================================
> --- test/Isl/CodeGen/reduction_simple_binary.ll
> +++ test/Isl/CodeGen/reduction_simple_binary.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -polly-ast-detect-parallel -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: pragma simd reduction
>  ;
> Index: test/Isl/CodeGen/run-time-condition-with-scev-parameters.ll
> ===================================================================
> --- test/Isl/CodeGen/run-time-condition-with-scev-parameters.ll
> +++ test/Isl/CodeGen/run-time-condition-with-scev-parameters.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
>  
>  ; CHECK: %1 = zext i32 %n to i64
>  ; CHECK: %2 = icmp sge i64 %1, 1
> Index: test/Isl/CodeGen/run-time-condition.ll
> ===================================================================
> --- test/Isl/CodeGen/run-time-condition.ll
> +++ test/Isl/CodeGen/run-time-condition.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -basicaa -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -basicaa -polly-codegen-isl -S < %s | FileCheck %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/Isl/CodeGen/scalar-references-used-in-scop-compute.ll
> ===================================================================
> --- test/Isl/CodeGen/scalar-references-used-in-scop-compute.ll
> +++ test/Isl/CodeGen/scalar-references-used-in-scop-compute.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s
>  
>  ; Test the code generation in the presence of a scalar out-of-scop value being
>  ; used from within the SCoP.
> Index: test/Isl/CodeGen/scev.ll
> ===================================================================
> --- test/Isl/CodeGen/scev.ll
> +++ test/Isl/CodeGen/scev.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/scop_never_executed_runtime_check_location.ll
> ===================================================================
> --- test/Isl/CodeGen/scop_never_executed_runtime_check_location.ll
> +++ test/Isl/CodeGen/scop_never_executed_runtime_check_location.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S -polly-delinearize < %s | FileCheck %s
>  
>  ; Verify that we generate the runtime check code after the conditional branch
>  ; in the SCoP region entering block (here %entry).
> Index: test/Isl/CodeGen/sequential_loops.ll
> ===================================================================
> --- test/Isl/CodeGen/sequential_loops.ll
> +++ test/Isl/CodeGen/sequential_loops.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
>  
>  ;#include <string.h>
>  ;#define N 1024
> Index: test/Isl/CodeGen/simple_loop_non_single_exit.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_loop_non_single_exit.ll
> +++ test/Isl/CodeGen/simple_loop_non_single_exit.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CHECK-CODE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CHECK-CODE
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/Isl/CodeGen/simple_loop_non_single_exit_2.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_loop_non_single_exit_2.ll
> +++ test/Isl/CodeGen/simple_loop_non_single_exit_2.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CHECK-CODE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CHECK-CODE
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/Isl/CodeGen/simple_non_single_entry.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_non_single_entry.ll
> +++ test/Isl/CodeGen/simple_non_single_entry.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-detect-scops-in-regions-without-loops -polly-codegen-isl -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-detect-scops-in-regions-without-loops -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CHECK-CODE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-detect-scops-in-regions-without-loops -polly-codegen-isl -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-detect-scops-in-regions-without-loops -polly-codegen-isl -S < %s | FileCheck %s -check-prefix=CHECK-CODE
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/Isl/CodeGen/simple_nonaffine_loop.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_nonaffine_loop.ll
> +++ test/Isl/CodeGen/simple_nonaffine_loop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -polly-allow-nonaffine -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -polly-allow-nonaffine -analyze < %s | FileCheck %s
>  
>  ;#include <stdio.h>
>  ;#include <stdlib.h>
> Index: test/Isl/CodeGen/simple_vec_assign_scalar.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_assign_scalar.ll
> +++ test/Isl/CodeGen/simple_vec_assign_scalar.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
>  
>  ;#define N 1024
>  ;float A[N];
> Index: test/Isl/CodeGen/simple_vec_assign_scalar_2.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_assign_scalar_2.ll
> +++ test/Isl/CodeGen/simple_vec_assign_scalar_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
>  
>  ;#define N 1024
>  ;float A[N];
> Index: test/Isl/CodeGen/simple_vec_call.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_call.ll
> +++ test/Isl/CodeGen/simple_vec_call.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt -S < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/simple_vec_call_2.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_call_2.ll
> +++ test/Isl/CodeGen/simple_vec_call_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/simple_vec_cast.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_cast.ll
> +++ test/Isl/CodeGen/simple_vec_cast.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s -check-prefix=CHECK
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s -check-prefix=CHECK
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/simple_vec_const.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_const.ll
> +++ test/Isl/CodeGen/simple_vec_const.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt -S < %s | FileCheck %s
>  
>  ;#define N 1024
>  ;float A[N];
> Index: test/Isl/CodeGen/simple_vec_large_width.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_large_width.ll
> +++ test/Isl/CodeGen/simple_vec_large_width.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/simple_vec_ptr_ptr_ty.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_ptr_ptr_ty.ll
> +++ test/Isl/CodeGen/simple_vec_ptr_ptr_ty.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt -S < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/simple_vec_stride_negative_one.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_stride_negative_one.ll
> +++ test/Isl/CodeGen/simple_vec_stride_negative_one.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-codegen-isl %vector-opt -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-codegen-isl %vector-opt -S < %s | FileCheck %s
>  
>  ; ModuleID = 'reverse.c'
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
> Index: test/Isl/CodeGen/simple_vec_stride_x.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_stride_x.ll
> +++ test/Isl/CodeGen/simple_vec_stride_x.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt  -dce -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt  -dce -S < %s | FileCheck %s
>  
>  ;#define N 1024
>  ;float A[N];
> Index: test/Isl/CodeGen/simple_vec_two_stmts.ll
> ===================================================================
> --- test/Isl/CodeGen/simple_vec_two_stmts.ll
> +++ test/Isl/CodeGen/simple_vec_two_stmts.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-codegen-isl %vector-opt -dce -S < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/CodeGen/single_do_loop_int_max_iterations.ll
> ===================================================================
> --- test/Isl/CodeGen/single_do_loop_int_max_iterations.ll
> +++ test/Isl/CodeGen/single_do_loop_int_max_iterations.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze  -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze  -S < %s | FileCheck %s
>  
>  ;#define N 20
>  ;#include "limits.h"
> Index: test/Isl/CodeGen/single_do_loop_int_param_iterations.ll
> ===================================================================
> --- test/Isl/CodeGen/single_do_loop_int_param_iterations.ll
> +++ test/Isl/CodeGen/single_do_loop_int_param_iterations.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -S -analyze  < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -S -analyze  < %s | FileCheck %s
>  ; XFAIL: *
>  
>  ;define N 20
> Index: test/Isl/CodeGen/single_do_loop_ll_max_iterations.ll
> ===================================================================
> --- test/Isl/CodeGen/single_do_loop_ll_max_iterations.ll
> +++ test/Isl/CodeGen/single_do_loop_ll_max_iterations.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze  -S < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze  -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl < %s
>  
>  ;#define N 20
>  ;#include "limits.h"
> Index: test/Isl/CodeGen/single_do_loop_one_iteration.ll
> ===================================================================
> --- test/Isl/CodeGen/single_do_loop_one_iteration.ll
> +++ test/Isl/CodeGen/single_do_loop_one_iteration.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -S -analyze  < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -S -analyze  < %s | FileCheck %s
>  ; XFAIL: *
>  
>  ;#define N 20
> Index: test/Isl/CodeGen/single_do_loop_scev_replace.ll
> ===================================================================
> --- test/Isl/CodeGen/single_do_loop_scev_replace.ll
> +++ test/Isl/CodeGen/single_do_loop_scev_replace.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
>  
>  ;#define N 20
>  ;#include "limits.h"
> Index: test/Isl/CodeGen/single_loop.ll
> ===================================================================
> --- test/Isl/CodeGen/single_loop.ll
> +++ test/Isl/CodeGen/single_loop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
>  
>  ;#include <string.h>
>  ;#define N 1024
> Index: test/Isl/CodeGen/single_loop_int_max_iterations.ll
> ===================================================================
> --- test/Isl/CodeGen/single_loop_int_max_iterations.ll
> +++ test/Isl/CodeGen/single_loop_int_max_iterations.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze  -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze  -S < %s | FileCheck %s
>  
>  ;#define N 20
>  ;#include "limits.h"
> Index: test/Isl/CodeGen/single_loop_ll_max_iterations.ll
> ===================================================================
> --- test/Isl/CodeGen/single_loop_ll_max_iterations.ll
> +++ test/Isl/CodeGen/single_loop_ll_max_iterations.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze  -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze  -S < %s | FileCheck %s
>  
>  ;#include "limits.h"
>  ;#define N 20
> Index: test/Isl/CodeGen/single_loop_one_iteration.ll
> ===================================================================
> --- test/Isl/CodeGen/single_loop_one_iteration.ll
> +++ test/Isl/CodeGen/single_loop_one_iteration.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
>  
>  ;#define N 20
>  ;
> Index: test/Isl/CodeGen/single_loop_param.ll
> ===================================================================
> --- test/Isl/CodeGen/single_loop_param.ll
> +++ test/Isl/CodeGen/single_loop_param.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/CodeGen/single_loop_zero_iterations.ll
> ===================================================================
> --- test/Isl/CodeGen/single_loop_zero_iterations.ll
> +++ test/Isl/CodeGen/single_loop_zero_iterations.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -analyze  -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -analyze  -S < %s | FileCheck %s
>  
>  ;#define N 20
>  ;
> Index: test/Isl/CodeGen/split_edges.ll
> ===================================================================
> --- test/Isl/CodeGen/split_edges.ll
> +++ test/Isl/CodeGen/split_edges.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -verify-region-info -verify-dom-info -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -verify-region-info -verify-dom-info -S < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/CodeGen/split_edges_2.ll
> ===================================================================
> --- test/Isl/CodeGen/split_edges_2.ll
> +++ test/Isl/CodeGen/split_edges_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -verify-region-info -verify-dom-info -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -verify-region-info -verify-dom-info -S < %s | FileCheck %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
> Index: test/Isl/CodeGen/test-invalid-operands-for-select-2.ll
> ===================================================================
> --- test/Isl/CodeGen/test-invalid-operands-for-select-2.ll
> +++ test/Isl/CodeGen/test-invalid-operands-for-select-2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -S -polly-code-generator=isl -polly-codegen-isl -verify-loop-info < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -S -polly-code-generator=isl -polly-codegen-isl -verify-loop-info < %s | FileCheck %s
>  ;
>  ; Check that we do not crash as described here: http://llvm.org/bugs/show_bug.cgi?id=21167
>  ;
> Index: test/Isl/CodeGen/test-invalid-operands-for-select.ll
> ===================================================================
> --- test/Isl/CodeGen/test-invalid-operands-for-select.ll
> +++ test/Isl/CodeGen/test-invalid-operands-for-select.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -S -polly-code-generator=isl -polly-codegen-isl < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -S -polly-code-generator=isl -polly-codegen-isl < %s | FileCheck %s
>  ;
>  ; Check that we do not crash as described here: http://llvm.org/PR21167
>  ;
> Index: test/Isl/CodeGen/test.ll
> ===================================================================
> --- test/Isl/CodeGen/test.ll
> +++ test/Isl/CodeGen/test.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-ast -analyze  -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-ast -analyze  -S < %s | FileCheck %s
>  ; XFAIL: *
>  
>  ;int bar1();
> Index: test/Isl/CodeGen/two-scops-in-row.ll
> ===================================================================
> --- test/Isl/CodeGen/two-scops-in-row.ll
> +++ test/Isl/CodeGen/two-scops-in-row.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze -polly-ignore-aliasing < %s | FileCheck %s 
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -polly-ignore-aliasing < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze -polly-ignore-aliasing < %s | FileCheck %s 
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -polly-ignore-aliasing < %s
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/Isl/single_loop_param_less_equal.ll
> ===================================================================
> --- test/Isl/single_loop_param_less_equal.ll
> +++ test/Isl/single_loop_param_less_equal.ll
> @@ -1,6 +1,6 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl  -S < %s | FileCheck %s -check-prefix=CODEGEN
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl -loops -analyze < %s | FileCheck %s -check-prefix=LOOPS
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl  -S < %s | FileCheck %s -check-prefix=CODEGEN
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl -loops -analyze < %s | FileCheck %s -check-prefix=LOOPS
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/single_loop_param_less_than.ll
> ===================================================================
> --- test/Isl/single_loop_param_less_than.ll
> +++ test/Isl/single_loop_param_less_than.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-codegen-isl  -S < %s | FileCheck %s -check-prefix=CODEGEN
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-codegen-isl  -S < %s | FileCheck %s -check-prefix=CODEGEN
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/Isl/single_loop_uint_max_iterations.ll
> ===================================================================
> --- test/Isl/single_loop_uint_max_iterations.ll
> +++ test/Isl/single_loop_uint_max_iterations.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -S -analyze  < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -S -analyze  < %s | FileCheck %s
>  ; XFAIL: *
>  
>  ;#include "limits.h"
> Index: test/Isl/single_loop_ull_max_iterations.ll
> ===================================================================
> --- test/Isl/single_loop_ull_max_iterations.ll
> +++ test/Isl/single_loop_ull_max_iterations.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-no-early-exit -polly-ast -S -analyze  < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-no-early-exit -polly-ast -S -analyze  < %s | FileCheck %s
>  ; XFAIL: *
>  
>  ;#include "limits.h"
> Index: test/ScheduleOptimizer/2012-03-16-Empty-Domain.ll
> ===================================================================
> --- test/ScheduleOptimizer/2012-03-16-Empty-Domain.ll
> +++ test/ScheduleOptimizer/2012-03-16-Empty-Domain.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-opt-isl -S < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-opt-isl -S < %s
>  target datalayout = "e-p:32:32:32-i64:64:64-i32:32:32-i16:16:16-i1:32:32-f64:64:64-f32:32:32-a0:0-n32"
>  target triple = "hexagon-unknown-linux-gnu"
>  
> Index: test/ScheduleOptimizer/2012-04-16-Trivially-vectorizable-loops.ll
> ===================================================================
> --- test/ScheduleOptimizer/2012-04-16-Trivially-vectorizable-loops.ll
> +++ test/ScheduleOptimizer/2012-04-16-Trivially-vectorizable-loops.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-opt-isl %vector-opt < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-opt-isl %vector-opt < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScheduleOptimizer/2012-10-14-Zero-Bands.ll
> ===================================================================
> --- test/ScheduleOptimizer/2012-10-14-Zero-Bands.ll
> +++ test/ScheduleOptimizer/2012-10-14-Zero-Bands.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect-scops-in-regions-without-loops -polly-detect-scops-in-functions-without-loops -polly-opt-isl -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect-scops-in-regions-without-loops -polly-detect-scops-in-functions-without-loops -polly-opt-isl -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScheduleOptimizer/2013-04-11-Empty-Domain-two.ll
> ===================================================================
> --- test/ScheduleOptimizer/2013-04-11-Empty-Domain-two.ll
> +++ test/ScheduleOptimizer/2013-04-11-Empty-Domain-two.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-opt-isl -S < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-opt-isl -S < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScheduleOptimizer/computeout.ll
> ===================================================================
> --- test/ScheduleOptimizer/computeout.ll
> +++ test/ScheduleOptimizer/computeout.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt -S %loadPolly -basicaa -polly-opt-isl -polly-opt-fusion=max -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s 
> -; RUN: opt -S %loadPolly -basicaa -polly-opt-isl -polly-opt-fusion=max -polly-ast -analyze -polly-no-early-exit -polly-dependences-computeout=1 < %s | FileCheck %s -check-prefix=TIMEOUT
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-opt-isl -polly-opt-fusion=max -polly-ast -analyze -polly-no-early-exit < %s | FileCheck %s 
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-opt-isl -polly-opt-fusion=max -polly-ast -analyze -polly-no-early-exit -polly-dependences-computeout=1 < %s | FileCheck %s -check-prefix=TIMEOUT
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-pc-linux-gnu"
>  
> Index: test/ScheduleOptimizer/line-tiling-2.ll
> ===================================================================
> --- test/ScheduleOptimizer/line-tiling-2.ll
> +++ test/ScheduleOptimizer/line-tiling-2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-opt-isl -analyze -polly-no-tiling=0 -polly-ast -polly-tile-sizes=1,64 < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-opt-isl -analyze -polly-no-tiling=0 -polly-ast -polly-tile-sizes=1,64 < %s
>  ; CHECK: c0 += 1
>  ; CHECK: c1 += 64
>  ; CHECK: c1 <= c1 + 63
> Index: test/ScheduleOptimizer/line-tiling.ll
> ===================================================================
> --- test/ScheduleOptimizer/line-tiling.ll
> +++ test/ScheduleOptimizer/line-tiling.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-opt-isl -analyze -polly-no-tiling=0 -polly-ast -polly-tile-sizes=64,1 < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-opt-isl -analyze -polly-no-tiling=0 -polly-ast -polly-tile-sizes=64,1 < %s
>  ; CHECK: c0 += 64
>  ; CHECK: c1 += 1
>  ; CHECK: c0 <= c0 + 63
> Index: test/ScheduleOptimizer/prevectorization.ll
> ===================================================================
> --- test/ScheduleOptimizer/prevectorization.ll
> +++ test/ScheduleOptimizer/prevectorization.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt -S %loadPolly -basicaa -polly-opt-isl -polly-vectorizer=polly -polly-ast -analyze < %s | FileCheck %s 
> +; RUN: opt -S %loadPolly -polly-detect-unprofitable -basicaa -polly-opt-isl -polly-vectorizer=polly -polly-ast -analyze < %s | FileCheck %s 
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScheduleOptimizer/rectangular-tiling.ll
> ===================================================================
> --- test/ScheduleOptimizer/rectangular-tiling.ll
> +++ test/ScheduleOptimizer/rectangular-tiling.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-opt-isl -analyze -polly-no-tiling=0 -polly-ast -polly-tile-sizes=256,16 < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-opt-isl -analyze -polly-no-tiling=0 -polly-ast -polly-tile-sizes=256,16 < %s
>  ; CHECK: c0 += 256
>  ; CHECK: c1 += 16
>  ; CHECK: c0 <= c0 + 255
> Index: test/ScopDetect/aliasing_parametric_simple_1.ll
> ===================================================================
> --- test/ScopDetect/aliasing_parametric_simple_1.ll
> +++ test/ScopDetect/aliasing_parametric_simple_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-detect -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Valid Region for Scop:
>  ;
> Index: test/ScopDetect/aliasing_parametric_simple_2.ll
> ===================================================================
> --- test/ScopDetect/aliasing_parametric_simple_2.ll
> +++ test/ScopDetect/aliasing_parametric_simple_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-detect -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Valid Region for Scop:
>  ;
> Index: test/ScopDetect/aliasing_simple_1.ll
> ===================================================================
> --- test/ScopDetect/aliasing_simple_1.ll
> +++ test/ScopDetect/aliasing_simple_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-detect -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Valid Region for Scop:
>  ;
> Index: test/ScopDetect/aliasing_simple_2.ll
> ===================================================================
> --- test/ScopDetect/aliasing_simple_2.ll
> +++ test/ScopDetect/aliasing_simple_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-detect -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Valid Region for Scop:
>  ;
> Index: test/ScopDetect/base_pointer.ll
> ===================================================================
> --- test/ScopDetect/base_pointer.ll
> +++ test/ScopDetect/base_pointer.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
> Index: test/ScopDetect/cross_loop_non_single_exit.ll
> ===================================================================
> --- test/ScopDetect/cross_loop_non_single_exit.ll
> +++ test/ScopDetect/cross_loop_non_single_exit.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/ScopDetect/cross_loop_non_single_exit_2.ll
> ===================================================================
> --- test/ScopDetect/cross_loop_non_single_exit_2.ll
> +++ test/ScopDetect/cross_loop_non_single_exit_2.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/ScopDetect/dependency_to_phi_node_outside_of_region.ll
> ===================================================================
> --- test/ScopDetect/dependency_to_phi_node_outside_of_region.ll
> +++ test/ScopDetect/dependency_to_phi_node_outside_of_region.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopDetect/indvars.ll
> ===================================================================
> --- test/ScopDetect/indvars.ll
> +++ test/ScopDetect/indvars.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -analyze -polly-detect -polly-codegen-isl < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -analyze -polly-detect -polly-codegen-isl < %s | FileCheck %s
>  ;
>  ; When a region header is part of a loop, then all entering edges of this region
>  ; should not come from the loop but outside the region.
> Index: test/ScopDetect/intrinsics_1.ll
> ===================================================================
> --- test/ScopDetect/intrinsics_1.ll
> +++ test/ScopDetect/intrinsics_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-detect -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Valid Region for Scop: for.cond => for.end
>  ;
> Index: test/ScopDetect/intrinsics_2.ll
> ===================================================================
> --- test/ScopDetect/intrinsics_2.ll
> +++ test/ScopDetect/intrinsics_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-detect -analyze < %s | FileCheck %s
>  ;
>  ; Verify that we allow the lifetime markers for the tmp array.
>  ;
> Index: test/ScopDetect/intrinsics_3.ll
> ===================================================================
> --- test/ScopDetect/intrinsics_3.ll
> +++ test/ScopDetect/intrinsics_3.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-detect -analyze < %s | FileCheck %s
>  ;
>  ; Verify that we allow the misc intrinsics.
>  ;
> Index: test/ScopDetect/invalidate_scalar_evolution.ll
> ===================================================================
> --- test/ScopDetect/invalidate_scalar_evolution.ll
> +++ test/ScopDetect/invalidate_scalar_evolution.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect -analyze  < %s | FileCheck %s -check-prefix=CHECK
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze  < %s | FileCheck %s -check-prefix=CHECK
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/ScopDetect/keep_going_expansion.ll
> ===================================================================
> --- test/ScopDetect/keep_going_expansion.ll
> +++ test/ScopDetect/keep_going_expansion.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-detect-track-failures -polly-detect-keep-going -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-detect-track-failures -polly-detect-keep-going -polly-detect -analyze < %s | FileCheck %s
>  
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/ScopDetect/multidim_two_accesses_different_delinearization.ll
> ===================================================================
> --- test/ScopDetect/multidim_two_accesses_different_delinearization.ll
> +++ test/ScopDetect/multidim_two_accesses_different_delinearization.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopDetect/nested_loop_single_exit.ll
> ===================================================================
> --- test/ScopDetect/nested_loop_single_exit.ll
> +++ test/ScopDetect/nested_loop_single_exit.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -polly-codegen-isl -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -polly-codegen-isl -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i, j;
> Index: test/ScopDetect/parametric-multiply-in-scev.ll
> ===================================================================
> --- test/ScopDetect/parametric-multiply-in-scev.ll
> +++ test/ScopDetect/parametric-multiply-in-scev.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect-scops-in-regions-without-loops -polly-detect-scops-in-functions-without-loops -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect-scops-in-regions-without-loops -polly-detect-scops-in-functions-without-loops -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect-scops-in-regions-without-loops -polly-detect-scops-in-functions-without-loops -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect-scops-in-regions-without-loops -polly-detect-scops-in-functions-without-loops -polly-detect -analyze < %s | FileCheck %s
>  
>  
>  ;  foo(float *A, long n, long k) {
> Index: test/ScopDetect/remove_all_children.ll
> ===================================================================
> --- test/ScopDetect/remove_all_children.ll
> +++ test/ScopDetect/remove_all_children.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/ScopDetect/report-scop-location.ll
> ===================================================================
> --- test/ScopDetect/report-scop-location.ll
> +++ test/ScopDetect/report-scop-location.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect -polly-report -disable-output < %s  2>&1 | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -polly-report -disable-output < %s  2>&1 | FileCheck %s
>  target datalayout = "e-i64:64-f80:128-s:64-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopDetect/run_time_alias_check.ll
> ===================================================================
> --- test/ScopDetect/run_time_alias_check.ll
> +++ test/ScopDetect/run_time_alias_check.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect -polly-code-generator=isl -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -polly-code-generator=isl -analyze < %s | FileCheck %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/ScopDetect/sequential_loops.ll
> ===================================================================
> --- test/ScopDetect/sequential_loops.ll
> +++ test/ScopDetect/sequential_loops.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/ScopDetect/simple_loop.ll
> ===================================================================
> --- test/ScopDetect/simple_loop.ll
> +++ test/ScopDetect/simple_loop.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/ScopDetect/simple_loop_non_single_entry.ll
> ===================================================================
> --- test/ScopDetect/simple_loop_non_single_entry.ll
> +++ test/ScopDetect/simple_loop_non_single_entry.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/ScopDetect/simple_loop_non_single_exit.ll
> ===================================================================
> --- test/ScopDetect/simple_loop_non_single_exit.ll
> +++ test/ScopDetect/simple_loop_non_single_exit.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/ScopDetect/simple_loop_non_single_exit_2.ll
> ===================================================================
> --- test/ScopDetect/simple_loop_non_single_exit_2.ll
> +++ test/ScopDetect/simple_loop_non_single_exit_2.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/ScopDetect/simple_loop_two_phi_nodes.ll
> ===================================================================
> --- test/ScopDetect/simple_loop_two_phi_nodes.ll
> +++ test/ScopDetect/simple_loop_two_phi_nodes.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect  -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect  -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/ScopDetect/simple_loop_with_param.ll
> ===================================================================
> --- test/ScopDetect/simple_loop_with_param.ll
> +++ test/ScopDetect/simple_loop_with_param.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-detect -analyze  < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-detect -analyze  < %s | FileCheck %s
>  
>  ; void f(long A[], long N, long *init_ptr) {
>  ;   long i, j;
> Index: test/ScopDetect/simple_loop_with_param_2.ll
> ===================================================================
> --- test/ScopDetect/simple_loop_with_param_2.ll
> +++ test/ScopDetect/simple_loop_with_param_2.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -basicaa -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-detect -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], int N, int *init_ptr) {
>  ;   long i, j;
> Index: test/ScopDetect/simple_non_single_entry.ll
> ===================================================================
> --- test/ScopDetect/simple_non_single_entry.ll
> +++ test/ScopDetect/simple_non_single_entry.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect-scops-in-regions-without-loops -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-detect-scops-in-regions-without-loops -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect-scops-in-regions-without-loops -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect-scops-in-regions-without-loops -polly-detect -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], long N) {
>  ;   long i;
> Index: test/ScopDetect/skip_function_attribute.ll
> ===================================================================
> --- test/ScopDetect/skip_function_attribute.ll
> +++ test/ScopDetect/skip_function_attribute.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
>  ;
>  ; Verify polly skips this function
>  ;
> Index: test/ScopDetectionDiagnostics/ReportAlias-01.ll
> ===================================================================
> --- test/ScopDetectionDiagnostics/ReportAlias-01.ll
> +++ test/ScopDetectionDiagnostics/ReportAlias-01.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-use-runtime-alias-checks=false -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-use-runtime-alias-checks=false -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
>  
>  ;void f(int A[], int B[]) {
>  ;  for (int i=0; i<42; i++)
> Index: test/ScopDetectionDiagnostics/ReportDifferentElementSize.ll
> ===================================================================
> --- test/ScopDetectionDiagnostics/ReportDifferentElementSize.ll
> +++ test/ScopDetectionDiagnostics/ReportDifferentElementSize.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
>  
>  ; 1 void differenttypes(char *A)
>  ; 2 {
> Index: test/ScopDetectionDiagnostics/ReportFuncCall-01.ll
> ===================================================================
> --- test/ScopDetectionDiagnostics/ReportFuncCall-01.ll
> +++ test/ScopDetectionDiagnostics/ReportFuncCall-01.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1 | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1 | FileCheck %s
>  
>  ; #define N 1024
>  ; double invalidCall(double A[N]);
> Index: test/ScopDetectionDiagnostics/ReportLoopBound-01.ll
> ===================================================================
> --- test/ScopDetectionDiagnostics/ReportLoopBound-01.ll
> +++ test/ScopDetectionDiagnostics/ReportLoopBound-01.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
>  
>  ; void f(int A[], int n) {
>  ;   for (int i = 0; i < A[n]; i++)
> Index: test/ScopDetectionDiagnostics/ReportMultipleNonAffineAccesses.ll
> ===================================================================
> --- test/ScopDetectionDiagnostics/ReportMultipleNonAffineAccesses.ll
> +++ test/ScopDetectionDiagnostics/ReportMultipleNonAffineAccesses.ll
> @@ -1,9 +1,9 @@
> -; RUN: opt %loadPolly -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
> -; RUN: opt %loadPolly -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-detect-keep-going -analyze < %s 2>&1| FileCheck %s -check-prefix=ALL
> -; RUN: opt %loadPolly -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-delinearize -analyze < %s 2>&1| FileCheck %s -check-prefix=DELIN
> -; RUN: opt %loadPolly -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-delinearize -polly-detect-keep-going -analyze < %s 2>&1| FileCheck %s -check-prefix=DELIN-ALL
> -; RUN: opt %loadPolly -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-allow-nonaffine -analyze < %s 2>&1| FileCheck %s -check-prefix=NONAFFINE
> -; RUN: opt %loadPolly -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-delinearize -polly-allow-nonaffine -analyze < %s 2>&1| FileCheck %s -check-prefix=NONAFFINE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-detect-keep-going -analyze < %s 2>&1| FileCheck %s -check-prefix=ALL
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-delinearize -analyze < %s 2>&1| FileCheck %s -check-prefix=DELIN
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-delinearize -polly-detect-keep-going -analyze < %s 2>&1| FileCheck %s -check-prefix=DELIN-ALL
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-allow-nonaffine -analyze < %s 2>&1| FileCheck %s -check-prefix=NONAFFINE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -polly-delinearize -polly-allow-nonaffine -analyze < %s 2>&1| FileCheck %s -check-prefix=NONAFFINE
>  
>  ;  1 void manyaccesses(float A[restrict], long n, float B[restrict][n])
>  ;  2 {
> Index: test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll
> ===================================================================
> --- test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll
> +++ test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
>  
>  ; void f(int A[]) {
>  ;   for(int i=0; i<42; ++i)
> Index: test/ScopDetectionDiagnostics/ReportUnprofitable.ll
> ===================================================================
> --- /dev/null
> +++ test/ScopDetectionDiagnostics/ReportUnprofitable.ll
> @@ -0,0 +1,128 @@
> +; RUN: opt %loadPolly -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
> +target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
> +target triple = "x86_64-unknown-linux-gnu"
> +
> +; void onlyWrite(float *A) {
> +;   for (long i = 0; i < 100; i++)
> +;     A[i] = 0;
> +; }
> +; 
> +; void onlyRead(float *A) {
> +;   for (long i = 0; i < 100; i++)
> +;     A[i];
> +; }
> +
> +; CHECK: remark: /tmp/test.c:2:3: The following errors keep this region from being a Scop.
> +; CHECK: remark: /tmp/test.c:3:10: Invalid Scop candidate ends here.
> +
> +; CHECK: remark: /tmp/test.c:7:3: The following errors keep this region from being a Scop.
> +; CHECK: remark: /tmp/test.c:8:10: Invalid Scop candidate ends here.
> +
> +
> +; Function Attrs: nounwind uwtable
> +define void @onlyWrite(float* %A) #0 {
> +entry:
> +  call void @llvm.dbg.value(metadata float* %A, i64 0, metadata !14, metadata !15), !dbg !16
> +  call void @llvm.dbg.value(metadata i64 0, i64 0, metadata !17, metadata !15), !dbg !20
> +  br label %for.cond, !dbg !21
> +
> +for.cond:                                         ; preds = %for.inc, %entry
> +  %i.0 = phi i64 [ 0, %entry ], [ %inc, %for.inc ]
> +  %exitcond = icmp ne i64 %i.0, 100, !dbg !22
> +  br i1 %exitcond, label %for.body, label %for.end, !dbg !22
> +
> +for.body:                                         ; preds = %for.cond
> +  %arrayidx = getelementptr inbounds float* %A, i64 %i.0, !dbg !23
> +  store float 0.000000e+00, float* %arrayidx, align 4, !dbg !25
> +  br label %for.inc, !dbg !23
> +
> +for.inc:                                          ; preds = %for.body
> +  %inc = add nuw nsw i64 %i.0, 1, !dbg !26
> +  call void @llvm.dbg.value(metadata i64 %inc, i64 0, metadata !17, metadata !15), !dbg !20
> +  br label %for.cond, !dbg !27
> +
> +for.end:                                          ; preds = %for.cond
> +  ret void, !dbg !28
> +}
> +
> +; Function Attrs: nounwind readnone
> +declare void @llvm.dbg.declare(metadata, metadata, metadata) #1
> +
> +; Function Attrs: nounwind uwtable
> +define void @onlyRead(float* %A) #0 {
> +entry:
> +  call void @llvm.dbg.value(metadata float* %A, i64 0, metadata !29, metadata !15), !dbg !30
> +  call void @llvm.dbg.value(metadata i64 0, i64 0, metadata !31, metadata !15), !dbg !33
> +  br label %for.cond, !dbg !34
> +
> +for.cond:                                         ; preds = %for.inc, %entry
> +  %i.0 = phi i64 [ 0, %entry ], [ %inc, %for.inc ]
> +  %exitcond = icmp ne i64 %i.0, 100, !dbg !35
> +  br i1 %exitcond, label %for.body, label %for.end, !dbg !35
> +
> +for.body:                                         ; preds = %for.cond
> +  %arrayidx = getelementptr inbounds float* %A, i64 %i.0, !dbg !36
> +  %val = load float* %arrayidx, align 4, !dbg !38
> +  br label %for.inc, !dbg !36
> +
> +for.inc:                                          ; preds = %for.body
> +  %inc = add nuw nsw i64 %i.0, 1, !dbg !39
> +  call void @llvm.dbg.value(metadata i64 %inc, i64 0, metadata !31, metadata !15), !dbg !33
> +  br label %for.cond, !dbg !40
> +
> +for.end:                                          ; preds = %for.cond
> +  ret void, !dbg !41
> +}
> +
> +; Function Attrs: nounwind readnone
> +declare void @llvm.dbg.value(metadata, i64, metadata, metadata) #1
> +
> +attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
> +attributes #1 = { nounwind readnone }
> +
> +!llvm.dbg.cu = !{!0}
> +!llvm.module.flags = !{!11, !12}
> +!llvm.ident = !{!13}
> +
> +!0 = !{!"0x11\0012\00clang version 3.7.0  (llvm/trunk 229257)\000\00\000\00\001", !1, !2, !2, !3, !2, !2} ; [ DW_TAG_compile_unit ] [/home/grosser/Projects/polly/git/tools/polly//tmp/test.c] [DW_LANG_C99]
> +!1 = !{!"/tmp/test.c", !"/home/grosser/Projects/polly/git/tools/polly"}
> +!2 = !{}
> +!3 = !{!4, !10}
> +!4 = !{!"0x2e\00onlyWrite\00onlyWrite\00\001\000\001\000\000\00256\000\001", !1, !5, !6, null, void (float*)* @onlyWrite, null, null, !2} ; [ DW_TAG_subprogram ] [line 1] [def] [onlyWrite]
> +!5 = !{!"0x29", !1}                               ; [ DW_TAG_file_type ] [/home/grosser/Projects/polly/git/tools/polly//tmp/test.c]
> +!6 = !{!"0x15\00\000\000\000\000\000\000", null, null, null, !7, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
> +!7 = !{null, !8}
> +!8 = !{!"0xf\00\000\0064\0064\000\000", null, null, !9} ; [ DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from float]
> +!9 = !{!"0x24\00float\000\0032\0032\000\000\004", null, null} ; [ DW_TAG_base_type ] [float] [line 0, size 32, align 32, offset 0, enc DW_ATE_float]
> +!10 = !{!"0x2e\00onlyRead\00onlyRead\00\006\000\001\000\000\00256\000\006", !1, !5, !6, null, void (float*)* @onlyRead, null, null, !2} ; [ DW_TAG_subprogram ] [line 6] [def] [onlyRead]
> +!11 = !{i32 2, !"Dwarf Version", i32 4}
> +!12 = !{i32 2, !"Debug Info Version", i32 2}
> +!13 = !{!"clang version 3.7.0  (llvm/trunk 229257)"}
> +!14 = !{!"0x101\00A\0016777217\000", !4, !5, !8}  ; [ DW_TAG_arg_variable ] [A] [line 1]
> +!15 = !{!"0x102"}                                 ; [ DW_TAG_expression ]
> +!16 = !MDLocation(line: 1, column: 23, scope: !4)
> +!17 = !{!"0x100\00i\002\000", !18, !5, !19}       ; [ DW_TAG_auto_variable ] [i] [line 2]
> +!18 = !{!"0xb\002\003\000", !1, !4}               ; [ DW_TAG_lexical_block ] [/home/grosser/Projects/polly/git/tools/polly//tmp/test.c]
> +!19 = !{!"0x24\00long int\000\0064\0064\000\000\005", null, null} ; [ DW_TAG_base_type ] [long int] [line 0, size 64, align 64, offset 0, enc DW_ATE_signed]
> +!20 = !MDLocation(line: 2, column: 13, scope: !18)
> +!21 = !MDLocation(line: 2, column: 8, scope: !18)
> +!22 = !MDLocation(line: 2, column: 3, scope: !18)
> +!23 = !MDLocation(line: 3, column: 5, scope: !24)
> +!24 = !{!"0xb\002\003\001", !1, !18}              ; [ DW_TAG_lexical_block ] [/home/grosser/Projects/polly/git/tools/polly//tmp/test.c]
> +!25 = !MDLocation(line: 3, column: 10, scope: !24)
> +!26 = !MDLocation(line: 2, column: 30, scope: !24)
> +!27 = !MDLocation(line: 2, column: 3, scope: !24)
> +!28 = !MDLocation(line: 4, column: 1, scope: !4)
> +!29 = !{!"0x101\00A\0016777222\000", !10, !5, !8} ; [ DW_TAG_arg_variable ] [A] [line 6]
> +!30 = !MDLocation(line: 6, column: 22, scope: !10)
> +!31 = !{!"0x100\00i\007\000", !32, !5, !19}       ; [ DW_TAG_auto_variable ] [i] [line 7]
> +!32 = !{!"0xb\007\003\002", !1, !10}              ; [ DW_TAG_lexical_block ] [/home/grosser/Projects/polly/git/tools/polly//tmp/test.c]
> +!33 = !MDLocation(line: 7, column: 13, scope: !32)
> +!34 = !MDLocation(line: 7, column: 8, scope: !32)
> +!35 = !MDLocation(line: 7, column: 3, scope: !32)
> +!36 = !MDLocation(line: 8, column: 5, scope: !37)
> +!37 = !{!"0xb\007\003\003", !1, !32}              ; [ DW_TAG_lexical_block ] [/home/grosser/Projects/polly/git/tools/polly//tmp/test.c]
> +!38 = !MDLocation(line: 8, column: 10, scope: !37)
> +!39 = !MDLocation(line: 7, column: 30, scope: !37)
> +!40 = !MDLocation(line: 7, column: 3, scope: !37)
> +!41 = !MDLocation(line: 9, column: 1, scope: !10)
> Index: test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll
> ===================================================================
> --- test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll
> +++ test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -pass-remarks-missed="polly-detect" -polly-detect-track-failures -polly-detect -analyze < %s 2>&1| FileCheck %s
>  
>  ; struct b {
>  ;   double **b;
> Index: test/ScopInfo/20111108-Parameter-not-detected.ll
> ===================================================================
> --- test/ScopInfo/20111108-Parameter-not-detected.ll
> +++ test/ScopInfo/20111108-Parameter-not-detected.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/2012-03-16-Crash-because-of-unsigned-in-scev.ll
> ===================================================================
> --- test/ScopInfo/2012-03-16-Crash-because-of-unsigned-in-scev.ll
> +++ test/ScopInfo/2012-03-16-Crash-because-of-unsigned-in-scev.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  target datalayout = "e-p:32:32:32-i64:64:64-i32:32:32-i16:16:16-i1:32:32-f64:64:64-f32:32:32-a0:0-n32"
>  target triple = "hexagon-unknown-linux-gnu"
> Index: test/ScopInfo/Alias-0.ll
> ===================================================================
> --- test/ScopInfo/Alias-0.ll
> +++ test/ScopInfo/Alias-0.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
>  ; REQUIRES: asserts
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
> Index: test/ScopInfo/Alias-1.ll
> ===================================================================
> --- test/ScopInfo/Alias-1.ll
> +++ test/ScopInfo/Alias-1.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
>  ; REQUIRES: asserts
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
> Index: test/ScopInfo/Alias-2.ll
> ===================================================================
> --- test/ScopInfo/Alias-2.ll
> +++ test/ScopInfo/Alias-2.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
>  ; REQUIRES: asserts
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
> Index: test/ScopInfo/Alias-3.ll
> ===================================================================
> --- test/ScopInfo/Alias-3.ll
> +++ test/ScopInfo/Alias-3.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
>  ; REQUIRES: asserts
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
> Index: test/ScopInfo/Alias-4.ll
> ===================================================================
> --- test/ScopInfo/Alias-4.ll
> +++ test/ScopInfo/Alias-4.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=RTA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-analyze-ir -polly-use-runtime-alias-checks=false -analyze < %s -stats 2>&1 | FileCheck %s --check-prefix=NORTA
>  ; REQUIRES: asserts
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
> Index: test/ScopInfo/NonAffine/non_affine_but_sdiv.ll
> ===================================================================
> --- test/ScopInfo/NonAffine/non_affine_but_sdiv.ll
> +++ test/ScopInfo/NonAffine/non_affine_but_sdiv.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: ReadAccess := [Reduction Type: NONE] [Scalar: 0]
>  ; CHECK:   [N] -> { Stmt_for_body[i0] -> MemRef_A[o0] : (N >= 0 and 5o0 >= -4 + N + 5i0 and 5o0 <= N + 5i0) or (N <= -1 and 5o0 >= N + 5i0 and 5o0 <= 4 + N + 5i0) };
> Index: test/ScopInfo/aliasing_conditional_alias_groups_1.ll
> ===================================================================
> --- test/ScopInfo/aliasing_conditional_alias_groups_1.ll
> +++ test/ScopInfo/aliasing_conditional_alias_groups_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; Check that there is no alias group because we either access A or B never both.
>  ;
> Index: test/ScopInfo/aliasing_conditional_alias_groups_2.ll
> ===================================================================
> --- test/ScopInfo/aliasing_conditional_alias_groups_2.ll
> +++ test/ScopInfo/aliasing_conditional_alias_groups_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; Check that we create two alias groups since the mininmal/maximal accesses
>  ; depend on %b.
> Index: test/ScopInfo/aliasing_dead_access.ll
> ===================================================================
> --- test/ScopInfo/aliasing_dead_access.ll
> +++ test/ScopInfo/aliasing_dead_access.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -analyze -polly-scops < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -analyze -polly-scops < %s | FileCheck %s
>  ;
>  ; Check that RTC generation does not die when accesses are dead.
>  ;
> Index: test/ScopInfo/aliasing_many_parameters_not_all_involved.ll
> ===================================================================
> --- test/ScopInfo/aliasing_many_parameters_not_all_involved.ll
> +++ test/ScopInfo/aliasing_many_parameters_not_all_involved.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-scops -polly-code-generator=isl -polly-rtc-max-parameters=8 -analyze < %s | FileCheck %s --check-prefix=MAX8
> -; RUN: opt %loadPolly -polly-scops -polly-code-generator=isl -polly-rtc-max-parameters=7 -analyze < %s | FileCheck %s --check-prefix=MAX7
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-code-generator=isl -polly-rtc-max-parameters=8 -analyze < %s | FileCheck %s --check-prefix=MAX8
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-code-generator=isl -polly-rtc-max-parameters=7 -analyze < %s | FileCheck %s --check-prefix=MAX7
>  ;
>  ; Check that we allow this SCoP even though it has 10 parameters involved in posisbly aliasing accesses.
>  ; However, only 7 are involved in accesses through B, 8 through C and none in accesses through A.
> Index: test/ScopInfo/aliasing_multiple_alias_groups.ll
> ===================================================================
> --- test/ScopInfo/aliasing_multiple_alias_groups.ll
> +++ test/ScopInfo/aliasing_multiple_alias_groups.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-scops -analyze          < %s | FileCheck %s --check-prefix=NOAA
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-scops -analyze -tbaa    < %s | FileCheck %s --check-prefix=TBAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-scops -analyze          < %s | FileCheck %s --check-prefix=NOAA
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-scops -analyze -tbaa    < %s | FileCheck %s --check-prefix=TBAA
>  ;
>  ;    void jd(int *Int0, int *Int1, float *Float0, float *Float1) {
>  ;      for (int i = 0; i < 1024; i++) {
> Index: test/ScopInfo/assume_gep_bounds.ll
> ===================================================================
> --- test/ScopInfo/assume_gep_bounds.ll
> +++ test/ScopInfo/assume_gep_bounds.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  ;    void foo(float A[][20][30], long n, long m, long p) {
>  ;      for (long i = 0; i < n; i++)
> Index: test/ScopInfo/assume_gep_bounds_2.ll
> ===================================================================
> --- test/ScopInfo/assume_gep_bounds_2.ll
> +++ test/ScopInfo/assume_gep_bounds_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ;    void foo(float A[restrict][20], float B[restrict][20], long n, long m,
>  ;             long p) {
> Index: test/ScopInfo/bug_2010_10_22.ll
> ===================================================================
> --- test/ScopInfo/bug_2010_10_22.ll
> +++ test/ScopInfo/bug_2010_10_22.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-analyze-ir < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-analyze-ir < %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/ScopInfo/bug_2011_1_5.ll
> ===================================================================
> --- test/ScopInfo/bug_2011_1_5.ll
> +++ test/ScopInfo/bug_2011_1_5.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-analyze-ir -analyze < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-analyze-ir -analyze < %s
>  
>  ; Bug description: Alias Analysis thinks IntToPtrInst aliases with alloca instructions created by IndependentBlocks Pass.
>  ;                  This will trigger the assertion when we are verifying the SCoP after IndependentBlocks.
> Index: test/ScopInfo/bug_scev_not_fully_eval.ll
> ===================================================================
> --- test/ScopInfo/bug_scev_not_fully_eval.ll
> +++ test/ScopInfo/bug_scev_not_fully_eval.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-detect -analyze  < %s | not FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze  < %s | not FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/cond_constant_in_loop.ll
> ===================================================================
> --- test/ScopInfo/cond_constant_in_loop.ll
> +++ test/ScopInfo/cond_constant_in_loop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  ;void f(long a[], long N, long M) {
>  ;  long i, j, k;
> Index: test/ScopInfo/cond_in_loop.ll
> ===================================================================
> --- test/ScopInfo/cond_in_loop.ll
> +++ test/ScopInfo/cond_in_loop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-analyze-ir  -analyze < %s | not FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-analyze-ir  -analyze < %s | not FileCheck %s
>  
>  ;void f(long a[], long N, long M) {
>  ;  long i, j, k;
> Index: test/ScopInfo/constant_start_integer.ll
> ===================================================================
> --- test/ScopInfo/constant_start_integer.ll
> +++ test/ScopInfo/constant_start_integer.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/delinearize-together-all-data-refs.ll
> ===================================================================
> --- test/ScopInfo/delinearize-together-all-data-refs.ll
> +++ test/ScopInfo/delinearize-together-all-data-refs.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  
>  ; void foo(long n, long m, long o, double A[n][m][o]) {
>  ;   for (long i = 0; i < n-3; i++)
> Index: test/ScopInfo/escaping_empty_scop.ll
> ===================================================================
> --- test/ScopInfo/escaping_empty_scop.ll
> +++ test/ScopInfo/escaping_empty_scop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -disable-polly-intra-scop-scalar-to-array -polly-model-phi-nodes -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -disable-polly-intra-scop-scalar-to-array -polly-model-phi-nodes -analyze < %s | FileCheck %s
>  ;
>  ;    void g();
>  ;    int f(int *A) {
> Index: test/ScopInfo/independent-blocks-never-stop-on-big-scop.ll
> ===================================================================
> --- test/ScopInfo/independent-blocks-never-stop-on-big-scop.ll
> +++ test/ScopInfo/independent-blocks-never-stop-on-big-scop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-independent < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-independent < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/integers.ll
> ===================================================================
> --- test/ScopInfo/integers.ll
> +++ test/ScopInfo/integers.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  ; Check that we correctly convert integers to isl values.
>  
> Index: test/ScopInfo/isl_aff_out_of_bounds.ll
> ===================================================================
> --- test/ScopInfo/isl_aff_out_of_bounds.ll
> +++ test/ScopInfo/isl_aff_out_of_bounds.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-detect < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-detect < %s
>  
>  ; Used to fail with:
>  ; ../../isl/isl_aff.c:591: position out of bounds
> Index: test/ScopInfo/loop_affine_bound_0.ll
> ===================================================================
> --- test/ScopInfo/loop_affine_bound_0.ll
> +++ test/ScopInfo/loop_affine_bound_0.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  ; void f(long a[][128], long N, long M) {
>  ;   long i, j;
> Index: test/ScopInfo/loop_affine_bound_1.ll
> ===================================================================
> --- test/ScopInfo/loop_affine_bound_1.ll
> +++ test/ScopInfo/loop_affine_bound_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  ;void f(long a[][128], long N, long M) {
>  ;  long i, j;
> Index: test/ScopInfo/loop_affine_bound_2.ll
> ===================================================================
> --- test/ScopInfo/loop_affine_bound_2.ll
> +++ test/ScopInfo/loop_affine_bound_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  ; void f(long a[][128], long N, long M) {
>  ;   long i, j;
> Index: test/ScopInfo/loop_carry.ll
> ===================================================================
> --- test/ScopInfo/loop_carry.ll
> +++ test/ScopInfo/loop_carry.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-prepare -polly-scops -analyze  < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-prepare -polly-scops -analyze  < %s | FileCheck %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-linux-gnu"
> Index: test/ScopInfo/max-loop-depth.ll
> ===================================================================
> --- test/ScopInfo/max-loop-depth.ll
> +++ test/ScopInfo/max-loop-depth.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ;    void bar();
>  ;    void foo(int *A, int *B, long int N, long int M) {
> Index: test/ScopInfo/multi-scop.ll
> ===================================================================
> --- test/ScopInfo/multi-scop.ll
> +++ test/ScopInfo/multi-scop.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -polly-detect -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-scops -analyze < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-detect -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_2d-diagonal-matrix.ll
> ===================================================================
> --- test/ScopInfo/multidim_2d-diagonal-matrix.ll
> +++ test/ScopInfo/multidim_2d-diagonal-matrix.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_2d_outer_parametric_offset.ll
> ===================================================================
> --- test/ScopInfo/multidim_2d_outer_parametric_offset.ll
> +++ test/ScopInfo/multidim_2d_outer_parametric_offset.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_2d_parametric_array_static_loop_bounds.ll
> ===================================================================
> --- test/ScopInfo/multidim_2d_parametric_array_static_loop_bounds.ll
> +++ test/ScopInfo/multidim_2d_parametric_array_static_loop_bounds.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_3d_parametric_array_static_loop_bounds.ll
> ===================================================================
> --- test/ScopInfo/multidim_3d_parametric_array_static_loop_bounds.ll
> +++ test/ScopInfo/multidim_3d_parametric_array_static_loop_bounds.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_ivs_and_integer_offsets_3d.ll
> ===================================================================
> --- test/ScopInfo/multidim_ivs_and_integer_offsets_3d.ll
> +++ test/ScopInfo/multidim_ivs_and_integer_offsets_3d.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_ivs_and_parameteric_offsets_3d.ll
> ===================================================================
> --- test/ScopInfo/multidim_ivs_and_parameteric_offsets_3d.ll
> +++ test/ScopInfo/multidim_ivs_and_parameteric_offsets_3d.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_nested_start_integer.ll
> ===================================================================
> --- test/ScopInfo/multidim_nested_start_integer.ll
> +++ test/ScopInfo/multidim_nested_start_integer.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_nested_start_share_parameter.ll
> ===================================================================
> --- test/ScopInfo/multidim_nested_start_share_parameter.ll
> +++ test/ScopInfo/multidim_nested_start_share_parameter.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_only_ivs_2d.ll
> ===================================================================
> --- test/ScopInfo/multidim_only_ivs_2d.ll
> +++ test/ScopInfo/multidim_only_ivs_2d.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_only_ivs_3d.ll
> ===================================================================
> --- test/ScopInfo/multidim_only_ivs_3d.ll
> +++ test/ScopInfo/multidim_only_ivs_3d.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_only_ivs_3d_cast.ll
> ===================================================================
> --- test/ScopInfo/multidim_only_ivs_3d_cast.ll
> +++ test/ScopInfo/multidim_only_ivs_3d_cast.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  
>  ; void foo(int n, int m, int o, double A[n][m][o]) {
>  ;
> Index: test/ScopInfo/multidim_only_ivs_3d_reverse.ll
> ===================================================================
> --- test/ScopInfo/multidim_only_ivs_3d_reverse.ll
> +++ test/ScopInfo/multidim_only_ivs_3d_reverse.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-delinearize < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/multidim_single_and_multidim_array.ll
> ===================================================================
> --- test/ScopInfo/multidim_single_and_multidim_array.ll
> +++ test/ScopInfo/multidim_single_and_multidim_array.ll
> @@ -1,7 +1,7 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-scops -polly-allow-nonaffine -analyze < %s | FileCheck %s --check-prefix=NONAFFINE
> -; RUN: opt %loadPolly -polly-scops -polly-delinearize -analyze < %s | FileCheck %s --check-prefix=DELIN
> -; RUN: opt %loadPolly -polly-scops -polly-delinearize -polly-allow-nonaffine -analyze < %s | FileCheck %s --check-prefix=DELIN
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-allow-nonaffine -analyze < %s | FileCheck %s --check-prefix=NONAFFINE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-delinearize -analyze < %s | FileCheck %s --check-prefix=DELIN
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-delinearize -polly-allow-nonaffine -analyze < %s | FileCheck %s --check-prefix=DELIN
>  
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
>  
> Index: test/ScopInfo/non_affine_access.ll
> ===================================================================
> --- test/ScopInfo/non_affine_access.ll
> +++ test/ScopInfo/non_affine_access.ll
> @@ -1,7 +1,7 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-scops -polly-delinearize -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -polly-scops -polly-allow-nonaffine -analyze < %s | FileCheck %s -check-prefix=NONAFFINE
> -; RUN: opt %loadPolly -polly-scops -polly-delinearize -polly-allow-nonaffine -analyze < %s | FileCheck %s -check-prefix=NONAFFINE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-delinearize -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-allow-nonaffine -analyze < %s | FileCheck %s -check-prefix=NONAFFINE
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-delinearize -polly-allow-nonaffine -analyze < %s | FileCheck %s -check-prefix=NONAFFINE
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-apple-macosx10.7.2"
>  
> Index: test/ScopInfo/non_affine_parametric_loop.ll
> ===================================================================
> --- test/ScopInfo/non_affine_parametric_loop.ll
> +++ test/ScopInfo/non_affine_parametric_loop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-scops -analyze -polly-allow-nonaffine < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-scops -analyze -polly-allow-nonaffine < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/parameter_product.ll
> ===================================================================
> --- test/ScopInfo/parameter_product.ll
> +++ test/ScopInfo/parameter_product.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -S < %s | FileCheck %s
>  ;
>  ; int n, m;
>  ; void foo(char* __restrict a)
> Index: test/ScopInfo/phi_condition_modeling_1.ll
> ===================================================================
> --- test/ScopInfo/phi_condition_modeling_1.ll
> +++ test/ScopInfo/phi_condition_modeling_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -analyze -polly-scops -polly-model-phi-nodes < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -analyze -polly-scops -polly-model-phi-nodes < %s | FileCheck %s
>  ;
>  ;    void f(int *A, int c, int N) {
>  ;      int tmp;
> Index: test/ScopInfo/phi_condition_modeling_2.ll
> ===================================================================
> --- test/ScopInfo/phi_condition_modeling_2.ll
> +++ test/ScopInfo/phi_condition_modeling_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -analyze -polly-scops -disable-polly-intra-scop-scalar-to-array -polly-model-phi-nodes < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -analyze -polly-scops -disable-polly-intra-scop-scalar-to-array -polly-model-phi-nodes < %s | FileCheck %s
>  ;
>  ;    void f(int *A, int c, int N) {
>  ;      int tmp;
> Index: test/ScopInfo/phi_conditional_simple_1.ll
> ===================================================================
> --- test/ScopInfo/phi_conditional_simple_1.ll
> +++ test/ScopInfo/phi_conditional_simple_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -analyze -polly-scops -polly-model-phi-nodes < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -analyze -polly-scops -polly-model-phi-nodes < %s | FileCheck %s
>  ;
>  ;    void jd(int *A, int c) {
>  ;      for (int i = 0; i < 1024; i++) {
> Index: test/ScopInfo/phi_loop_carried_float.ll
> ===================================================================
> --- test/ScopInfo/phi_loop_carried_float.ll
> +++ test/ScopInfo/phi_loop_carried_float.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -polly-model-phi-nodes -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-model-phi-nodes -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
>  ;
>  ;    float f(float *A, int N) {
>  ;      float tmp = 0;
> Index: test/ScopInfo/phi_not_grouped_at_top.ll
> ===================================================================
> --- test/ScopInfo/phi_not_grouped_at_top.ll
> +++ test/ScopInfo/phi_not_grouped_at_top.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-prepare  -analyze  < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-prepare  -analyze  < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-linux-gnu"
>  
> Index: test/ScopInfo/phi_scalar_simple_1.ll
> ===================================================================
> --- test/ScopInfo/phi_scalar_simple_1.ll
> +++ test/ScopInfo/phi_scalar_simple_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -polly-model-phi-nodes -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-model-phi-nodes -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
>  ;
>  ;    int jd(int *restrict A, int x, int N) {
>  ;      for (int i = 1; i < N; i++)
> Index: test/ScopInfo/phi_scalar_simple_2.ll
> ===================================================================
> --- test/ScopInfo/phi_scalar_simple_2.ll
> +++ test/ScopInfo/phi_scalar_simple_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -polly-model-phi-nodes -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-model-phi-nodes -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
>  ;
>  ;    int jd(int *restrict A, int x, int N, int c) {
>  ;      for (int i = 0; i < N; i++)
> Index: test/ScopInfo/phi_with_invoke_edge.ll
> ===================================================================
> --- test/ScopInfo/phi_with_invoke_edge.ll
> +++ test/ScopInfo/phi_with_invoke_edge.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-prepare -polly-detect  -analyze  < %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-prepare -polly-detect  -analyze  < %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-linux-gnu"
>  
> Index: test/ScopInfo/pointer-type-expressions.ll
> ===================================================================
> --- test/ScopInfo/pointer-type-expressions.ll
> +++ test/ScopInfo/pointer-type-expressions.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  ; void f(int a[], int N, float *P) {
>  ;   int i;
> Index: test/ScopInfo/reduction_alternating_base.ll
> ===================================================================
> --- test/ScopInfo/reduction_alternating_base.ll
> +++ test/ScopInfo/reduction_alternating_base.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; FIXME: We cannot detect this SCoP yet but as soon as we can we should check
>  ;        that the reduction is detected!
> Index: test/ScopInfo/reduction_chain_partially_outside_the_scop.ll
> ===================================================================
> --- test/ScopInfo/reduction_chain_partially_outside_the_scop.ll
> +++ test/ScopInfo/reduction_chain_partially_outside_the_scop.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Reduction Type: NONE
>  ;
> Index: test/ScopInfo/reduction_disabled_multiplicative.ll
> ===================================================================
> --- test/ScopInfo/reduction_disabled_multiplicative.ll
> +++ test/ScopInfo/reduction_disabled_multiplicative.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt -basicaa %loadPolly -polly-scops -analyze -polly-disable-multiplicative-reductions < %s | FileCheck %s
> +; RUN: opt -basicaa %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-disable-multiplicative-reductions < %s | FileCheck %s
>  ;
>  ; CHECK: ReadAccess :=       [Reduction Type: +
>  ; CHECK:     { Stmt_for_body[i0] -> MemRef_sum[0] };
> Index: test/ScopInfo/reduction_escaping_intermediate.ll
> ===================================================================
> --- test/ScopInfo/reduction_escaping_intermediate.ll
> +++ test/ScopInfo/reduction_escaping_intermediate.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; void f(int N, int * restrict sums, int * restrict escape) {
>  ;   int i, j;
> Index: test/ScopInfo/reduction_escaping_intermediate_2.ll
> ===================================================================
> --- test/ScopInfo/reduction_escaping_intermediate_2.ll
> +++ test/ScopInfo/reduction_escaping_intermediate_2.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; void f(int N, int * restrict sums, int * restrict escape) {
>  ;   int i, j;
> Index: test/ScopInfo/reduction_invalid_different_operators.ll
> ===================================================================
> --- test/ScopInfo/reduction_invalid_different_operators.ll
> +++ test/ScopInfo/reduction_invalid_different_operators.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -basicaa -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; int f() {
>  ;   int i, sum = 0, sth = 0;
> Index: test/ScopInfo/reduction_invalid_overlapping_accesses.ll
> ===================================================================
> --- test/ScopInfo/reduction_invalid_overlapping_accesses.ll
> +++ test/ScopInfo/reduction_invalid_overlapping_accesses.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; void f(int *sums) {
>  ;   int i, j;
> Index: test/ScopInfo/reduction_multiple_loops_array_sum.ll
> ===================================================================
> --- test/ScopInfo/reduction_multiple_loops_array_sum.ll
> +++ test/ScopInfo/reduction_multiple_loops_array_sum.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt -basicaa %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt -basicaa %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Stmt_for_body
>  ; CHECK: Reduction Type: *
> Index: test/ScopInfo/reduction_multiple_loops_array_sum_1.ll
> ===================================================================
> --- test/ScopInfo/reduction_multiple_loops_array_sum_1.ll
> +++ test/ScopInfo/reduction_multiple_loops_array_sum_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt -basicaa %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt -basicaa %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Stmt_for_body
>  ; CHECK: Reduction Type: NONE
> Index: test/ScopInfo/reduction_multiple_simple_binary.ll
> ===================================================================
> --- test/ScopInfo/reduction_multiple_simple_binary.ll
> +++ test/ScopInfo/reduction_multiple_simple_binary.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt -basicaa %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt -basicaa %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: ReadAccess :=       [Reduction Type: NONE
>  ; CHECK:     { Stmt_for_body[i0] -> MemRef_A[1 + i0] };
> Index: test/ScopInfo/reduction_non_overlapping_chains.ll
> ===================================================================
> --- test/ScopInfo/reduction_non_overlapping_chains.ll
> +++ test/ScopInfo/reduction_non_overlapping_chains.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Reduction Type: +
>  ; CHECK: Reduction Type: +
> Index: test/ScopInfo/reduction_only_reduction_like_access.ll
> ===================================================================
> --- test/ScopInfo/reduction_only_reduction_like_access.ll
> +++ test/ScopInfo/reduction_only_reduction_like_access.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Reduction Type: +
>  ;
> Index: test/ScopInfo/reduction_simple_fp.ll
> ===================================================================
> --- test/ScopInfo/reduction_simple_fp.ll
> +++ test/ScopInfo/reduction_simple_fp.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Function: f_no_fast_math
>  ; CHECK: Reduction Type: NONE
> Index: test/ScopInfo/reduction_simple_w_constant.ll
> ===================================================================
> --- test/ScopInfo/reduction_simple_w_constant.ll
> +++ test/ScopInfo/reduction_simple_w_constant.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Reduction Type: +
>  ;
> Index: test/ScopInfo/reduction_simple_w_iv.ll
> ===================================================================
> --- test/ScopInfo/reduction_simple_w_iv.ll
> +++ test/ScopInfo/reduction_simple_w_iv.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Reduction Type: +
>  ;
> Index: test/ScopInfo/reduction_two_identical_reads.ll
> ===================================================================
> --- test/ScopInfo/reduction_two_identical_reads.ll
> +++ test/ScopInfo/reduction_two_identical_reads.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; CHECK: Reduction Type: NONE
>  ;
> Index: test/ScopInfo/run-time-check-many-parameters.ll
> ===================================================================
> --- test/ScopInfo/run-time-check-many-parameters.ll
> +++ test/ScopInfo/run-time-check-many-parameters.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -polly-code-generator=isl -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -polly-code-generator=isl -analyze < %s | FileCheck %s
>  ;
>  ; A valid Scop would print the list of it's statements, we check that we do not
>  ; see that list.
> Index: test/ScopInfo/run-time-check-read-only-arrays.ll
> ===================================================================
> --- test/ScopInfo/run-time-check-read-only-arrays.ll
> +++ test/ScopInfo/run-time-check-read-only-arrays.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-code-generator=isl -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-code-generator=isl -polly-scops -analyze < %s | FileCheck %s
>  ;
>  ; void foo(float *A, float *B, float *C, long N) {
>  ; 	for (long i = 0; i < N; i++)
> Index: test/ScopInfo/scalar.ll
> ===================================================================
> --- test/ScopInfo/scalar.ll
> +++ test/ScopInfo/scalar.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -disable-polly-intra-scop-scalar-to-array < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -disable-polly-intra-scop-scalar-to-array < %s | FileCheck %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/ScopInfo/scalar_dependence_cond_br.ll
> ===================================================================
> --- test/ScopInfo/scalar_dependence_cond_br.ll
> +++ test/ScopInfo/scalar_dependence_cond_br.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -disable-polly-intra-scop-scalar-to-array -polly-model-phi-nodes -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -disable-polly-intra-scop-scalar-to-array -polly-model-phi-nodes -analyze < %s | FileCheck %s
>  ;
>  ;    void f(int *A, int c, int d) {
>  ;      for (int i = 0; i < 1024; i++)
> Index: test/ScopInfo/simple_loop_1.ll
> ===================================================================
> --- test/ScopInfo/simple_loop_1.ll
> +++ test/ScopInfo/simple_loop_1.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  ; void f(int a[], int N) {
>  ;   int i;
> Index: test/ScopInfo/simple_nonaffine_loop_not.ll
> ===================================================================
> --- test/ScopInfo/simple_nonaffine_loop_not.ll
> +++ test/ScopInfo/simple_nonaffine_loop_not.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | not FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | not FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
>  target triple = "x86_64-apple-macosx10.7.2"
>  
> Index: test/ScopInfo/smax.ll
> ===================================================================
> --- test/ScopInfo/smax.ll
> +++ test/ScopInfo/smax.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  target datalayout = "e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:64:128-a0:0:32-n32-S64"
>  target triple = "thumbv7-none-linux-gnueabi"
>  
> Index: test/ScopInfo/undef_in_cond.ll
> ===================================================================
> --- test/ScopInfo/undef_in_cond.ll
> +++ test/ScopInfo/undef_in_cond.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  
> Index: test/ScopInfo/unsigned-condition.ll
> ===================================================================
> --- test/ScopInfo/unsigned-condition.ll
> +++ test/ScopInfo/unsigned-condition.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze -polly-allow-unsigned < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze -polly-allow-unsigned < %s | FileCheck %s
>  
>  ; void f(int a[], int N, unsigned P) {
>  ;   int i;
> Index: test/TempScop/inter_bb_scalar_dep.ll
> ===================================================================
> --- test/TempScop/inter_bb_scalar_dep.ll
> +++ test/TempScop/inter_bb_scalar_dep.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir  -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir  -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], int N, int *init_ptr) {
>  ;   long i, j;
> Index: test/TempScop/intra_and_inter_bb_scalar_dep.ll
> ===================================================================
> --- test/TempScop/intra_and_inter_bb_scalar_dep.ll
> +++ test/TempScop/intra_and_inter_bb_scalar_dep.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], int N, int *init_ptr) {
>  ;   long i, j;
> Index: test/TempScop/intra_bb_scalar_dep.ll
> ===================================================================
> --- test/TempScop/intra_bb_scalar_dep.ll
> +++ test/TempScop/intra_bb_scalar_dep.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir  -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir  -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
>  
>  ; void f(long A[], int N, int *init_ptr) {
>  ;   long i, j;
> Index: test/TempScop/nested-loops.ll
> ===================================================================
> --- test/TempScop/nested-loops.ll
> +++ test/TempScop/nested-loops.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -analyze < %s | FileCheck %s
>  
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
>  target triple = "x86_64-unknown-linux-gnu"
> Index: test/TempScop/not-a-reduction.ll
> ===================================================================
> --- test/TempScop/not-a-reduction.ll
> +++ test/TempScop/not-a-reduction.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-analyze-ir -analyze < %s 2>&1 | not FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-analyze-ir -analyze < %s 2>&1 | not FileCheck %s
>  
>  ;#define TYPE float
>  ;#define NUM 4
> Index: test/TempScop/scalar_to_array.ll
> ===================================================================
> --- test/TempScop/scalar_to_array.ll
> +++ test/TempScop/scalar_to_array.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir -disable-polly-intra-scop-scalar-to-array -analyze < %s | FileCheck %s
>  
>  ; ModuleID = 'scalar_to_array.ll'
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
> Index: test/TempScop/tempscop-printing.ll
> ===================================================================
> --- test/TempScop/tempscop-printing.ll
> +++ test/TempScop/tempscop-printing.ll
> @@ -1,5 +1,5 @@
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir -analyze < %s | FileCheck %s
> -; RUN: opt %loadPolly -basicaa -polly-analyze-ir -analyze -disable-polly-intra-scop-scalar-to-array < %s | FileCheck %s -check-prefix=SCALARACCESS
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir -analyze < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -basicaa -polly-analyze-ir -analyze -disable-polly-intra-scop-scalar-to-array < %s | FileCheck %s -check-prefix=SCALARACCESS
>  
>  ; void f(long A[], int N, int *init_ptr) {
>  ;   long i, j;
> Index: test/polly.ll
> ===================================================================
> --- test/polly.ll
> +++ test/polly.ll
> @@ -1,4 +1,4 @@
> -; RUN: opt %loadPolly -polly-scops -S < %s | FileCheck %s
> +; RUN: opt %loadPolly -polly-detect-unprofitable -polly-scops -S < %s | FileCheck %s
>  target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
>  target triple = "x86_64-unknown-linux-gnu"
>  define void @foo() nounwind {


-- 

Johannes Doerfert
Researcher / PhD Student

Compiler Design Lab (Prof. Hack)
Saarland University, Computer Science
Building E1.3, Room 4.31

Tel. +49 (0)681 302-57521 : doerfert at cs.uni-saarland.de
Fax. +49 (0)681 302-3065  : http://www.cdl.uni-saarland.de/people/doerfert
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 213 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150219/60b3c95a/attachment.sig>


More information about the llvm-commits mailing list