[libmath-prime-util-perl] 66/181: remove dTHX usage

Partha P. Mukherjee ppm-guest at moszumanska.debian.org
Thu May 21 18:51:07 UTC 2015


This is an automated email from the git hooks/post-receive script.

ppm-guest pushed a commit to annotated tag v0.36
in repository libmath-prime-util-perl.

commit 913840e51ae9304596a8bb6bbb36c0a1a6017ccd
Author: bulk88 <bulk88 at hotmail.com>
Date:   Mon Dec 30 11:37:34 2013 -0500

    remove dTHX usage
---
 XS.xs | 61 +++++++++++++++++++++++++++++--------------------------------
 1 file changed, 29 insertions(+), 32 deletions(-)

diff --git a/XS.xs b/XS.xs
index 8a2e484..496a7a7 100644
--- a/XS.xs
+++ b/XS.xs
@@ -81,9 +81,8 @@
  * Returns 0 if it is an object or a string too large for a UV.
  * Returns 1 if it is good to process by XS.
  */
-static int _validate_int(SV* n, int negok)
+static int _validate_int(pTHX_ SV* n, int negok)
 {
-  dTHX;
   const char* maxstr;
   char* ptr;
   STRLEN i, len, maxlen;
@@ -127,15 +126,14 @@ static int _validate_int(SV* n, int negok)
 }
 
 /* Call a Perl sub to handle work for us. */
-static int _vcallsubn(I32 flags, const char* name, int nargs)
+static int _vcallsubn(pTHX_ I32 flags, const char* name, int nargs)
 {
-    dTHX;
     dSP;
     PUSHMARK(SP-nargs);
     PUTBACK;
     return call_pv(name, flags);
 }
-#define _vcallsub(func) (void)_vcallsubn(G_SCALAR, func, 1)
+#define _vcallsub(func) (void)_vcallsubn(aTHX_ G_SCALAR, func, 1)
 
 #if BITS_PER_WORD == 64
 static const UV _max_prime = UVCONST(18446744073709551557);
@@ -450,7 +448,7 @@ is_prime(IN SV* svn)
   PREINIT:
     int status;
   PPCODE:
