lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

> If I am not mistaken current Lua implementation computes hash value by
> iterating through a string one character at a time. Would it be faster
> to iterate one word at a time (4 bytes at a time in 32bit
> architecture)?  It will require changing hash function implementation
> but it could speed up the calculations. Hopefully, we can still treat
> 127-byte long strings as short strings.

I do not see a simple way to write this in a portable way (respecting
alignment requirements for word access). For strings already internal to
Lua we know about their alignment, but external strings (the ones to be
internalized) may start anywhere. We would need to do some arithmetic
with addresses, something invalid in ANSI C.

-- Roberto