zero-ing is not enough

Dominikus Dittes Scherkl via Digitalmars-d digitalmars-d at puremagic.com
Wed Sep 10 03:34:28 PDT 2014


On Tuesday, 9 September 2014 at 18:59:33 UTC, Walter Bright wrote:
> 1. The compiler has -gx, which will "stomp" the stack upon 
> function return.
Nice. But this will be set for the whole program.
But if I want to use e.g. a crypto-library, the rest of the 
program should not be slowed by stomping the stack all the time, 
only the library-functions that need this.

> 2. A "volatileMemset" should be added to druntime, per 10661
Good.

> 3. A function, say, "clearRegisters" should be added to 
> druntime that zeros out all scratch registers.
Good.

> I know the ycombinator article says that is insufficient, but 
> these are still things that people are going to ask for and we 
> should provide.
I think an attribute to prohibit "copying around"-optimizations 
would still be usefull in addition - together with the other 
three additions we should come close to what was intended by that 
article.
Maybe this can also avoid caches? (would be a mayor slowdown, but 
some will do what whatever is necessary to calm their paranoia...)


More information about the Digitalmars-d mailing list