[Pkg] The Trunk: Collections-ul.400.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Nov 2 02:12:33 UTC 2010


Levente Uzonyi uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-ul.400.mcz

==================== Summary ====================

Name: Collections-ul.400
Author: ul
Time: 2 November 2010, 3:12:07.581 am
UUID: 747015e4-a721-7745-982e-7f9df814845d
Ancestors: Collections-ul.399

- use paragma declarations for #inline: and #var:declareC:

=============== Diff against Collections-ul.399 ===============

Item was changed:
  ----- Method: ByteString class>>stringHash:initialHash: (in category 'primitives') -----
  stringHash: aString initialHash: speciesHash
  
  	| stringSize hash low |
  	<primitive: 'primitiveStringHash' module: 'MiscPrimitivePlugin'>
  
+ 	<var: #aHash declareC: 'int speciesHash'>
+ 	<var: #aString declareC: 'unsigned char *aString'>
- 	self var: #aHash declareC: 'int speciesHash'.
- 	self var: #aString declareC: 'unsigned char *aString'.
  
  	stringSize := aString size.
  	hash := speciesHash bitAnd: 16rFFFFFFF.
  	1 to: stringSize do: [:pos |
  		hash := hash + (aString at: pos) asciiValue.
  		"Begin hashMultiply"
  		low := hash bitAnd: 16383.
  		hash := (16r260D * low + ((16r260D * (hash bitShift: -14) + (16r0065 * low) bitAnd: 16383) * 16384)) bitAnd: 16r0FFFFFFF.
  	].
  	^ hash!



More information about the Packages mailing list