[LLVMbugs] [Bug 13626] New: powerpc64 quadword int return value does not match "de facto" PPC ELF ABI
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Fri Aug 17 08:18:34 PDT 2012
http://llvm.org/bugs/show_bug.cgi?id=13626
Bug #: 13626
Summary: powerpc64 quadword int return value does not match "de
facto" PPC ELF ABI
Product: new-bugs
Version: trunk
Platform: Other
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: wschmidt at linux.vnet.ibm.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
On powerpc64-unknown-linux-gnu, the method of returning quadword integer values
(__int128_t, __uint128_t) differs from that used by GCC. The 64-bit PowerPC
ELF Application Binary Interface Supplement
(see http://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.9.html) is
unfortunately silent on the matter (apparently an oversight in version 1.9 when
the quadword integer types were added).
GCC returns quadword integers in the pair GPR3/GPR4, which is analogous to
quadword floating-point being returned in FPR1/FPR2 and is most natural and
efficient. LLVM currently returns such values via the hidden pointer to the
caller's storage in GPR3. In my view, this should be changed to use GPR3/GPR4
for compatibility with the de facto standard, and the ABI needs to be updated
to correct this missing information.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list