On Sunday, 16 February 2020 at 13:48:43 UTC, Виталий Фадеев wrote:
Possible mark variable for force use register ?

Example C-code:
{
    register char *buf;
    long           pos;
    register int   n;
    register int   r;

    if (!n)
        return 0;
}


How to implement in D ?

Don't you get a warning from your c compiler a C compiler?
The register keyword as been deprecated for ages in C.
Since the compiler cannot actually guarantee that the variable will be a register.
As a result D does not have the register keyword.

in D simply allocating a local is enough (and compiling with optimization enabled), if there is a register free to put the variable in, that's what the optimizer will do.

If you don't want to be at the mercy of the optimizer you can always write a block of asm.
Which is what I usually do when I _really_ care.
  • "register int n&q... Виталий Фадеев via Digitalmars-d-learn
    • Re: "registe... Stefan Koch via Digitalmars-d-learn

Reply via email to