public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [Patch][aarch64][PR target/83335] Fix regression, ICE on gcc.target/aarch64/asm-2.c
@ 2018-01-05 22:14 Steve Ellcey
  2018-02-15  9:49 ` AArch64 patch ping Jakub Jelinek
  2018-02-15 14:01 ` [Patch][aarch64][PR target/83335] Fix regression, ICE on gcc.target/aarch64/asm-2.c Richard Earnshaw (lists)
  0 siblings, 2 replies; 5+ messages in thread
From: Steve Ellcey @ 2018-01-05 22:14 UTC (permalink / raw)
  To: gcc-patches, james.greenhalgh, Marcus Shawcroft,
	richard.earnshaw, Christophe Lyon

This is a fix for PR target/83335.  We are asserting in
aarch64_print_address_internal because we have a non Pmode
address coming from an asm instruction.  My fix is to 
just allow this by checking this_is_asm_operands.  This is
what it was doing before the assert was added that caused
the ICE.

Verified that it fixed gcc.target/aarch64/asm-2.c in ILP32
mode and that it caused no regressions.

Steve Ellcey
sellcey@cavium.com


2018-01-05  Steve Ellcey  <sellcey@cavium.com>

	PR target/83335
	* config/aarch64/aarch64.c (aarch64_print_address_internal):
	Allow non Pmode address in asm statements.


diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index a189605..af74212 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -5670,8 +5670,9 @@ aarch64_print_address_internal (FILE *f, machine_mode mode, rtx x,
 {
   struct aarch64_address_info addr;
 
-  /* Check all addresses are Pmode - including ILP32.  */
-  gcc_assert (GET_MODE (x) == Pmode);
+  /* Check all addresses are Pmode - including ILP32,
+     unless this is coming from an asm statement.  */
+  gcc_assert (GET_MODE (x) == Pmode || this_is_asm_operands);
 
   if (aarch64_classify_address (&addr, x, mode, true, type))
     switch (addr.type)

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-02-19 15:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-05 22:14 [Patch][aarch64][PR target/83335] Fix regression, ICE on gcc.target/aarch64/asm-2.c Steve Ellcey
2018-02-15  9:49 ` AArch64 patch ping Jakub Jelinek
2018-02-15 14:01 ` [Patch][aarch64][PR target/83335] Fix regression, ICE on gcc.target/aarch64/asm-2.c Richard Earnshaw (lists)
2018-02-17  0:05   ` Steve Ellcey
2018-02-19 15:32     ` Richard Earnshaw (lists)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).