diff options
author | Miguel Sofer <miguel.sofer@gmail.com> | 2007-08-19 18:59:13 (GMT) |
---|---|---|
committer | Miguel Sofer <miguel.sofer@gmail.com> | 2007-08-19 18:59:13 (GMT) |
commit | 2d71d4d051e14c5b84f251b888c67cbc7b0fee99 (patch) | |
tree | 0e052afc7700294ce588ac894d3ba1346ed73d71 /ChangeLog | |
parent | 8742106ee7df13529f4cbd32c2c1a973ef21a730 (diff) | |
download | tcl-2d71d4d051e14c5b84f251b888c67cbc7b0fee99.zip tcl-2d71d4d051e14c5b84f251b888c67cbc7b0fee99.tar.gz tcl-2d71d4d051e14c5b84f251b888c67cbc7b0fee99.tar.bz2 |
* generic/tclExecute.c: changed the check for overflow in sums,
reducing objsize, number of branches and cache misses (according
to cachegrind). Non-overflow for s=a+b:
previous
((a >= 0 || b >= 0 || s < 0) && (s >= 0 || b < 0 || a < 0))
now
(((a^s) >= 0) || ((a^b) < 0))
This expresses: "a and s have the same sign or else a and b have
different sign".
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 12 |
1 files changed, 12 insertions, 0 deletions
@@ -1,3 +1,15 @@ +2007-08-19 Miguel Sofer <msofer@users.sf.net> + + * generic/tclExecute.c: changed the check for overflow in sums, + reducing objsize, number of branches and cache misses (according + to cachegrind). Non-overflow for s=a+b: + previous + ((a >= 0 || b >= 0 || s < 0) && (s >= 0 || b < 0 || a < 0)) + now + (((a^s) >= 0) || ((a^b) < 0)) + This expresses: "a and s have the same sign or else a and b have + different sign". + 2007-08-19 Donal K. Fellows <dkf@users.sf.net> * doc/interp.n (RESOURCE LIMITS): Added text to better explain why |