home: hub: 9ficl

Download patch

ref: 55fabce6bc6c874a0f4bc2a55a41549faf94fb97
parent: c07af97cf1ba21b0a71d1d708969bf861a831076
author: asau <asau@ficl.sf.net>
date: Mon Nov 1 09:10:27 CDT 2010

Localise variable to help optimiser.

--- a/dictionary.c
+++ b/dictionary.c
@@ -3,7 +3,7 @@
 ** Forth Inspired Command Language - dictionary methods
 ** Author: John Sadler (john_sadler@alum.mit.edu)
 ** Created: 19 July 1997
-** $Id: dictionary.c,v 1.3 2010/10/20 11:35:53 asau Exp $
+** $Id: dictionary.c,v 1.4 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** This file implements the dictionary -- Ficl's model of 
--- a/double.c
+++ b/double.c
@@ -7,7 +7,7 @@
 ** Created: 25 January 1998
 ** Rev 2.03: Support for 128 bit DP math. This file really ouught to
 ** be renamed!
-** $Id: double.c,v 1.2 2010/09/12 15:18:07 asau Exp $
+** $Id: double.c,v 1.3 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
--- a/ficl.h
+++ b/ficl.h
@@ -4,7 +4,7 @@
 ** Author: John Sadler (john_sadler@alum.mit.edu)
 ** Created: 19 July 1997
 ** Dedicated to RHS, in loving memory
-** $Id: ficl.h,v 1.26 2010/10/26 11:09:26 asau Exp $
+** $Id: ficl.h,v 1.27 2010/11/01 14:10:27 asau Exp $
 ********************************************************************
 **
 ** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
--- a/float.c
+++ b/float.c
@@ -4,7 +4,7 @@
 ** ANS Forth FLOAT word-set written in C
 ** Author: Guy Carver & John Sadler (john_sadler@alum.mit.edu)
 ** Created: Apr 2001
-** $Id: float.c,v 1.11 2010/10/20 13:31:31 asau Exp $
+** $Id: float.c,v 1.12 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
--- a/main.c
+++ b/main.c
@@ -1,6 +1,6 @@
 /*
 ** stub main for testing Ficl
-** $Id: main.c,v 1.2 2010/09/10 09:01:28 asau Exp $
+** $Id: main.c,v 1.3 2010/11/01 14:10:27 asau Exp $
 */
 /*
 ** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
--- a/prefix.c
+++ b/prefix.c
@@ -4,7 +4,7 @@
 ** Parser extensions for Ficl
 ** Authors: Larry Hastings & John Sadler (john_sadler@alum.mit.edu)
 ** Created: April 2001
-** $Id: prefix.c,v 1.8 2010/09/13 18:43:04 asau Exp $
+** $Id: prefix.c,v 1.9 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
--- a/primitives.c
+++ b/primitives.c
@@ -4,7 +4,7 @@
 ** ANS Forth CORE word-set written in C
 ** Author: John Sadler (john_sadler@alum.mit.edu)
 ** Created: 19 July 1997
-** $Id: primitives.c,v 1.5 2010/10/25 12:18:06 asau Exp $
+** $Id: primitives.c,v 1.6 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
--- a/search.c
+++ b/search.c
@@ -4,7 +4,7 @@
 ** ANS Forth SEARCH and SEARCH-EXT word-set written in C
 ** Author: John Sadler (john_sadler@alum.mit.edu)
 ** Created: 6 June 2000
-** $Id: search.c,v 1.10 2010/08/12 13:57:22 asau Exp $
+** $Id: search.c,v 1.11 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
--- a/stack.c
+++ b/stack.c
@@ -3,7 +3,7 @@
 ** Forth Inspired Command Language
 ** Author: John Sadler (john_sadler@alum.mit.edu)
 ** Created: 16 Oct 1997
-** $Id: stack.c,v 1.11 2010/08/12 13:57:22 asau Exp $
+** $Id: stack.c,v 1.12 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
--- a/system.c
+++ b/system.c
@@ -3,7 +3,7 @@
 ** Forth Inspired Command Language - external interface
 ** Author: John Sadler (john_sadler@alum.mit.edu)
 ** Created: 19 July 1997
-** $Id: system.c,v 1.2 2010/09/10 10:35:54 asau Exp $
+** $Id: system.c,v 1.3 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** This is an ANS Forth interpreter written in C.
--- a/tools.c
+++ b/tools.c
@@ -3,7 +3,7 @@
 ** Forth Inspired Command Language - programming tools
 ** Author: John Sadler (john_sadler@alum.mit.edu)
 ** Created: 20 June 2000
-** $Id: tools.c,v 1.13 2010/10/20 13:31:31 asau Exp $
+** $Id: tools.c,v 1.14 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
--- a/vm.c
+++ b/vm.c
@@ -3,7 +3,7 @@
 ** Forth Inspired Command Language - virtual machine methods
 ** Author: John Sadler (john_sadler@alum.mit.edu)
 ** Created: 19 July 1997
-** $Id: vm.c,v 1.17 2010/09/13 18:43:04 asau Exp $
+** $Id: vm.c,v 1.18 2010/11/01 14:10:27 asau Exp $
 *******************************************************************/
 /*
 ** This file implements the virtual machine of Ficl. Each virtual
@@ -258,7 +258,6 @@
 	register ficlCell *returnTop;
 #if FICL_WANT_FLOAT
 	register ficlCell *floatTop;
-	ficlFloat f;
 #endif  /* FICL_WANT_FLOAT */
 #if FICL_WANT_LOCALS
 	register ficlCell *frame;
