1. 11 Aug, 2010 40 commits
    • Add testcase for PR20742. · 5df5f257
      2010-07-20  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* gcc.dg/tree-ssa/pr20742.c: New.
      
      From-SVN: r163150
      Sebastian Pop committed
    • Unshare the scev before code generating it. · 6f23dd91
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* sese.c (rename_uses): Call unshare_expr before force_gimple_operand.
      
      	* gcc.dg/graphite/id-23.c: New.
      
      From-SVN: r163149
      Sebastian Pop committed
    • Do not rewrite out of SSA scalar phi nodes that can be scev_analyzable_p. · 87b28340
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (reduction_phi_p): Do not rewrite out of
      	SSA scalar phi nodes that can be scev_analyzable_p.
      
      	* gfortran.dg/graphite/id-20.f: Adjust testcase.
      
      From-SVN: r163148
      Sebastian Pop committed
    • Correctly handle SSA_NAME_IS_DEFAULT_DEF in rewrite_close_phi_out_of_ssa. · 3dd2dd57
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Correctly
      	handle SSA_NAME_IS_DEFAULT_DEF.
      
      From-SVN: r163147
      Sebastian Pop committed
    • Add testcase for PR42729 and fix handling of gimple_debug info. · a0dd1502
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* sese.c (rename_uses): Handl unconditionally gimple_debug statements.
      
      	* gcc.dg/graphite/pr42729.c: New.
      
      From-SVN: r163146
      Sebastian Pop committed
    • Special case non close-phi nodes with one argument in rewrite_close_phi_out_of_ssa. · 8af6d9cd
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Special
      	case non close-phi nodes with one argument.
      
      From-SVN: r163145
      Sebastian Pop committed
    • Scevs could be expressions without chrecs and still be scev_analyzable_p. · f36fc876
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* sese.h (scev_analyzable_p): Scevs could be expressions without
      	chrecs and still be scev_analyzable_p.
      
      From-SVN: r163144
      Sebastian Pop committed
    • Bump the size of scevs. · 57fe3c87
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
      
      From-SVN: r163143
      Sebastian Pop committed
    • Remove uses of loop->single_iv. · a0d1afb3
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* cfgloop.c (alloc_loop): Remove initialization of loop->single_iv.
      	* cfgloop.h (struct loop): Remove single_iv field.
      	* graphite-sese-to-poly.c (graphite_loop_normal_form): Removed.
      	(scop_canonicalize_loops): Removed.
      	(scop_ivs_can_be_represented): Do not use loop->single_iv.  Iterate
      	over all the loop phi nodes in loop->header.
      	(build_poly_scop): Remove use of scop_canonicalize_loops.
      
      From-SVN: r163142
      Sebastian Pop committed
    • Also handle GIMPLE_CALLs in rewrite_cross_bb_scalar_deps. · dba9acfa
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Also
      	handle GIMPLE_CALL.
      
      From-SVN: r163141
      Sebastian Pop committed
    • chrec_apply should only apply to the specified variable. · 8b059232
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-chrec.c (chrec_apply): Should only apply to the specified
      	variable.  Also handle multivariate chains of recurrences that
      	satisfy evolution_function_is_affine_p.  Also handle CASE_CONVERT.
      
      From-SVN: r163140
      Sebastian Pop committed
    • Remove expand_scalar_variables_ hack. · 2e286fd2
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-clast-to-gimple.c (debug_clast_name_index): Removed.
      	(debug_clast_name_indexes_1): Removed.
      	(debug_clast_name_indexes): Removed.
      	(pbb_to_depth_to_oldiv): Removed.
      	(build_iv_mapping): Replace the use of rename_map with iv_map.
      	(translate_clast_user): Remove uses of rename_map.  Allocate and
      	free iv_map.
      	(translate_clast_for_loop): Remove uses of rename_map.
      	(translate_clast_for): Same.
      	(translate_clast_guard): Same.
      	(translate_clast): Same.
      	(gloog): Same.
      	* graphite-clast-to-gimple.h (debug_clast_name_indexes): Removed.
      	* graphite-sese-to-poly.c (scev_analyzable_p): Moved...
      	* sese.c (set_rename): Now static.
      	(rename_variables_in_stmt): Removed.
      	(rename_uses): New.
      	(is_parameter): Removed.
      	(is_iv): Removed.
      	(expand_scalar_variables_call): Removed.
      	(expand_scalar_variables_ssa_name): Removed.
      	(expand_scalar_variables_expr): Removed.
      	(expand_scalar_variables_stmt): Removed.
      	(expand_scalar_variables): Removed.
      	(rename_variables): Removed.
      	(remove_condition): Removed.
      	(get_true_edge_from_guard_bb): Removed.
      	(get_false_edge_from_guard_bb): Removed.
      	(struct igp): Removed.
      	(default_before_guard): Removed.
      	(convert_for_phi_arg): Removed.
      	(add_guard_exit_phis): Removed.
      	(insert_guard_phis): Removed.
      	(graphite_copy_stmts_from_block): Now also uses iv_map and a
      	region.  Do not copy conditions.  Do not copy induction variables.
      	Call rename_uses.
      	(copy_bb_and_scalar_dependences): Allocate a local rename_map for
      	the translated statement.  Use the iv_map for the induction
      	variable renaming.
      	* sese.h (copy_bb_and_scalar_dependences): Update declaration.
      	(set_rename): Removed declaration.
      	(scev_analyzable_p): ...here.
      	* tree-chrec.c (chrec_apply_map): New.
      	* tree-chrec.h (chrec_apply_map): Declared.
      
      From-SVN: r163139
      Sebastian Pop committed
    • Remove insert_loop_close_phis. · e11d25e0
      2010-07-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-clast-to-gimple.c (translate_clast_for_loop): Do not call
      	insert_loop_close_phis.
      	* sese.c (name_defined_in_loop_p): Removed.
      	(expr_defined_in_loop_p): Removed.
      	(alive_after_loop): Removed.
      	(close_phi_not_yet_inserted_p): Removed.
      	(struct alep): Removed.
      	(add_loop_exit_phis): Removed.
      	(insert_loop_close_phis): Removed.
      
      From-SVN: r163138
      Sebastian Pop committed
    • Fix flipped condition using mpz_sgn. · 61298f69
      2010-07-15  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>
      
      	* graphite-cloog-util.c
      	(cloog_matrix_to_ppl_constraint): Fix flipped condition.
      	* graphite-poly.c
      	(psct_scattering_dim_for_loop_depth): Same.
      
      From-SVN: r163137
      Andreas Simbuerger committed
    • Add testcase for miscompile in gamess. · 7ff28cc2
      2010-07-07  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* gfortran.dg/graphite/id-20.f: New.
      
      From-SVN: r163136
      Sebastian Pop committed
    • Partially removing cloog.h and graphite-clast-to-gimple.h where possible.… · a9c2ba8f
      Partially removing cloog.h and graphite-clast-to-gimple.h where possible. Removing unused function check_poly_representation.
      
      2010-07-05  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>
      
      	* graphite-cloog-util.h: Added cloog.h.
      	* graphite-blocking.c: Removed cloog.h.
      	* graphite-dependences.c: Same.
      	* graphite-interchange.c: Same.
      	* graphite-poly.c: Same.
      	* graphite-ppl.c: Same.
      	* graphite-scop-detection.c: Same.
      	* graphite-sese-to-poly.c:
      	Removed cloog.h.
      	Removed graphite-clast-to-gimple.h.
      	(check_poly_representation): Removed (unused).
      	* graphite-sese-to-poly.h
      	(check_poly_representation): Removed (unused).
      
      From-SVN: r163135
      Andreas Simbuerger committed
    • Move cloog-related functions from graphite-ppl.{c,h} to new graphite-cloog-util.{c,h}. · 0647324a
      2010-07-05  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>
      
      	* Makefile.in
      	(OBJS-common): Added graphite-cloog-util.o.
      	(graphite-clast-to-gimple.o): Added graphite-cloog-util.h.
      	(graphite-cloog-util.o): New.
      	(graphite-ppl.o): Added graphite-cloog-util.h.
      	* graphite-clast-to-gimple.c:
      	Added graphite-cloog-util.h to include statements.
      	* graphite-cloog-util.c: New.
      	(new_Cloog_Matrix_from_ppl_Polyhedron): Moved from graphite-ppl.c.
      	(new_Cloog_Domain_from_ppl_Polyhedron): Same.
      	(new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
      	(new_C_Polyhedron_from_Cloog_Matrix): Same.
      	(insert_constraint_into_matrix): Same.
      	(ppl_Constrain_System_number_of_constraints): Same.
      	(new_Cloog_Matrix_from_ppl_Constraint_System): Same.
      	(oppose_constraint): Same.
      	(cloog_matrix_to_ppl_constraint): Same.
      	(new_Constraint_System_from_Cloog_Matrix): Same.
      	* graphite-cloog-util.h: New.
      	(new_Cloog_Matrix_from_ppl_Polyhedron): Moved from graphite-ppl.h.
      	(new_Cloog_Domain_from_ppl_Polyhedron): Same.
      	(new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
      	(new_C_Polyhedron_from_Cloog_Matrix): Same.
      	(insert_constraint_into_matrix): Same.
      	* graphite-ppl.c:
      	Added graphite-cloog-util.h to include statements.
      	(new_Cloog_Matrix_from_ppl_Polyhedron): Moved to graphite-cloog-util.c.
      	(new_Cloog_Domain_from_ppl_Polyhedron): Same.
      	(new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
      	(new_C_Polyhedron_from_Cloog_Matrix): Same.
      	(insert_constraint_into_matrix): Same.
      	(ppl_Constrain_System_number_of_constraints): Same.
      	(new_Cloog_Matrix_from_ppl_Constraint_System): Same.
      	(oppose_constraint): Same.
      	(cloog_matrix_to_ppl_constraint): Same.
      	(new_Constraint_System_from_Cloog_Matrix): Same.
      	* graphite-ppl.h:
      	(new_Cloog_Matrix_from_ppl_Polyhedron): Moved to
      	graphite-cloog-util.h.
      	(new_Cloog_Domain_from_ppl_Polyhedron): Same.
      	(new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
      	(new_C_Polyhedron_from_Cloog_Matrix): Same.
      	(insert_constraint_into_matrix): Same.
      
      From-SVN: r163134
      Andreas Simbuerger committed
    • Resolve CLooG's value_* macros to their respective mpz_* counterparts. · 589ac63c
      2010-07-04  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>
      
      	* graphite-clast-to-gimple.c
      	(precision_for_value): Resolve value_* calls to matching mpz_* calls.
      	(precision_for_interval): Same.
      	(gcc_type_for_interval): Same.
      	(compute_type_for_level): Same.
      	* graphite-interchange.c
      	(lst_interchange_profitable_p): Same.
      	* graphite-poly.c
      	(psct_scattering_dim_for_loop_depth): Same.
      	* graphite-ppl.c
      	(ppl_max_for_le_pointset): Same.
      	(ppl_min_for_le_pointset): Same.
      
      From-SVN: r163133
      Andreas Simbuerger committed
    • Print bbs in refined region tree. · 3e40cb77
      2010-06-25  Vladimir Kargov  <kargov@gmail.com>
      
      	* refined-regions.c (bb_index_compare): New.
      	(get_bbs_in_region): New.
      	(print_bbs_in_region): New.
      	(print_refined_region): Add an argument that allows to print
      	all basic blocks contained in regions.
      	(debug_refined_region): Update call to print_refined_region.
      	* refined-regions.h (print_refined_region): Update declaration.
      	(get_bbs_in_region): Declared.
      	* graphite-scop-detection.c (build_scops_new): Print the refined
      	region tree into the Grahite dump file.
      
      From-SVN: r163132
      Vladimir Kargov committed
    • Fix 416.gamess miscompile: special case the rewrite of degenerate phi nodes. · d3e7b889
      2010-06-24  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_degenerate_phi): New.
      	(rewrite_reductions_out_of_ssa): Call it for degenerate_phi_result.
      
      From-SVN: r163131
      Sebastian Pop committed
    • Fix 435.gromacs miscompile: call rewrite_close_phi_out_of_ssa from rewrite_cross_bb_phi_deps. · aedede66
      2010-06-24  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_cross_bb_phi_deps): Call
      	rewrite_close_phi_out_of_ssa.
      
      	* gcc.dg/graphite/id-22.c: New.
      
      From-SVN: r163130
      Sebastian Pop committed
    • Remove dead code. · f2c51113
      2010-06-24  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_cross_bb_phi_deps): Remove dead code.
      
      From-SVN: r163129
      Sebastian Pop committed
    • Replace map with rename_map. · 32e68db9
      2010-06-24  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-clast-to-gimple.c (build_iv_mapping): Rename map with
      	rename_map.
      	* sese.c (debug_rename_map): Same.
      	(get_rename): Same.
      	(set_rename): Same.
      	(rename_variables_in_stmt): Same.
      	(expand_scalar_variables_call): Same.
      	(expand_scalar_variables_ssa_name): Same.
      	(expand_scalar_variables_expr): Same.
      	(expand_scalar_variables_stmt): Same.
      	(expand_scalar_variables): Same.
      	(rename_variables): Same.
      	(graphite_copy_stmts_from_block): Same.
      	(copy_bb_and_scalar_dependences): Same.
      
      From-SVN: r163128
      Sebastian Pop committed
    • Remove copy_renames. · 8b164754
      2010-06-24  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-clast-to-gimple.c (copy_renames): Removed.
      	(translate_clast_for): Do not call copy_renames.
      	(translate_clast_guard): Same.
      
      From-SVN: r163127
      Sebastian Pop committed
    • Run rewrite_cross_bb_phi_deps before rewrite_cross_bb_scalar_deps. · 9773d730
      2010-06-23  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa): Moved up.
      	(rewrite_cross_bb_phi_deps): Split out of rewrite_cross_bb_scalar_deps.
      	(rewrite_cross_bb_scalar_deps_out_of_ssa): Run rewrite_cross_bb_phi_deps
      	before rewrite_cross_bb_scalar_deps.
      
      From-SVN: r163126
      Sebastian Pop committed
    • Early return in rewrite_commutative_reductions_out_of_ssa when flag_associative_math is not set. · cc588970
      2010-06-23  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_commutative_reductions_out_of_ssa):
      	Early return in when flag_associative_math is not set.
      
      From-SVN: r163125
      Sebastian Pop committed
    • Fix testcase: call abort. · 3d125479
      2010-06-23  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* gcc.dg/graphite/run-id-2.c: Call abort.
      
      From-SVN: r163124
      Sebastian Pop committed
    • Always insert out of SSA copies on edges except for loop->latch. · 4aa9a167
      2010-06-23  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Always insert out
      	of SSA copies on edges except for loop->latch.
      
      From-SVN: r163123
      Sebastian Pop committed
    • Split rewrite_cross_bb_scalar_deps_out_of_ssa out from rewrite_reductions_out_of_ssa. · ee646fc6
      2010-06-23  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps_out_of_ssa):
      	Split out of rewrite_reductions_out_of_ssa.
      	* graphite-sese-to-poly.h (rewrite_cross_bb_scalar_deps_out_of_ssa):
      	Declared.
      	* graphite.c (graphite_transform_loops): Call it.
      
      From-SVN: r163122
      Sebastian Pop committed
    • Add more debug counter guards. · 6a7441f5
      2010-06-23  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite.c (graphite_transform_loops): Add two more dbg_cnt calls.
      
      From-SVN: r163121
      Sebastian Pop committed
    • Schedule a copy_prop pass before graphite. · d4332d00
      2010-06-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* passes.c (init_optimization_passes): Add pass_graphite.
      	Schedule a pass_copy_prop before pass_graphite_transforms.
      	* timevar.def (TV_GRAPHITE): Declared.
      	* tree-pass.h (pass_graphite): Declared.
      	* tree-ssa-loop.c (pass_graphite): New.
      
      	* gcc.dg/graphite/id-20.c: New.
      
      From-SVN: r163120
      Sebastian Pop committed
    • Remove rename_nb_iterations and rename_sese_parameters · 14d0e129
      2010-06-12  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-clast-to-gimple.c (gloog): Do not pass scops in parameter.
      	Remove calls to rename_nb_iterations and rename_sese_parameters.
      	* graphite-clast-to-gimple.h (gloog): Update declaration.
      	* graphite.c (graphite_transform_loops): Update call to gloog.
      	* sese.c (rename_variables_in_expr): Removed.
      	(rename_nb_iterations): Removed.
      	(rename_sese_parameters): Removed.
      	* sese.h (rename_nb_iterations): Removed.
      	(rename_sese_parameters): Removed.
      
      From-SVN: r163119
      Sebastian Pop committed
    • Also rewrite out of SSA scalar dependences going outside the SCoP region. · d1ba0721
      2010-06-12  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-clast-to-gimple.c (gloog): Remove call to
      	sese_adjust_liveout_phis.
      	* graphite-sese-to-poly.c (scev_analyzable_p): When scev returns an
      	SSA_NAME, allow it to be handled by rewrite_cross_bb_scalar_deps.
      	(rewrite_cross_bb_scalar_deps): Handle GIMPLE_PHI nodes: call
      	rewrite_phi_out_of_ssa.
      	* sese.c (get_vdef_before_sese): Removed.
      	(sese_adjust_vphi): Removed.
      	(sese_adjust_liveout_phis): Removed.
      	* sese.h (sese_adjust_liveout_phis): Removed.
      
      From-SVN: r163118
      Sebastian Pop committed
    • Remove insert_copyout and insert_copyin. · 5fed5769
      2010-06-12  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (insert_out_of_ssa_copy): Pass an extra
      	argument for the place after which to insert the out of SSA copy.
      	(rewrite_close_phi_out_of_ssa): Update calls to insert_out_of_ssa_copy.
      	(rewrite_phi_out_of_ssa): Same.
      	(rewrite_cross_bb_scalar_deps): Same.
      	(insert_copyout): Removed.
      	(insert_copyin): Removed.
      	(translate_scalar_reduction_to_array): Call insert_out_of_ssa_copy and
      	insert_out_of_ssa_copy_on_edge instead of insert_copyout and
      	insert_copyin.
      
      From-SVN: r163117
      Sebastian Pop committed
    • Detect commutative reductions in all the scops before rewriting out of SSA all… · 3a7086cc
      Detect commutative reductions in all the scops before rewriting out of SSA all the other scalar dependences.
      
      2010-06-12  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (build_scop_bbs): Not static anymore.
      	(rewrite_reductions_out_of_ssa): Same.
      	(rewrite_commutative_reductions_out_of_ssa): Same.
      	(build_poly_scop): Do not call these functions.
      	* graphite-sese-to-poly.h (build_poly_scop): Declared.
      	(rewrite_reductions_out_of_ssa): Declared.
      	(rewrite_commutative_reductions_out_of_ssa): Declared.
      	* graphite.c (graphite_transform_loops): Call on every scop
      	rewrite_commutative_reductions_out_of_ssa before calling
      	rewrite_reductions_out_of_ssa and build_scop_bbs.
      
      From-SVN: r163116
      Sebastian Pop committed
    • Launch dotty in background. · 61ca46ce
      2010-06-12  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-dependences.c (dot_deps): Make system call to dotty run
      	in background.
      	(dot_deps_stmt): Same.
      	* graphite-poly.c (dot_lst): Same.
      
      From-SVN: r163115
      Sebastian Pop committed
    • Don't call pbb_to_depth_to_oldiv from compute_type_for_level. · f5f50480
      2010-06-11  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-clast-to-gimple.c (gcc_type_for_interval): Do not pass
      	old_type in parameter.
      	(gcc_type_for_value): Update call to gcc_type_for_interval.
      	(compute_type_for_level_1): Renamed compute_type_for_level.
      	Update call to gcc_type_for_interval.
      
      From-SVN: r163114
      Sebastian Pop committed
    • Call compute_overall_effect_of_inner_loop from instantiate_scev_name. · 081970eb
      2010-06-09  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-scalar-evolution.c (instantiate_scev_name): Do not fail
      	the scev analysis when the variable is not used outside the loop
      	in a close phi node: call compute_overall_effect_of_inner_loop.
      
      From-SVN: r163113
      Sebastian Pop committed
    • Do not gather loop exit conditions on the basic blocks outside the loop. · bb17c851
      2010-06-09  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-sese-to-poly.c (single_pred_cond): Renamed
      	single_pred_cond_non_loop_exit.  Return NULL for loop exit edges.
      	(build_sese_conditions_before): Renamed call to single_pred_cond.
      	(build_sese_conditions_after): Same.
      
      From-SVN: r163112
      Sebastian Pop committed
    • Fix comments and indentation. · 86e40af7
      2010-06-09  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite-poly.h: Fix comments and indentation.
      	* graphite-sese-to-poly.c: Same.
      	(build_sese_conditions_before): Compute stmt and gbb only when needed.
      	* tree-chrec.c: Fix comments and indentation.
      	(tree-ssa-loop-niter.c): Same.
      
      From-SVN: r163111
      Sebastian Pop committed