From 08f27d432b540392fbc1e86b1e2c273ac0f93d61 Mon Sep 17 00:00:00 2001 From: dgp Date: Mon, 27 Mar 2006 23:12:59 +0000 Subject: * generic/tclExecute.c: Merge INST_MOD computation in with the INST_?SHIFT instructions, which also operate only on two integral values. Also corrected flaw that made INST_BITNOT of wide values require mp_int calculations. Also corrected type that missed optimized handling of the tclBooleanType by the TclGetBooleanFromObj macro. --- ChangeLog | 4 +++- generic/tclExecute.c | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4c4aeaf..e05d90a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -18,7 +18,9 @@ * generic/tclExecute.c: Merge INST_MOD computation in with the INST_?SHIFT instructions, which also operate only on two integral values. Also corrected flaw that made INST_BITNOT of wide values - require mp_int calculations. + require mp_int calculations. Also corrected type that missed + optimized handling of the tclBooleanType by the TclGetBooleanFromObj + macro. *** 8.5a4 TAGGED FOR RELEASE *** diff --git a/generic/tclExecute.c b/generic/tclExecute.c index 19ec0be..51cb634 100644 --- a/generic/tclExecute.c +++ b/generic/tclExecute.c @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclExecute.c,v 1.233 2006/03/27 22:50:34 dgp Exp $ + * RCS: @(#) $Id: tclExecute.c,v 1.234 2006/03/27 23:12:59 dgp Exp $ */ #include "tclInt.h" @@ -312,7 +312,7 @@ long tclObjsShared[TCL_MAX_SHARED_OBJ_STATS] = { 0, 0, 0, 0, 0 }; #define TclGetBooleanFromObj(interp, objPtr, boolPtr) \ ((((objPtr)->typePtr == &tclIntType) \ - || ((objPtr)->typePtr == &tclIntType)) \ + || ((objPtr)->typePtr == &tclBooleanType)) \ ? (*(boolPtr) = ((objPtr)->internalRep.longValue!=0), TCL_OK) \ : Tcl_GetBooleanFromObj((interp), (objPtr), (boolPtr))) -- cgit v0.12