Hello,

I added support for the 64-bit PowerPC some months ago using a variant of the ELFv2 ABI. I don't know which kind of long double support I use on this target. This is difficult for me to understand how this works on 64-bit PowerPC. This was no problem up to now since nobody used long double with RTEMS on this target. I tried to build a GCC with Ada support today for the powerpc-rtems5 target. It ends up in infinite loops while building the Ada run-time multilib for a 64-bit PowerPC variant (similar a-coteio.ads):

gdb --args /build/git-build/b-gcc-git-powerpc-rtems5/./gcc/gnat1 -gnatwa -quiet -nostdinc -nostdinc -dumpbase a-scteio.ads -auxbase-strip a-scteio.o -O2 -Wextra -Wall -g -mcpu=e6500 -msoft-float -gnatpg -mcpu=e6500 -m64 -msoft-float -mno-altivec -gnatO a-scteio.o a-scteio.ads
...
(gdb) bt
#0  process_bb_lives (bb=0x7ffff700a680, curr_point=@0x7fffffffd38c: 387, dead_insn_p=dead_insn_p@entry=false) at /scratch/svn-gcc/gcc/lra-lives.c:838 #1  0x0000000000b32b3a in lra_create_live_ranges_1 (all_p=all_p@entry=true, dead_insn_p=dead_insn_p@entry=false) at /scratch/svn-gcc/gcc/lra-lives.c:1305 #2  0x0000000000b33620 in lra_create_live_ranges (all_p=all_p@entry=true, dead_insn_p=dead_insn_p@entry=false) at /scratch/svn-gcc/gcc/lra-lives.c:1369 #3  0x0000000000b159c2 in lra (f=<optimized out>) at /scratch/svn-gcc/gcc/lra.c:2438
#4  0x0000000000ac95d2 in do_reload () at /scratch/svn-gcc/gcc/ira.c:5443
#5  (anonymous namespace)::pass_reload::execute (this=<optimized out>) at /scratch/svn-gcc/gcc/ira.c:5627 #6  0x0000000000bc1d49 in execute_one_pass (pass=pass@entry=0x24cc430) at /scratch/svn-gcc/gcc/passes.c:2497 #7  0x0000000000bc25f1 in execute_pass_list_1 (pass=0x24cc430) at /scratch/svn-gcc/gcc/passes.c:2586 #8  0x0000000000bc2603 in execute_pass_list_1 (pass=0x24cb350) at /scratch/svn-gcc/gcc/passes.c:2587 #9  0x0000000000bc2645 in execute_pass_list (fn=<optimized out>, pass=<optimized out>) at /scratch/svn-gcc/gcc/passes.c:2597 #10 0x0000000000883683 in cgraph_node::expand (this=0x7ffff6fd6000) at /scratch/svn-gcc/gcc/cgraphunit.c:2139 #11 0x0000000000884bd1 in expand_all_functions () at /scratch/svn-gcc/gcc/cgraphunit.c:2275 #12 symbol_table::compile (this=this@entry=0x7ffff6e48000) at /scratch/svn-gcc/gcc/cgraphunit.c:2623 #13 0x0000000000887477 in symbol_table::compile (this=0x7ffff6e48000) at /scratch/svn-gcc/gcc/cgraphunit.c:2719 #14 symbol_table::finalize_compilation_unit (this=0x7ffff6e48000) at /scratch/svn-gcc/gcc/cgraphunit.c:2716 #15 0x0000000000c938dd in compile_file () at /scratch/svn-gcc/gcc/toplev.c:480 #16 0x000000000044485d in do_compile () at /scratch/svn-gcc/gcc/toplev.c:2059 #17 toplev::main (this=this@entry=0x7fffffffd72e, argc=<optimized out>, argc@entry=23, argv=<optimized out>, argv@entry=0x7fffffffd828) at /scratch/svn-gcc/gcc/toplev.c:2194 #18 0x0000000000446bdb in main (argc=23, argv=0x7fffffffd828) at /scratch/svn-gcc/gcc/main.c:39
(gdb)

--
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.hu...@embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

Reply via email to