Skip to content

Commit 0833f23

Browse files
nielsdosGirgias
authored andcommitted
Use specialised zend_new_pair() function to return array pairs in gmp
This is a bit faster, and more readable.
1 parent 8addc3c commit 0833f23

File tree

1 file changed

+3
-9
lines changed

1 file changed

+3
-9
lines changed

ext/gmp/gmp.c

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -916,9 +916,7 @@ ZEND_FUNCTION(gmp_div_qr)
916916
gmp_create(&result1, &gmpnum_result1);
917917
gmp_create(&result2, &gmpnum_result2);
918918

919-
array_init(return_value);
920-
add_next_index_zval(return_value, &result1);
921-
add_next_index_zval(return_value, &result2);
919+
RETVAL_ARR(zend_new_pair(&result1, &result2));
922920

923921
switch (round) {
924922
case GMP_ROUND_ZERO:
@@ -1217,9 +1215,7 @@ ZEND_FUNCTION(gmp_sqrtrem)
12171215
gmp_create(&result1, &gmpnum_result1);
12181216
gmp_create(&result2, &gmpnum_result2);
12191217

1220-
array_init(return_value);
1221-
add_next_index_zval(return_value, &result1);
1222-
add_next_index_zval(return_value, &result2);
1218+
RETVAL_ARR(zend_new_pair(&result1, &result2));
12231219

12241220
mpz_sqrtrem(gmpnum_result1, gmpnum_result2, gmpnum_a);
12251221
}
@@ -1276,9 +1272,7 @@ ZEND_FUNCTION(gmp_rootrem)
12761272
gmp_create(&result1, &gmpnum_result1);
12771273
gmp_create(&result2, &gmpnum_result2);
12781274

1279-
array_init(return_value);
1280-
add_next_index_zval(return_value, &result1);
1281-
add_next_index_zval(return_value, &result2);
1275+
RETVAL_ARR(zend_new_pair(&result1, &result2));
12821276

12831277
#if GMP_51_OR_NEWER
12841278
/* mpz_rootrem() is supported since GMP 4.2, but buggy wrt odd roots

0 commit comments

Comments
 (0)