summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTorbjorn Granlund <tege@gmplib.org>2009-04-19 23:17:09 +0200
committerTorbjorn Granlund <tege@gmplib.org>2009-04-19 23:17:09 +0200
commitb8df6dbea1e9624c6542511dd678c77d97914e0d (patch)
tree9331b0ce019053a4ec173dacca74b1b5e82c35d6
parentcf71808fa9c7d39ae8279a152f890f7ce012aa41 (diff)
downloadgmp-b8df6dbea1e9624c6542511dd678c77d97914e0d.tar.gz
Fix support for xlc on ppc64.
-rw-r--r--ChangeLog7
-rw-r--r--mpn/powerpc64/aix.m44
-rw-r--r--mpn/powerpc64/darwin.m44
-rw-r--r--mpn/powerpc64/elf.m44
-rw-r--r--mpn/powerpc64/mode64/divrem_1.asm3
-rw-r--r--mpn/powerpc64/mode64/divrem_2.asm3
6 files changed, 25 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 695ce13c5..24887c724 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-04-19 Torbjorn Granlund <tege@gmplib.org>
+
+ * mpn/powerpc64/aix.m4 (EXTERN_FUNC): New define. Add dummy variants
+ for other m4 files.
+ * mpn/powerpc64/mode64/divrem_1.asm: Use EXTERN_FUNC.
+ * mpn/powerpc64/mode64/divrem_1.asm: Likewise.
+
2009-04-16 Torbjorn Granlund <tege@gmplib.org>
* mpn/x86_64/x86_64-defs.m4 (JUMPTABSECT): New define.
diff --git a/mpn/powerpc64/aix.m4 b/mpn/powerpc64/aix.m4
index 63192caaf..589686a86 100644
--- a/mpn/powerpc64/aix.m4
+++ b/mpn/powerpc64/aix.m4
@@ -61,6 +61,10 @@ define(`EXTERN',
m4_assert_numargs(1)
` .globl $1')
+define(`EXTERN_FUNC',
+m4_assert_numargs(1)
+` .globl .$1')
+
define(`DEF_OBJECT',
m4_assert_numargs_range(1,2)
` .csect [RO], 3
diff --git a/mpn/powerpc64/darwin.m4 b/mpn/powerpc64/darwin.m4
index bf6fba335..10055be13 100644
--- a/mpn/powerpc64/darwin.m4
+++ b/mpn/powerpc64/darwin.m4
@@ -82,6 +82,10 @@ define(`EXTERN',
m4_assert_numargs(1)
`dnl')
+define(`EXTERN_FUNC',
+m4_assert_numargs(1)
+`dnl')
+
define(`DEF_OBJECT',
m4_assert_numargs_range(1,2)
` .const
diff --git a/mpn/powerpc64/elf.m4 b/mpn/powerpc64/elf.m4
index 8dcd639a9..e6da11f90 100644
--- a/mpn/powerpc64/elf.m4
+++ b/mpn/powerpc64/elf.m4
@@ -61,6 +61,10 @@ define(`EXTERN',
m4_assert_numargs(1)
`dnl')
+define(`EXTERN_FUNC',
+m4_assert_numargs(1)
+`dnl')
+
define(`DEF_OBJECT',
m4_assert_numargs_range(1,2)
`
diff --git a/mpn/powerpc64/mode64/divrem_1.asm b/mpn/powerpc64/mode64/divrem_1.asm
index d853e6149..895badfe6 100644
--- a/mpn/powerpc64/mode64/divrem_1.asm
+++ b/mpn/powerpc64/mode64/divrem_1.asm
@@ -40,6 +40,9 @@ C Add preinv entry point.
ASM_START()
+
+EXTERN_FUNC(mpn_invert_limb)
+
PROLOGUE(mpn_divrem_1)
mfcr r12
diff --git a/mpn/powerpc64/mode64/divrem_2.asm b/mpn/powerpc64/mode64/divrem_2.asm
index 9892abd13..369b5c1f1 100644
--- a/mpn/powerpc64/mode64/divrem_2.asm
+++ b/mpn/powerpc64/mode64/divrem_2.asm
@@ -40,6 +40,9 @@ ifdef(`DARWIN',,`
define(`r2',`r31')') C FIXME!
ASM_START()
+
+EXTERN_FUNC(mpn_invert_limb)
+
PROLOGUE(mpn_divrem_2)
mflr r0
std r23, -72(r1)