On 30-10-2011 06:05, Andrew Wiley wrote:
On Sat, Oct 29, 2011 at 10:55 PM, Chante <udontspa...@never.will.u> wrote:


    "Manu" <turkey...@gmail.com <mailto:turkey...@gmail.com>> wrote in
    message
    news:mailman.586.1319935753.24802.digitalmar...@puremagic.com...

     > What's the deal with core.cpuid?

    I think they just want the "mainstream"
    ("sheeple"/"followers"/"believers"/"90210_ers"/"younsters", etc.).
    If you
    don't fit into their petri-dish and aren't cog to add to their
    self-aggrandizement, they won't let you log in anymore.



There are a few things like this around, and if you look far enough
back, it's quite simple why things like this happened. Originally, when
D was new, DMD essentially was the definition of D, x86 was the only
real architecture around, with x86_64 starting to come into play. Now we
have more compilers, and x86/64 isn't looking quite like the monopoly it
used to be, so this interface will probably need to change.

There's no conspiracy here, it's just "what worked" back in the day, and
either it's unused or unimportant such that no one has tried to update
it thus far. Since this is in core, it's mostly Sean's territory, but
I'm sure he'd welcome ideas.

I actually do use core.cpuid and find it very useful.

I think what we need to do is have separate modules for the various architectures, and then have some central wrapper module that wraps the common stuff that most archs share (i.e. "are we using 64-bit pointers?", etc...). We still need to keep the modules with more arch-specific checks public, because someone might actually need to use that information (in my case, I need it to decide which instructions I can emit in my JIT compiler).

Speaking of all this, we really need to standardize version identifiers for !x86 architectures in the web site...

- Alex

Reply via email to