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