[Gmp-commit] /var/hg/gmp: Define maddld, maddhdu, popcntd, and divdeu.
mercurial at gmplib.org
mercurial at gmplib.org
Mon Jan 1 20:30:11 UTC 2018
details: /var/hg/gmp/rev/3b4810b2c0a0
changeset: 17524:3b4810b2c0a0
user: Torbjorn Granlund <tg at gmplib.org>
date: Mon Jan 01 21:30:04 2018 +0100
description:
Define maddld, maddhdu, popcntd, and divdeu.
diffstat:
mpn/powerpc32/powerpc-defs.m4 | 16 +++++++++++++++-
1 files changed, 15 insertions(+), 1 deletions(-)
diffs (32 lines):
diff -r dc62a57aeb67 -r 3b4810b2c0a0 mpn/powerpc32/powerpc-defs.m4
--- a/mpn/powerpc32/powerpc-defs.m4 Mon Jan 01 21:25:34 2018 +0100
+++ b/mpn/powerpc32/powerpc-defs.m4 Mon Jan 01 21:30:04 2018 +0100
@@ -2,7 +2,7 @@
dnl m4 macros for PowerPC assembler (32 and 64 bit).
-dnl Copyright 2000, 2002, 2003 Free Software Foundation, Inc.
+dnl Copyright 2000, 2002, 2003, 2017 Free Software Foundation, Inc.
dnl This file is part of the GNU MP Library.
dnl
@@ -100,5 +100,19 @@
define(ASSERT_counter,1)
+dnl Manually assemble some new instructions
+dnl
+
+define(`maddld',m4_assert_numargs(4)`dnl
+.long eval(0x10000033+m4_lshift($1,21)+m4_lshift($2,16)+m4_lshift($3,11)+m4_lshift($4,6))')
+
+define(`maddhdu',m4_assert_numargs(4)`dnl
+.long eval(0x10000031+m4_lshift($1,21)+m4_lshift($2,16)+m4_lshift($3,11)+m4_lshift($4,6))')
+
+define(`popcntd',m4_assert_numargs(2)`dnl
+.long eval(0x7c0003f4+m4_lshift($2,21)+m4_lshift($1,16))')
+
+define(`divdeu',m4_assert_numargs(3)`dnl
+.long eval(0x7c000312+m4_lshift($1,21)+m4_lshift($2,16)+m4_lshift($3,11))')
divert
More information about the gmp-commit
mailing list