diff options
author | Andreas Schwab <schwab@gcc.gnu.org> | 2016-10-10 12:16:00 +0000 |
---|---|---|
committer | Andreas Schwab <schwab@gcc.gnu.org> | 2016-10-10 12:16:00 +0000 |
commit | fee13acdd89f77a81a63711534f1d0737b965d1d (patch) | |
tree | 6e365d7d6a8e3f1ea20ab1492c48995128635b41 /gcc | |
parent | 208b8b69b660382eed5b1550f0ee945c614a6bb4 (diff) | |
download | gcc-fee13acdd89f77a81a63711534f1d0737b965d1d.zip gcc-fee13acdd89f77a81a63711534f1d0737b965d1d.tar.gz gcc-fee13acdd89f77a81a63711534f1d0737b965d1d.tar.bz2 |
re PR target/77738 (Invalid initialisation of ar.lc register)
PR target/77738
* config/ia64/ia64.md ("doloop_end"): Reject if mode of loop
pseudo is not DImode.
From-SVN: r240918
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 18 | ||||
-rw-r--r-- | gcc/config/ia64/ia64.md | 3 |
2 files changed, 15 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6810f19..6d27102 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-10-10 Andreas Schwab <schwab@suse.de> + + PR target/77738 + * config/ia64/ia64.md ("doloop_end"): Reject if mode of loop + pseudo is not DImode. + 2016-10-10 Claudiu Zissulescu <claziss@synopsys.com> * common/config/arc/arc-common.c (arc_option_optimization_table): @@ -8,7 +14,7 @@ 2016-10-09 Aaron Sawdey <acsawdey@linux.vnet.ibm.com> - * config/rs6000/rs6000.h (TARGET_EFFICIENT_OVERLAPPING_UNALIGNED): + * config/rs6000/rs6000.h (TARGET_EFFICIENT_OVERLAPPING_UNALIGNED): Add macro to say we can efficiently handle overlapping unaligned loads. * config/rs6000/rs6000.c (expand_block_compare): Avoid generating @@ -207,7 +213,7 @@ (write_ipcp_transformation_info): Remove streaming for alignment propagation summary. (read_ipcp_transformation_info): Remove reading of alignment - propagation summary. + propagation summary. (ipcp_update_alignments): Remove. (ipcp_update_bits): Adjust to set alignment for parameters of pointer type. @@ -215,7 +221,7 @@ and remove assignment to (*ipcp_transformations)[node->uid].alignments. * ipa-prop.h (ipa_alignment): Remove. (ipa_jump_func): Remove field alignment. - (ipcp_transformation_summary): Remove field alignments. + (ipcp_transformation_summary): Remove field alignments. * doc/invoke.texi: Mark fipa-cp-alignment as obsolete. * opts.c (default_options_table): Remove entry for fipa-cp-alignment. (enable_fdo_optimizations): Remove checking for fipa-cp-alignment. @@ -491,7 +497,7 @@ which is not safe. 2016-10-06 James Clarke <jrtc27@jrtc27.com> - Eric Botcazou <ebotcazou@adacore.com> + Eric Botcazou <ebotcazou@adacore.com> PR target/77759 * config/sparc/sparc.c (classify_data_t): Remove int_regs field. @@ -3397,7 +3403,7 @@ 2016-09-02 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> * cfg.c (free_original_copy_tables): Replace second assignment of - bb_copy = NULL by bb_original = NULL. + bb_copy = NULL by bb_original = NULL. 2016-09-02 Jakub Jelinek <jakub@redhat.com> @@ -19189,7 +19195,7 @@ Tweak the pipeline model for Exynos M1 - * config/aarch64/aarch64.c (exynosm1_tunings): Enable weak prefetching + * config/aarch64/aarch64.c (exynosm1_tunings): Enable weak prefetching model. 2016-03-17 David Malcolm <dmalcolm@redhat.com> diff --git a/gcc/config/ia64/ia64.md b/gcc/config/ia64/ia64.md index 7bc21fd..afde75a 100644 --- a/gcc/config/ia64/ia64.md +++ b/gcc/config/ia64/ia64.md @@ -3959,6 +3959,9 @@ (use (match_operand 1 "" ""))] ; label "" { + if (GET_MODE (operands[0]) != DImode) + FAIL; + emit_jump_insn (gen_doloop_end_internal (gen_rtx_REG (DImode, AR_LC_REGNUM), operands[1])); DONE; |