diff options
author | Georg-Johann Lay <avr@gjlay.de> | 2016-10-25 08:35:17 +0000 |
---|---|---|
committer | Georg-Johann Lay <gjl@gcc.gnu.org> | 2016-10-25 08:35:17 +0000 |
commit | 078134e5a412ee137f14f6f7d21a4aeae0d7e49c (patch) | |
tree | 897f2cea4b36b4f0f68afebad404e621814b4005 /gcc/tree-ssa-loop-im.c | |
parent | c7212a155c2f3fdf585f7693159aa4d932d9a585 (diff) | |
download | gcc-078134e5a412ee137f14f6f7d21a4aeae0d7e49c.zip gcc-078134e5a412ee137f14f6f7d21a4aeae0d7e49c.tar.gz gcc-078134e5a412ee137f14f6f7d21a4aeae0d7e49c.tar.bz2 |
New avt target pass to work around performance loss by PR fix.
gcc/
New avt target pass to work around performance loss by PR fix.
PR target/71676
PR target/71678
* config/avr/avr.md (casesi_<mode>_sequence) [qi,hi]: New insn.
(*cmp<mode>) [qi,qq,uqq,hi,hq,uhq,ha,uha]: Rename to cmp<mode>3.
* config/avr/predicates.md (extend_operator): New.
* config/avr/avr-passes.def (avr_pass_casesi): Register new pass.
* config/avr/avr-protos.h (avr_casei_sequence_check_operands)
(make_avr_pass_casesi): New prototypes.
* config/avr/avr.c (print-rtl.h): Include it.
(pass_data avr_pass_data_casesi): Data for new pass.
(avr_pass_casesi): New class implementing rtl_opt_pass .avr-casesi.
(make_avr_pass_casesi, avr_parallel_insn_from_insns)
(avr_is_casesi_sequence, avr_casei_sequence_check_operands)
(avr_optimize_casesi): New functions.
gcc/testsuite/
PR target/71676
PR target/71678
* gcc.target/avr/pr71676-2.c: New test.
From-SVN: r241504
Diffstat (limited to 'gcc/tree-ssa-loop-im.c')
0 files changed, 0 insertions, 0 deletions