sv_setuv_mg is so rarely called that the IV optimisation test is not
Nicholas Clark [Mon, 4 Jul 2005 10:24:26 +0000 (10:24 +0000)]
needed.

p4raw-id: //depot/perl@25064

sv.c

diff --git a/sv.c b/sv.c
index 83c2d4e..0bf15d3 100644 (file)
--- a/sv.c
+++ b/sv.c
@@ -1775,21 +1775,9 @@ Like C<sv_setuv>, but also handles 'set' magic.
 void
 Perl_sv_setuv_mg(pTHX_ register SV *sv, UV u)
 {
-    /* With these two if statements:
-       u=1.49  s=0.52  cu=72.49  cs=10.64  scripts=270  tests=20865
-
-       without
-       u=1.35  s=0.47  cu=73.45  cs=11.43  scripts=270  tests=20865
-
-       If you wish to remove them, please benchmark to see what the effect is
-    */
-    if (u <= (UV)IV_MAX) {
-       sv_setiv(sv, (IV)u);
-    } else {
-       sv_setiv(sv, 0);
-       SvIsUV_on(sv);
-       sv_setuv(sv,u);
-    }
+    sv_setiv(sv, 0);
+    SvIsUV_on(sv);
+    sv_setuv(sv,u);
     SvSETMAGIC(sv);
 }