public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Fwd: C6X fails to build in FSF mainline
       [not found] <m3zkj9o8o3.fsf@redhat.com>
@ 2011-08-18  1:46 ` Andrew Pinski
  2011-08-18 15:16   ` Richard Henderson
  2011-08-22 18:04   ` Bernd Schmidt
  0 siblings, 2 replies; 4+ messages in thread
From: Andrew Pinski @ 2011-08-18  1:46 UTC (permalink / raw)
  To: GCC Mailing List; +Cc: Richard Henderson

Forwarding this to the gcc list.  Also Adding RTH to the CC since he
helped Bernd to get the dwarf2 parts working correctly.


---------- Forwarded message ----------
From: Nick Clifton <nickc@redhat.com>
Date: Tue, Aug 16, 2011 at 5:14 AM
Subject: C6X fails to build in FSF mainline
To: bernds@codesourcery.com
Cc: gcc-bugs@gcc.gnu.org


Hi Bernd,

 You probably know this already.  The c6x-elf target fails to build
 libgcc with the current FSF mainline sources:

 gcc/libgcc2.c: In function ‘__gnu_mulsc3’:
 gcc/libgcc2.c:1928:1: internal compiler error: in scan_trace, at
dwarf2cfi.c:2433
 Please submit a full bug report,

 I assume that it is because the C6X has more than one delay slot ?

Cheers
 Nick

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

* Re: Fwd: C6X fails to build in FSF mainline
  2011-08-18  1:46 ` Fwd: C6X fails to build in FSF mainline Andrew Pinski
@ 2011-08-18 15:16   ` Richard Henderson
  2011-08-18 17:16     ` Richard Henderson
  2011-08-22 18:04   ` Bernd Schmidt
  1 sibling, 1 reply; 4+ messages in thread
From: Richard Henderson @ 2011-08-18 15:16 UTC (permalink / raw)
  To: Andrew Pinski; +Cc: GCC Mailing List

On 08/17/2011 06:45 PM, Andrew Pinski wrote:
>  gcc/libgcc2.c: In function ‘__gnu_mulsc3’:
>  gcc/libgcc2.c:1928:1: internal compiler error: in scan_trace, at
> dwarf2cfi.c:2433
>  Please submit a full bug report,
> 
>  I assume that it is because the C6X has more than one delay slot ?

Ug.  I knew c6x has more than 1 delay slot (indeed, 5).
But I'd hoped that they were not annulled.


r~

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

* Re: Fwd: C6X fails to build in FSF mainline
  2011-08-18 15:16   ` Richard Henderson
@ 2011-08-18 17:16     ` Richard Henderson
  0 siblings, 0 replies; 4+ messages in thread
From: Richard Henderson @ 2011-08-18 17:16 UTC (permalink / raw)
  To: Andrew Pinski; +Cc: GCC Mailing List

On 08/18/2011 08:16 AM, Richard Henderson wrote:
> On 08/17/2011 06:45 PM, Andrew Pinski wrote:
>>  gcc/libgcc2.c: In function ‘__gnu_mulsc3’:
>>  gcc/libgcc2.c:1928:1: internal compiler error: in scan_trace, at
>> dwarf2cfi.c:2433
>>  Please submit a full bug report,
>>
>>  I assume that it is because the C6X has more than one delay slot ?
> 
> Ug.  I knew c6x has more than 1 delay slot (indeed, 5).
> But I'd hoped that they were not annulled.

... and it doesn't.  The problem is that RTL_CONST_CALL_P
and INSN_ANNULLED_BRANCH_P use the same bit.  Sigh.


r~

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

* Re: Fwd: C6X fails to build in FSF mainline
  2011-08-18  1:46 ` Fwd: C6X fails to build in FSF mainline Andrew Pinski
  2011-08-18 15:16   ` Richard Henderson
@ 2011-08-22 18:04   ` Bernd Schmidt
  1 sibling, 0 replies; 4+ messages in thread
From: Bernd Schmidt @ 2011-08-22 18:04 UTC (permalink / raw)
  To: Andrew Pinski; +Cc: GCC Mailing List, Richard Henderson

[-- Attachment #1: Type: text/plain, Size: 882 bytes --]

On 08/18/11 03:45, Andrew Pinski wrote:
> Forwarding this to the gcc list.  Also Adding RTH to the CC since he
> helped Bernd to get the dwarf2 parts working correctly.

>  You probably know this already.  The c6x-elf target fails to build
>  libgcc with the current FSF mainline sources:
> 
>  gcc/libgcc2.c: In function ‘__gnu_mulsc3’:
>  gcc/libgcc2.c:1928:1: internal compiler error: in scan_trace, at
> dwarf2cfi.c:2433
>  Please submit a full bug report,

Thanks Richard for fixing this (I've been on vacation).

There are some testsuite failures at -O3 in another part of dwarf2cfi,
which are caused by computed_jump_p returning 0 for the
indirect_jump_shadow pattern. There isn't really a sensible way to
represent this pattern in RTL, but we can take advantage of the fact
that computed_jump_p returns true for constants. I committed the
following patch.


Bernd

[-- Attachment #2: compjmp.diff --]
[-- Type: text/plain, Size: 1047 bytes --]

Index: gcc/ChangeLog
===================================================================
--- gcc/ChangeLog	(revision 177967)
+++ gcc/ChangeLog	(working copy)
@@ -1,3 +1,8 @@
+2011-08-22  Bernd Schmidt  <bernds@codesourcery.com>
+
+	* config/c6x/c6x.md (indirect_jump_shadow): Tweak representation
+	to make computed_jump_p return true.
+
 2011-08-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
 
 	* configure.ac (GCC_PICFLAG_FOR_TARGET): Call it.
Index: gcc/config/c6x/c6x.md
===================================================================
--- gcc/config/c6x/c6x.md	(revision 177952)
+++ gcc/config/c6x/c6x.md	(working copy)
@@ -1427,8 +1427,10 @@ (define_insn "real_ret"
    (set_attr "cross" "y,n")
    (set_attr "dest_regfile" "b")])
 
+;; computed_jump_p returns true if it finds a constant; so use one in the
+;; unspec.
 (define_insn "indirect_jump_shadow"
-  [(set (pc) (unspec [(pc)] UNSPEC_JUMP_SHADOW))]
+  [(set (pc) (unspec [(const_int 1)] UNSPEC_JUMP_SHADOW))]
   ""
   ";; indirect jump occurs"
   [(set_attr "type" "shadow")])

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

end of thread, other threads:[~2011-08-22 18:04 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <m3zkj9o8o3.fsf@redhat.com>
2011-08-18  1:46 ` Fwd: C6X fails to build in FSF mainline Andrew Pinski
2011-08-18 15:16   ` Richard Henderson
2011-08-18 17:16     ` Richard Henderson
2011-08-22 18:04   ` Bernd Schmidt

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).