Diff for /gforth/comp-i.fs between versions 1.18 and 1.20

version 1.18, 2007/12/31 17:34:58 version 1.20, 2010/05/12 20:13:33
Line 6 Line 6
   
 \ Gforth is free software; you can redistribute it and/or  \ Gforth is free software; you can redistribute it and/or
 \ modify it under the terms of the GNU General Public License  \ modify it under the terms of the GNU General Public License
 \ as published by the Free Software Foundation; either version 2  \ as published by the Free Software Foundation, either version 3
 \ of the License, or (at your option) any later version.  \ of the License, or (at your option) any later version.
   
 \ This program is distributed in the hope that it will be useful,  \ This program is distributed in the hope that it will be useful,
Line 15 Line 15
 \ GNU General Public License for more details.  \ GNU General Public License for more details.
   
 \ You should have received a copy of the GNU General Public License  \ You should have received a copy of the GNU General Public License
 \ along with this program; if not, write to the Free Software  \ along with this program. If not, see http://www.gnu.org/licenses/.
 \ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.  
   
 s" address-unit-bits" environment? drop constant bits/au  s" address-unit-bits" environment? drop constant bits/au
 7 constant dodoes-tag  7 constant dodoes-tag
Line 78  s" address-unit-bits" environment? drop Line 77  s" address-unit-bits" environment? drop
             coffset 0<> cell1 coffset + cell2 = and              coffset 0<> cell1 coffset + cell2 = and
             if              if
                 cell1 cbase - cell / { tag }                  cell1 cbase - cell / { tag }
                 tag dodoes-tag =  
                 if  
                     \ make sure that the next cell will not be tagged  
                     \ !! can probably be optimized away with hybrid threading  
                     dbase negate image1 i 1+ th +!  
                     dbase doffset + negate image2 i 1+ th +!  
                 endif  
                 tag >tag $4000 xor file-id write-cell throw                  tag >tag $4000 xor file-id write-cell throw
                 i reloc-bits set-bit                  i reloc-bits set-bit
             else              else
                 xoffset 0<> cell1 xoffset + cell2 = and                  xoffset 0<> cell1 xoffset + cell2 = and
                 if                  if
                     cell1 xbase - cell / { tag }                      cell1 xbase - cell / { tag }
                     tag dodoes-tag =  
                     if  
                         \ make sure that the next cell will not be tagged  
                         \ !! can probably be optimized away with hybrid threading  
                         dbase negate image1 i 1+ th +!  
                         dbase doffset + negate image2 i 1+ th +!  
                     endif  
                     tag >tag file-id write-cell throw                      tag >tag file-id write-cell throw
                     i reloc-bits set-bit                      i reloc-bits set-bit
                 else                  else

Removed from v.1.18  
changed lines
  Added in v.1.20


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>