This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hi, Here are the bits from the autovect-branch that implement the omega data dependence test. The only pass that is using the information computed by omega is the data dependence checker that ensures that both the old and this new analyzer are producing the same output. I have bootstrapped and tested this patch on top of the following patch: http://gcc.gnu.org/ml/gcc-patches/2006-03/msg01516.html with no new regressions on amd64-linux. I have also bootstrapped gcc with BOOT_CFLAGS="-O2 -fcheck-data-deps" and there was a single mismatch: this is actually a scev problem that I will correct in a followup patch. Sebastian * tree-data-ref.c (dump_data_dependence_relation): Dump DDR_INNER_LOOP. (initialize_data_dependence_relation): Initialize DDR_INNER_LOOP. (init_omega_eq_with_af, omega_extract_distance_vectors, check_ddr omega_setup_subscript, init_omega_for_ddr_1, init_omega_for_ddr): New. (compute_affine_dependence): Call check_ddr when flag_check_data_deps is set. (analyze_all_data_dependences): Uncomment. (tree_check_data_deps): New. * tree-data-ref.h: Depends on omega.h. (data_dependence_relation): Add a field inner_loop. (DDR_INNER_LOOP): New. * omega.h: New. * omega.c: New. * Makefile.in (TREE_DATA_REF_H): Depends on omega.h. (OBJS-common): Depends on omega.o. (omega.o): New rule. * timevar.def (TV_CHECK_DATA_DEPS): New. * passes.c: Schedule pass_check_data_deps. * tree-pass.h (pass_check_data_deps): Declared. * doc/invoke.texi (-fcheck-data-deps, omega-max-vars, omega-max-geqs, omega-max-eqs, omega-max-wild-cards, omega-hash-table-size, omega-max-keys): Documented. * tree-ssa-loop.c (check_data_deps, gate_check_data_deps, pass_check_data_deps): New. * common.opt (fcheck-data-deps): New. * params.def (PARAM_OMEGA_MAX_VARS, PARAM_OMEGA_MAX_GEQS, PARAM_OMEGA_MAX_EQS, PARAM_OMEGA_MAX_WILD_CARDS, PARAM_OMEGA_HASH_TABLE_SIZE, PARAM_OMEGA_MAX_KEYS): New. * tree-flow.h (tree_check_data_deps): Declared.
Attachment:
528_omega_trunk.diff.gz
Description: GNU Zip compressed data
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |