AIX 4.3 64-bit problem with libstdc++

David Edelsohn dje@watson.ibm.com
Thu Sep 3 17:34:00 GMT 1998


	I just checked in a patch which removes the explicit
secondary-reload-like functionality from rs6000.md movsf and movdf patterns
for *TARGET_POWERPC64 only*.  That functionality originally was written long
before secondary-reload support was completed in GCC.  Removing that code
fixes the libstdc++ build problem and drastically *improves* AIX 4.3 64-bit
c-torture results: compile drops from 18 failures to 2, execute drops from
49 failures to 1, and unsorted drops from 40 failures to 0, 

	As I mentioned in my previous message, Kenner contacted Meissner
and me about removing that code but I did not want to potentially
destabilize the port.  Kenner reported an Ada problem and both the
libstdc++ build failure and most AIX 4.3 64-bit torture test failures
centered around emit_move_insn / emit_move_insn_1 called from the now
disabled code.

	The current patch only disables the functionality for
TARGET_POWERPC64 so all of the 32-bit support is unaffected.  AIX 4.3 64-bit
was not functioning properly before and now it is, so things only have
improved and I consider this safe for inclusion in egcs-1.1.1.  When egcs-1.1
has settled, we should consider removing the code altogether and allowing
secondary reload to do all of the work for 32-bit targets as well.

David




More information about the Gcc-bugs mailing list