[Bug rtl-optimization/106041] Long/infinite compile time for Arm SIMD -O1 or -O2 but not -O0
pinskia at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jun 21 06:19:47 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106041
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|target |rtl-optimization
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
#0 0x0000000000bd9e74 in df_worklist_propagate_backward (age=<optimized out>,
last_change_age=<synthetic pointer>..., considered=0x3f4de80,
pending=0x44d0f20, bbindex_to_postorder=0x3ecf3d0, bb_index=<optimized out>,
dataflow=0x3ecd500) at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/df-core.cc:971
#1 df_worklist_dataflow_doublequeue (n_blocks=<optimized out>,
bbindex_to_postorder=0x3ecf3d0, blocks_in_postorder=0x3bc1200,
considered=0x3f4de80, pending=0x44d0f20, dataflow=0x3ecd500) at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/df-core.cc:1044
#2 df_worklist_dataflow (dataflow=0x3ecd500, blocks_to_consider=<optimized
out>, blocks_in_postorder=0x3bc1200, n_blocks=<optimized out>) at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/df-core.cc:1121
#3 0x0000000000bda0c8 in df_analyze_problem (dflow=0x3ecd500,
blocks_to_consider=blocks_to_consider@entry=0x3b990b0,
postorder=postorder@entry=0x3bc1200, n_blocks=n_blocks@entry=38) at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/df-core.cc:1175
#4 0x0000000001c3dfa8 in fast_dce (word_level=word_level@entry=false) at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/dce.cc:1169
#5 0x0000000001c3e1e8 in rest_of_handle_fast_dce () at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/dce.cc:1194
#6 run_fast_df_dce () at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/dce.cc:1242
#7 0x0000000000be0ef8 in df_lr_finalize (all_blocks=0x44d0f40) at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/df-problems.cc:1065
#8 0x0000000000bda0dc in df_analyze_problem (dflow=0x3ecd500,
blocks_to_consider=0x44d0f40, postorder=0x3bc1200, n_blocks=38) at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/df-core.cc:1180
#9 0x0000000000bda1cc in df_analyze_1 () at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/vec.h:1472
#10 0x0000000001c27180 in execute_compare_elim_after_reload () at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/compare-elim.cc:910
#11 (anonymous namespace)::pass_compare_elim_after_reload::execute
(this=<optimized out>) at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/compare-elim.cc:967
#12 0x0000000000fb2420 in execute_one_pass (pass=pass@entry=0x2981b60) at
/home/ubuntu/src/upstream-gcc-aarch64/gcc/gcc/passes.cc:2637
I need to double check this but it seems to be stuck here.
Also this is with "void hwy::N_NEON::TestLoadStoreInterleaved2::operator()(T,
D) [with T = double; D = hwy::N_NEON::Simd<double, 1, 0>]" function.
More information about the Gcc-bugs
mailing list