[Bug target/83387] PowerPC64 + Ada + RTEMS: Infinite loops in do_reload()
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83387 --- Comment #6 from Sebastian Huber --- (In reply to Peter Bergner from comment #5) > (In reply to Sebastian Huber from comment #4) > > If I remove the -msoft-float, the two example source files compile > > (-mno-altivec seems to cause no harm). > > Well the first question, is do you really need to use -msoft-float? Looking > at the E6500 hardware doc seems to show that it has both hardware FP and > Altivec units. For some applications fast context switches are important and the FP/AltiVec context is quite huge. It affects also the interrupt latency. I have to discuss this with the application developers. We probably don't need it in a 64-bit configuration. > > > > How can I dump the instruction? I don't know Ada well enough to figure it > > out from the source code. > > I don't know Ada as well, but I mean what does the RTL insn look like? > You'll probably need a debug build of your gcc for that so it isn't > optimized away and then you can print it from gdb. Ok, I will try to do this. I am not sure how it works with the cross compiler build: https://gcc.gnu.org/wiki/DebuggingGCC#gccbuilddebug
[Bug target/83387] PowerPC64 + Ada + RTEMS: Infinite loops in do_reload()
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83387 --- Comment #5 from Peter Bergner --- (In reply to Sebastian Huber from comment #4) > If I remove the -msoft-float, the two example source files compile > (-mno-altivec seems to cause no harm). Well the first question, is do you really need to use -msoft-float? Looking at the E6500 hardware doc seems to show that it has both hardware FP and Altivec units. > How can I dump the instruction? I don't know Ada well enough to figure it > out from the source code. I don't know Ada as well, but I mean what does the RTL insn look like? You'll probably need a debug build of your gcc for that so it isn't optimized away and then you can print it from gdb.
[Bug target/83387] PowerPC64 + Ada + RTEMS: Infinite loops in do_reload()
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83387 --- Comment #4 from Sebastian Huber --- (In reply to Peter Bergner from comment #3) > (In reply to Sebastian Huber from comment #2) > > Is -msoft-float supported on 64-bit PowerPC? It is not important for us. I > > just copied the 32-bit multilibs without much thought. > > It is used by the linux kernel, but they also explicitly do not use > float/double types. If you have float/double types in your source code and > compile for 64-bit using -msoft-float, I could guess that you would run into > some of the assumptions in the 64-bit backend that floating point hardware > is always available. It's just a guess though, without knowing what the > insn / operand you're having problems with looks like. If I remove the -msoft-float, the two example source files compile (-mno-altivec seems to cause no harm). How can I dump the instruction? I don't know Ada well enough to figure it out from the source code.
[Bug target/83387] PowerPC64 + Ada + RTEMS: Infinite loops in do_reload()
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83387 --- Comment #3 from Peter Bergner --- (In reply to Sebastian Huber from comment #2) > Is -msoft-float supported on 64-bit PowerPC? It is not important for us. I > just copied the 32-bit multilibs without much thought. It is used by the linux kernel, but they also explicitly do not use float/double types. If you have float/double types in your source code and compile for 64-bit using -msoft-float, I could guess that you would run into some of the assumptions in the 64-bit backend that floating point hardware is always available. It's just a guess though, without knowing what the insn / operand you're having problems with looks like.
[Bug target/83387] PowerPC64 + Ada + RTEMS: Infinite loops in do_reload()
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83387 --- Comment #2 from Sebastian Huber --- (In reply to Peter Bergner from comment #1) > Is the insn you're dying with contain FP operands? I know the backend for > 64-bit PowerPC assumes/requires 64-bit FP hardware is available and since > you're using -msoft-float, I can imagine that you're running afoul of that > somehow. Is -msoft-float supported on 64-bit PowerPC? It is not important for us. I just copied the 32-bit multilibs without much thought. > > FYI, I tried logging into gcc67 but couldn't for some reason. I have no > problems logging into other gcc farm systems. My SSH config for gcc67 is: Compression yes Host gcc67 User sh Hostname gcc67.fsffrance.org
[Bug target/83387] PowerPC64 + Ada + RTEMS: Infinite loops in do_reload()
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83387 Peter Bergner changed: What|Removed |Added CC||bergner at gcc dot gnu.org --- Comment #1 from Peter Bergner --- Is the insn you're dying with contain FP operands? I know the backend for 64-bit PowerPC assumes/requires 64-bit FP hardware is available and since you're using -msoft-float, I can imagine that you're running afoul of that somehow. FYI, I tried logging into gcc67 but couldn't for some reason. I have no problems logging into other gcc farm systems.