aboutsummaryrefslogtreecommitdiff
path: root/gcc/lra-constraints.c
diff options
context:
space:
mode:
authorVladimir Makarov <vmakarov@redhat.com>2018-12-13 20:54:27 +0000
committerVladimir Makarov <vmakarov@gcc.gnu.org>2018-12-13 20:54:27 +0000
commit11067dee85df4812303ebda57642675a0b89ef67 (patch)
tree9ad654ea7adca3344fcf62deb2226109e55539ea /gcc/lra-constraints.c
parentb46e1a69975d64ad436ff1c928e008105b2b2a8d (diff)
downloadgcc-11067dee85df4812303ebda57642675a0b89ef67.zip
gcc-11067dee85df4812303ebda57642675a0b89ef67.tar.gz
gcc-11067dee85df4812303ebda57642675a0b89ef67.tar.bz2
re PR rtl-optimization/88414 (ICE in lra_assign, at lra-assigns.c:1624)
2018-12-13 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/88414 * lra-int.h (lra_asm_error_p): New. * lra-assigns.c (lra_assign): Check lra_asm_error_p for checking call crossed pseudo assignment correctness. (lra_split_hard_reg_for): Set up lra_asm_error_p. * lra-constraints.c (curr_insn_transform): Ditto. * lra.c (lra_asm_error_p): New. (lra): Reset lra_asm_error_p. 2018-12-13 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/88414 * gcc.target/i386/pr88414.c: New. From-SVN: r267109
Diffstat (limited to 'gcc/lra-constraints.c')
-rw-r--r--gcc/lra-constraints.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c
index ba35b95..c061093 100644
--- a/gcc/lra-constraints.c
+++ b/gcc/lra-constraints.c
@@ -3940,6 +3940,7 @@ curr_insn_transform (bool check_only_p)
fatal_insn ("unable to generate reloads for:", curr_insn);
error_for_asm (curr_insn,
"inconsistent operand constraints in an %<asm%>");
+ lra_asm_error_p = true;
/* Avoid further trouble with this insn. Don't generate use
pattern here as we could use the insn SP offset. */
lra_set_insn_deleted (curr_insn);