GNU bug report logs - #13118
[PATCH] factor: disable longlong.h logic for x32 builds

Previous Next

Package: coreutils;

Reported by: Mike Frysinger <vapier <at> gentoo.org>

Date: Fri, 7 Dec 2012 20:45:01 UTC

Severity: normal

Tags: patch

Done: Pádraig Brady <P <at> draigBrady.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Mike Frysinger <vapier <at> gentoo.org>
To: 13118 <at> debbugs.gnu.org
Subject: bug#13118: [PATCH] factor: disable longlong.h logic for x32 builds
Date: Fri,  7 Dec 2012 15:44:18 -0500
The current x86_64 asm code does not work for x32 ABIs, so disable it
until someone can fix it.  Simply deleting the q suffix is not enough.

* src/longlong.h: Check for __ILP32__ for x86_64 targets.
---
 src/longlong.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/longlong.h b/src/longlong.h
index f2b2c49..baf001c 100644
--- a/src/longlong.h
+++ b/src/longlong.h
@@ -1006,7 +1006,7 @@ extern UWtype __MPN(udiv_qrnnd) (UWtype *, UWtype, UWtype, UWtype);
 #endif
 #endif /* 80x86 */
 
-#if defined (__amd64__) && W_TYPE_SIZE == 64
+#if defined (__amd64__) && W_TYPE_SIZE == 64 && !defined (__ILP32__)
 #define add_ssaaaa(sh, sl, ah, al, bh, bl) \
   __asm__ ("addq %5,%q1\n\tadcq %3,%q0"					\
 	   : "=r" (sh), "=&r" (sl)					\
-- 
1.7.12.4





This bug report was last modified 12 years and 215 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.