re PR middle-end/17503 (quadratic behaviour in invalid_mode_change_p)
PR rtl-opt/17503 * regclass.c (subregs_of_mode): Turn into an htab. Make static. (som_hash, som_eq): New. (init_subregs_of_mode, record_subregs_of_mode): New. (cannot_change_mode_set_regs): Rewrite for htab implementation. (invalid_mode_change_p): Likewise. * combine.c (gen_lowpart_for_combine): Use record_subregs_of_mode. * flow.c (mark_used_regs): Likewise. (life_analysis): Use init_subregs_of_mode. * regs.h (subregs_of_mode): Remove. * rtl.h (init_subregs_of_mode, record_subregs_of_mode): Declare. From-SVN: r88067
Showing
- gcc/ChangeLog 14 additions, 0 deletionsgcc/ChangeLog
- gcc/combine.c 2 additions, 7 deletionsgcc/combine.c
- gcc/flow.c 5 additions, 14 deletionsgcc/flow.c
- gcc/regclass.c 97 additions, 30 deletionsgcc/regclass.c
- gcc/regs.h 0 additions, 2 deletionsgcc/regs.h
- gcc/rtl.h 2 additions, 0 deletionsgcc/rtl.h
Loading
Please register or sign in to comment