dotnet/runtime

[RyuJIT/x86/x64] Unify and streamline emitter for operand-size override prefix (0x66)

Open

#11.788 geöffnet am 10. Jan. 2019

Auf GitHub ansehen
 (0 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)C# (5.445 Forks)batch import
arch-x64arch-x86area-CodeGen-coreclrhelp wanted

Repository-Metriken

Stars
 (17.886 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 12T 11h) (661 gemergte PRs in 30 T)

Beschreibung

Now, the emitter has a lot of code like below for adding operand-size override prefix (0x66) or estimating code size of it.

    if (attrSize == EA_2BYTE && ins != INS_movzx && ins != INS_movsx)
    {
        ...
    }

We need to refactor the emitter to unify and simplify the code.

cc @CarolEidt @tannergooding

category:implementation theme:emitter skill-level:beginner cost:small impact:small

Contributor Guide