@@ -1727,6 +1726,7 @@
 			*******************************************************************/
 			case ficlInstructionFPlus:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(2, 1);
 
 				f = (floatTop--)->f;
@@ -1740,6 +1740,7 @@
 			*******************************************************************/
 			case ficlInstructionFMinus:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(2, 1);
 
 				f = (floatTop--)->f;
@@ -1753,6 +1754,7 @@
 			*******************************************************************/
 			case ficlInstructionFStar:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(2, 1);
 
 				f = (floatTop--)->f;
@@ -1778,6 +1780,7 @@
 			*******************************************************************/
 			case ficlInstructionFSlash:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(2, 1);
 
 				f = (floatTop--)->f;
@@ -1791,6 +1794,7 @@
 			*******************************************************************/
 			case ficlInstructionFPlusI:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(1, 1);
 				CHECK_STACK(1, 0);
 
@@ -1805,6 +1809,7 @@
 			*******************************************************************/
 			case ficlInstructionFMinusI:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(1, 1);
 				CHECK_STACK(1, 0);
 
@@ -1819,6 +1824,7 @@
 			*******************************************************************/
 			case ficlInstructionFStarI:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(1, 1);
 				CHECK_STACK(1, 0);
 
@@ -1833,6 +1839,7 @@
 			*******************************************************************/
 			case ficlInstructionFSlashI:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(1, 1);
 				CHECK_STACK(1, 0);
 
@@ -1847,6 +1854,7 @@
 			*******************************************************************/
 			case ficlInstructionIMinusF:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(1, 1);
 				CHECK_STACK(1, 0);
 
@@ -1861,6 +1869,7 @@
 			*******************************************************************/
 			case ficlInstructionISlashF:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(1,1);
 				CHECK_STACK(1, 0);
 
@@ -2160,6 +2169,7 @@
 			*******************************************************************/
 			case ficlInstructionFEquals:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(2, 0);
 				CHECK_STACK(0, 1);
 
@@ -2174,6 +2184,7 @@
 			*******************************************************************/
 			case ficlInstructionFLess:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(2, 0);
 				CHECK_STACK(0, 1);
 
@@ -2188,6 +2199,7 @@
 			*******************************************************************/
 			case ficlInstructionFGreater:
 			{
+				ficlFloat f;
 				CHECK_FLOAT_STACK(2, 0);
 				CHECK_STACK(0, 1);