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]

Re: [patch] fix PR34413: ltrans-7.f90 fails on amd64-linux


Sebastian Pop wrote:
> Hi,
> the attached patch fixes the loop interchange for this important
> testcase.  The original patch that I sent as feedback to the PR
> http://gcc.gnu.org/PR34413 fails for two cases in the vectorizer
> vect-{104,105}.c where the type of the chrec_a is a pointer type and
> the difference expected chrec_b to be of size_type in that case.  This
> patch uses a larger integer type, long_integer_type_node instead of
> integer_type_node, such that on 64 bit machines pointer types can fit
> in.  The patch bootstrapped and passed testsuite fixing ltrans-7.f90
> on an amd64-linux.  I will commit the patch to trunk.
>
> Sebastian
>   
> ------------------------------------------------------------------------
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> 2007-12-19  Sebastian Pop  <sebastian.pop@amd.com>
>
> 	PR tree-optimization/34413
> 	* tree-data-ref.c (affine_fn_op, analyze_ziv_subscript,
> 	analyze_siv_subscript_cst_affine, analyze_miv_subscript,
> 	omega_setup_subscript): Use long_integer_type_node instead of
> 	integer_type_node.
>
>   
This causes an ICE on certain java code.
long_integer_type_node is NULL.  I am not sure where it is supposed to
be initialized.

(gdb) bt
#0  0x00000000004d839a in fold_convert (type=0x0, arg=0x2aaaae327960)
    at ../../trunk/gcc/fold-const.c:2482
#1  0x00000000007bffa4 in chrec_convert_1 (type=0x0, chrec=0x2aaaae327960,
    at_stmt=0x0, use_overflow_semantics=1 '\001')
    at ../../trunk/gcc/tree-chrec.c:1307
#2  0x00000000005beaa7 in subscript_dependence_tester_1 (ddr=0xe9db30,
    dra=0xe9e2b0, drb=0xe9e330, loop_nest=0x2aaab0a38820)
    at ../../trunk/gcc/tree-data-ref.c:1493
#3  0x00000000005bf7c0 in subscript_dependence_tester (ddr=0xe9db30,
    loop_nest=0x2aaab0a38820) at ../../trunk/gcc/tree-data-ref.c:3191
#4  0x00000000005c0958 in compute_all_dependences (datarefs=0xe9de80,
    dependence_relations=0x7fff085b64c8, loop_nest=0xf3db30,
    compute_self_and_rr=1 '\001') at ../../trunk/gcc/tree-data-ref.c:3820
#5  0x00000000005c1639 in compute_data_dependences_for_loop (
    loop=0x2aaab0a38820, compute_self_and_read_read_dependences=1 '\001',
    datarefs=0x7fff085b64d0, dependence_relations=0x7fff085b64c8)
    at ../../trunk/gcc/tree-data-ref.c:4132
#6  0x00000000005e3482 in tree_predictive_commoning_loop
(loop=0x2aaab0a38820)
    at ../../trunk/gcc/tree-predcom.c:2496
#7  0x00000000005e4aaa in tree_predictive_commoning ()
    at ../../trunk/gcc/tree-predcom.c:2605
#8  0x000000000062c3c7 in run_tree_predictive_commoning ()
    at ../../trunk/gcc/tree-ssa-loop.c:183
#9  0x0000000000534132 in execute_one_pass (pass=0xb81080)
    at ../../trunk/gcc/passes.c:1118
#10 0x00000000005342bc in execute_pass_list (pass=0xb81080)
    at ../../trunk/gcc/passes.c:1171
#11 0x00000000005342ce in execute_pass_list (pass=0xb80f00)
    at ../../trunk/gcc/passes.c:1172
#12 0x00000000005342ce in execute_pass_list (pass=0xb80360)
    at ../../trunk/gcc/passes.c:1172
#13 0x00000000005d8da2 in tree_rest_of_compilation (fndecl=0x2aaab0927820)
    at ../../trunk/gcc/tree-optimize.c:404
#14 0x00000000006bd9e2 in cgraph_expand_function (node=0x2aaab0931100)
    at ../../trunk/gcc/cgraphunit.c:1151
#15 0x00000000006be74e in cgraph_assemble_pending_functions ()
    at ../../trunk/gcc/cgraphunit.c:522
#16 0x00000000006beaaa in cgraph_finalize_function (decl=0x2aaab0927820,
    nested=0 '\0') at ../../trunk/gcc/cgraphunit.c:639
#17 0x000000000040dbdc in end_java_method ()
    at ../../trunk/gcc/java/decl.c:1810
#18 0x000000000042afc5 in parse_class_file ()
    at ../../trunk/gcc/java/jcf-parse.c:1698
#19 0x000000000042bb8c in java_parse_file (set_yydebug=<value optimized
out>)
    at ../../trunk/gcc/java/jcf-parse.c:2113
#20 0x00000000005a7965 in toplev_main (argc=<value optimized out>,
    argv=<value optimized out>) at ../../trunk/gcc/toplev.c:1042
#21 0x0000003d85e1d8a4 in __libc_start_main () from /lib64/libc.so.6
#22 0x0000000000403e99 in _start ()


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]