-    status = _validate_int(svn, 1);
+    status = _validate_int(aTHX_ svn, 1);
     if (status == -1) {
       XSRETURN_UV(0);
     } else if (status == 1) {
@@ -473,7 +471,7 @@ next_prime(IN SV* svn)
   ALIAS:
     prev_prime = 1
   PPCODE:
-    if (_validate_int(svn, 0)) {
+    if (_validate_int(aTHX_ svn, 0)) {
       UV n = my_svuv(svn);
       if (ix) {
         XSRETURN_UV( (n < 3) ? 0 : _XS_prev_prime(n));
@@ -489,7 +487,7 @@ next_prime(IN SV* svn)
 void
 factor(IN SV* svn)
   PPCODE:
-    int status = _validate_int(svn, 0);
+    int status = _validate_int(aTHX_ svn, 0);
     if (status == 1) {
       UV factors[MPU_MAX_FACTORS+1];
       UV n = my_svuv(svn);
@@ -503,7 +501,7 @@ factor(IN SV* svn)
         }
       }
     } else {
-      XSRETURN(_vcallsubn(GIMME_V, "Math::Prime::Util::_generic_factor", 1));
+      XSRETURN(_vcallsubn(aTHX_ GIMME_V, "Math::Prime::Util::_generic_factor", 1));
     }
 
 
@@ -512,8 +510,8 @@ znorder(IN SV* sva, IN SV* svn)
   PREINIT:
     int astatus, nstatus;
   PPCODE:
-    astatus = _validate_int(sva, 0);
-    nstatus = _validate_int(svn, 0);
+    astatus = _validate_int(aTHX_ sva, 0);
+    nstatus = _validate_int(aTHX_ svn, 0);
     if (astatus == 1 && nstatus == 1) {
       UV a = my_svuv(sva);
       UV n = my_svuv(svn);
@@ -521,14 +519,14 @@ znorder(IN SV* sva, IN SV* svn)
       if (order == 0) XSRETURN_UNDEF;
       XSRETURN_UV(order);
     }
-    XSRETURN( _vcallsubn(G_SCALAR, "Math::Prime::Util::_generic_znorder", 2) );
+    XSRETURN( _vcallsubn(aTHX_ G_SCALAR, "Math::Prime::Util::_generic_znorder", 2) );
 
 void
 znprimroot(IN SV* svn)
   PREINIT:
     int status;
   PPCODE:
-    status = _validate_int(svn, 1);
+    status = _validate_int(aTHX_ svn, 1);
     if (status != 0) {
       UV r, n = my_svuv(svn);
       if (status == -1)
@@ -545,8 +543,8 @@ kronecker(IN SV* sva, IN SV* svb)
   PREINIT:
     int astatus, bstatus;
   PPCODE:
-    astatus = _validate_int(sva, 2);
-    bstatus = _validate_int(svb, 2);
+    astatus = _validate_int(aTHX_ sva, 2);
+    bstatus = _validate_int(aTHX_ svb, 2);
     if (astatus == 1 && bstatus == 1) {
       UV a = my_svuv(sva);
       UV b = my_svuv(svb);
@@ -557,7 +555,7 @@ kronecker(IN SV* sva, IN SV* svb)
       IV b = my_sviv(svb);
       XSRETURN_IV( kronecker_ss(a, b) );
     }
-    XSRETURN(_vcallsubn(G_SCALAR, "Math::Prime::Util::_generic_kronecker", 2));
+    XSRETURN(_vcallsubn(aTHX_ G_SCALAR, "Math::Prime::Util::_generic_kronecker", 2));
 
 double
 _XS_ExponentialIntegral(IN SV* x)
@@ -587,19 +585,19 @@ void
 euler_phi(IN SV* svlo, ...)
   PPCODE:
     if (items == 1) {
-      int lostatus = _validate_int(svlo, 1);
+      int lostatus = _validate_int(aTHX_ svlo, 1);
       if (lostatus == -1) {      /*  I like SAGE's decision that    */
         XSRETURN_UV(0);          /*  totient(n) = 0 if n <= 0       */
       } else if (lostatus == 1) {
         UV lo = my_svuv(svlo);
         XSRETURN_UV(totient(lo));
       } else {
-        XSRETURN( _vcallsubn(G_SCALAR, "Math::Prime::Util::_generic_euler_phi", 1) );
+        XSRETURN( _vcallsubn(aTHX_ G_SCALAR, "Math::Prime::Util::_generic_euler_phi", 1) );
       }
     } else if (items == 2) {
       SV* svhi = ST(1);
-      int lostatus = _validate_int(svlo, 1);
-      int histatus = _validate_int(svhi, 1);
+      int lostatus = _validate_int(aTHX_ svlo, 1);
+      int histatus = _validate_int(aTHX_ svhi, 1);
       if (lostatus == 1 && histatus == 1) {
         UV lo = my_svuv(svlo);
         UV hi = my_svuv(svhi);
@@ -619,7 +617,7 @@ euler_phi(IN SV* svlo, ...)
           Safefree(totients);
         }
       } else {
-        XSRETURN( _vcallsubn(G_ARRAY, "Math::Prime::Util::_generic_euler_phi", 2) );
+        XSRETURN( _vcallsubn(aTHX_ G_ARRAY, "Math::Prime::Util::_generic_euler_phi", 2) );
       }
     } else {
       croak("Usage: euler_phi(n) or euler_phi(1o,hi)");
@@ -629,17 +627,17 @@ void
 moebius(IN SV* svlo, ...)
   PPCODE:
     if (items == 1) {
-      int nstatus = _validate_int(svlo, 0);
+      int nstatus = _validate_int(aTHX_ svlo, 0);
       if (nstatus == 1) {
         UV n = my_svuv(svlo);
         XSRETURN_IV(moebius(n));
       } else {
-        XSRETURN(_vcallsubn(G_SCALAR, "Math::Prime::Util::_generic_moebius",1));
+        XSRETURN(_vcallsubn(aTHX_ G_SCALAR, "Math::Prime::Util::_generic_moebius",1));
       }
     } else if (items == 2) {
       SV* svhi = ST(1);
-      int lostatus = _validate_int(svlo, 0);
-      int histatus = _validate_int(svhi, 0);
+      int lostatus = _validate_int(aTHX_ svlo, 0);
+      int histatus = _validate_int(aTHX_ svhi, 0);
       if (lostatus == 1 && histatus == 1) {
         UV lo = my_svuv(svlo);
         UV hi = my_svuv(svhi);
@@ -655,7 +653,7 @@ moebius(IN SV* svlo, ...)
           Safefree(mu);
         }
       } else {
-        XSRETURN(_vcallsubn(G_ARRAY, "Math::Prime::Util::_generic_moebius",2));
+        XSRETURN(_vcallsubn(aTHX_ G_ARRAY, "Math::Prime::Util::_generic_moebius",2));
       }
     } else {
       croak("Usage: moebius(n) or moebius(1o,hi)");
@@ -672,7 +670,7 @@ carmichael_lambda(IN SV* svn)
   PREINIT:
     int status;
   PPCODE:
-    status = _validate_int(svn, (ix == 0) ? 0 : 1);
+    status = _validate_int(aTHX_ svn, (ix == 0) ? 0 : 1);
     if (status == -1) {
       XSRETURN_UV(1);
     } else if (status == 1) {
@@ -688,7 +686,7 @@ int
 _validate_num(SV* svn, ...)
   CODE:
     RETVAL = 0;
-    if (_validate_int(svn, 0)) {
+    if (_validate_int(aTHX_ svn, 0)) {
       if (SvROK(svn)) {  /* Convert small Math::BigInt object into scalar */
         UV n = my_svuv(svn);
         sv_setuv(svn, n);
@@ -732,7 +730,7 @@ forprimes (SV* block, IN SV* svbeg, IN SV* svend = 0)
     unsigned char* segment;
     UV seg_base, seg_low, seg_high;
 
-    if (!_validate_int(svbeg, 0) || (items >= 3 && !_validate_int(svend,0))) {
+    if (!_validate_int(aTHX_ svbeg, 0) || (items >= 3 && !_validate_int(aTHX_ svend,0))) {
       dSP;
       PUSHMARK(SP);
       XPUSHs(block); XPUSHs(svbeg); XPUSHs(svend);
@@ -833,8 +831,7 @@ forcomposites (SV* block, IN SV* svbeg, IN SV* svend = 0)
       croak("Not a subroutine reference");
     if (items <= 1) XSRETURN(0);
 
-    if (!_validate_int(svbeg, 0) || (items >= 3 && !_validate_int(svend,0))) {
-      dSP;
+    if (!_validate_int(aTHX_ svbeg, 0) || (items >= 3 && !_validate_int(aTHX_ svend,0))) {
       PUSHMARK(SP);
       XPUSHs(block); XPUSHs(svbeg); XPUSHs(svend);
       PUTBACK;
@@ -920,7 +917,7 @@ fordivisors (SV* block, IN SV* svn)
       croak("Not a subroutine reference");
     if (items <= 1) XSRETURN(0);
 
-    if (!_validate_int(svn, 0)) {
+    if (!_validate_int(aTHX_ svn, 0)) {
       dSP;
       PUSHMARK(SP);
       XPUSHs(block); XPUSHs(svn);

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libmath-prime-util-perl.git



More information about the Pkg-perl-cvs-commits mailing list