Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sun, 13 Feb 2011 15:23:38 +0000
From: Freddie Witherden <>
Subject: Re: MD5 mmx/sse impelemtation for 32bit

On 13/02/11 07:55, Yoni Londner wrote:
> I am trying to compile it, but I am getting allot of errors:
> for instance, MD5_SSE_PARA is defined only in x86-64.h and not in x86-sse.h.
> Also, for target linux-x86-sse2  '-msse2' is needed.
> I fixed all these problems, but I suspect this code was never used on
> 32bit arch.
> When I run the tests (./john --test) - all tests pass (including
> md5_gen tests), except this one: Apache MD5 [12x]... FAILED
> (get_hash[1](0)).
> I will continue my testing, but will appreciate any help of someone
> who used this code in 32bit apps.

It should be possible, with a little bit of work, to get it functioning
perfectly in 32-bit mode.  However, due to increased register pressure
the 32-bit version is likely to perform worse than the 64-bit version.
Moreover, given that most (with the notable exception of the lacklustre
Intel Atom) CPUs produced in the last five years are 64-bit capable
porting the code to 32-bits may not be a worthwhile investment.

> Another question (and please forgive my ignorance), what is ICC?
> Yoni.

ICC is the Intel C Compiler.  Although commercial in nature it is
available free for non-commercial users.  It often produces code that is
faster than that of GCC.  It really is a case of YMMV.

Polemically yours, Freddie.

Download attachment "signature.asc" of type "application/pgp-signature" (199 bytes)

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.