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.