summaryrefslogtreecommitdiffstats
path: root/qemu/roms/SLOF/slof/fs/find-hash.fs
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/roms/SLOF/slof/fs/find-hash.fs')
-rw-r--r--qemu/roms/SLOF/slof/fs/find-hash.fs77
1 files changed, 0 insertions, 77 deletions
diff --git a/qemu/roms/SLOF/slof/fs/find-hash.fs b/qemu/roms/SLOF/slof/fs/find-hash.fs
deleted file mode 100644
index a40ccbd4f..000000000
--- a/qemu/roms/SLOF/slof/fs/find-hash.fs
+++ /dev/null
@@ -1,77 +0,0 @@
-\ *****************************************************************************
-\ * Copyright (c) 2004, 2008 IBM Corporation
-\ * All rights reserved.
-\ * This program and the accompanying materials
-\ * are made available under the terms of the BSD License
-\ * which accompanies this distribution, and is available at
-\ * http://www.opensource.org/licenses/bsd-license.php
-\ *
-\ * Contributors:
-\ * IBM Corporation - initial implementation
-\ ****************************************************************************/
-
-#ifdef HASH_DEBUG
-0 value from-hash
-0 value not-from-hash
-0 value hash-collisions
-#endif
-
-clean-hash
-
-: hash-find ( str len head -- 0 | link )
- >r 2dup 2dup hash ( str len str len hash R: head )
- dup >r @ dup ( str len str len *hash *hash R: head hash )
- IF ( str len str len *hash R: head hash )
- link>name name>string string=ci ( str len true|false R: head hash )
- dup 0=
- IF
-#ifdef HASH_DEBUG
- hash-collisions 1+
- to hash-collisions
-#endif
- THEN
- ELSE
- nip nip ( str len 0 R: head hash )
- THEN
- IF \ hash found
- 2drop r> @ r> drop ( *hash R: )
-#ifdef HASH_DEBUG
- from-hash 1+ to from-hash
-#endif
- exit
- THEN \ hash not found
- r> r> swap >r ((find)) ( str len head R: hash=0 )
- dup
- IF
-#ifdef HASH_DEBUG
- not-from-hash 1+
- to not-from-hash
-#endif
- dup r> ! ( link R: )
- ELSE
- r> drop ( 0 R: )
- THEN
-;
-
-: hash-reveal hash off ;
-
-' hash-reveal to (reveal)
-' hash-find to (find)
-
-#ifdef HASH_DEBUG
-\ print out all entries in the hash table
-: dump-hash-table ( -- )
- cr
- hash-table hash-size 0 DO
- dup @ dup 0<> IF
- over . s" : " type link>name name>string type cr
- ELSE
- drop
- THEN
- cell+
- LOOP drop
- s" hash-collisions: " type hash-collisions . cr
- s" from-hash: " type from-hash . cr
- s" not-from-hash: " type not-from-hash . cr
-;
-#endif