Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[JIT] [APX] Enable additional General Purpose Registers. #108799

Draft
wants to merge 69 commits into
base: main
Choose a base branch
from

Commits on Jul 2, 2024

  1. script-gen logics.

    Ruihan-Yin committed Jul 2, 2024
    Configuration menu
    Copy the full SHA
    5acc239 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    96cd7c7 View commit details
    Browse the repository at this point in the history
  3. XSTATE updates.

    Ruihan-Yin committed Jul 2, 2024
    Configuration menu
    Copy the full SHA
    ff60d96 View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2024

  1. revert debug codes.

    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    d15096f View commit details
    Browse the repository at this point in the history
  2. Ruihan: POC with REX2

    Update comments.
    
    Merge the REX2 changes into the original legacy emit path
    
    bug fix: Set REX2.W with correct mask code.
    
    register encoding and prefix emitting logics.
    
    Add REX2 prefix emit logic
    
    bug fixes
    
    Add Stress mode for REX2 encoding and some bug fixes
    
    resolve comments:
    1. add assertion check for UD opcodes.
    2. add checks for EGPRs.
    
    Add REX2 to emitOutputAM, and let LEA to be REX2 compatible.
    
    Add REX2.X encoding for SIB byte
    
    But fixes: add REX2 prefix on the path in RI where MOV is specially handled.
    
    Enable REX2 encoding for `movups`
    
    fixed bugs in REX2 prefix emitting logic when working with map 1 instructions, and enabled REX2 for POPCNT
    
    legacy map index-er
    
    bug fixes
    
    some clean-up
    
    Adding initial APX unit testing path.
    
    Adding a coredistools dll that has LLVM APX disasm capability.
    
    It must be coppied into a CORE_ROOT manually.
    
    clean up work for REX2
    
    narrow the REX2 scope to `sub` only
    
    some clean up based on the comments.
    
    bug fix
    
    resolve comment
    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    5797645 View commit details
    Browse the repository at this point in the history
  3. resolve merge error.

    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    880e980 View commit details
    Browse the repository at this point in the history
  4. resolve comments

    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    4ee360f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ea8de4f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    e35549e View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a3e1233 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    b6d4704 View commit details
    Browse the repository at this point in the history
  9. Enable REX2 encoding on RI and SV path

     - SV path is mostly for debugging purposes
    
    Added encoding unit tests for instructions with immediates
    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    3ec231b View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    75a2ed6 View commit details
    Browse the repository at this point in the history
  11. CR session.

    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    71f57ff View commit details
    Browse the repository at this point in the history
  12. Testing infra updates: assert REX2 is enabled.

    Code refactoring: AddX86PrefixIfNeeded.
    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    58cee8c View commit details
    Browse the repository at this point in the history
  13. revert rcl_N and rcr_N, tp and latency data for these instructions is…

    … missing in JIT, may indicate these instructions are not being used in JIT, drop them for now.
    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    fdcd651 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    4749cac View commit details
    Browse the repository at this point in the history
  15. Adding unit tests.

    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    8b61ac2 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    4593ca9 View commit details
    Browse the repository at this point in the history
  17. bug fix for bswap

    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    78c5a3b View commit details
    Browse the repository at this point in the history
  18. bt

    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    a3688c1 View commit details
    Browse the repository at this point in the history
  19. xchg, idiv

    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    8238544 View commit details
    Browse the repository at this point in the history
  20. Make sure add REX2 prefix if register encoding for EGPRs are being ca…

    …lled before adding any prefix.
    Ruihan-Yin committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    e7a0beb View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    60de08a View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2024

  1. clean up

    Ruihan-Yin committed Jul 9, 2024
    Configuration menu
    Copy the full SHA
    c910bf8 View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2024

  1. Change all AddSimdPrefix to AddX86Prefix

    Refactor REX2 encoding stress logics.
    Ruihan-Yin committed Jul 15, 2024
    Configuration menu
    Copy the full SHA
    c6856d3 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2024

  1. div, mulEAX

    Ruihan-Yin committed Jul 16, 2024
    Configuration menu
    Copy the full SHA
    bb70d8b View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2024

  1. filter out test from REX2 encoding when using ACC form.

    (this will have side effect that the estimated code will go up and mismatch with actual code size.)
    Ruihan-Yin committed Jul 19, 2024
    Configuration menu
    Copy the full SHA
    957048d View commit details
    Browse the repository at this point in the history

Commits on Jul 24, 2024

  1. Configuration menu
    Copy the full SHA
    3389a46 View commit details
    Browse the repository at this point in the history

Commits on Aug 5, 2024

  1. resolve comments.

    Ruihan-Yin committed Aug 5, 2024
    Configuration menu
    Copy the full SHA
    59353b7 View commit details
    Browse the repository at this point in the history

Commits on Aug 28, 2024

  1. Add APX doc.

    Ruihan-Yin committed Aug 28, 2024
    Configuration menu
    Copy the full SHA
    9f8f67c View commit details
    Browse the repository at this point in the history
  2. script-gen changes.

    Ruihan-Yin committed Aug 28, 2024
    Configuration menu
    Copy the full SHA
    a68865c View commit details
    Browse the repository at this point in the history
  3. XSTATE changes

    Ruihan-Yin committed Aug 28, 2024
    Configuration menu
    Copy the full SHA
    6dfb92b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b998cdf View commit details
    Browse the repository at this point in the history
  5. fix

    Ruihan-Yin committed Aug 28, 2024
    Configuration menu
    Copy the full SHA
    3446e28 View commit details
    Browse the repository at this point in the history
  6. Fix merge error.

    Ruihan-Yin committed Aug 28, 2024
    Configuration menu
    Copy the full SHA
    9bc008a View commit details
    Browse the repository at this point in the history
  7. bug fixes

    Ruihan-Yin committed Aug 28, 2024
    Configuration menu
    Copy the full SHA
    44163d7 View commit details
    Browse the repository at this point in the history

Commits on Aug 29, 2024

  1. Bug fix

    Ruihan-Yin committed Aug 29, 2024
    Configuration menu
    Copy the full SHA
    600abd0 View commit details
    Browse the repository at this point in the history
  2. bug fix

    Ruihan-Yin committed Aug 29, 2024
    Configuration menu
    Copy the full SHA
    81b47c6 View commit details
    Browse the repository at this point in the history

Commits on Sep 3, 2024

  1. resolve commnets.

    Ruihan-Yin committed Sep 3, 2024
    Configuration menu
    Copy the full SHA
    d516feb View commit details
    Browse the repository at this point in the history

Commits on Oct 23, 2024

  1. Configuration menu
    Copy the full SHA
    42f1729 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e8f2b2d View commit details
    Browse the repository at this point in the history

Commits on Oct 24, 2024

  1. Configuration menu
    Copy the full SHA
    640c474 View commit details
    Browse the repository at this point in the history

Commits on Nov 4, 2024

  1. Configuration menu
    Copy the full SHA
    d90bf49 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    79b23c8 View commit details
    Browse the repository at this point in the history

Commits on Nov 8, 2024

  1. resolve comments

    Ruihan-Yin committed Nov 8, 2024
    Configuration menu
    Copy the full SHA
    8e1ba4a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ea8949f View commit details
    Browse the repository at this point in the history

Commits on Nov 12, 2024

  1. resolve comments.

    Ruihan-Yin committed Nov 12, 2024
    Configuration menu
    Copy the full SHA
    597e797 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8feeac9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    af9c002 View commit details
    Browse the repository at this point in the history

Commits on Nov 13, 2024

  1. enable movsxd

    Ruihan-Yin committed Nov 13, 2024
    Configuration menu
    Copy the full SHA
    b174e27 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    117c401 View commit details
    Browse the repository at this point in the history

Commits on Nov 14, 2024

  1. Enable "Call"

    Ruihan-Yin committed Nov 14, 2024
    Configuration menu
    Copy the full SHA
    6b3e8c0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8cc7e8e View commit details
    Browse the repository at this point in the history

Commits on Nov 15, 2024

  1. Enable "JMP"

    Ruihan-Yin committed Nov 15, 2024
    Configuration menu
    Copy the full SHA
    b4868a0 View commit details
    Browse the repository at this point in the history

Commits on Nov 18, 2024

  1. Configuration menu
    Copy the full SHA
    c77bdd9 View commit details
    Browse the repository at this point in the history
  2. resolve merge errors

    Ruihan-Yin committed Nov 18, 2024
    Configuration menu
    Copy the full SHA
    51e95b3 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    03ea122 View commit details
    Browse the repository at this point in the history
  4. formatting

    Ruihan-Yin committed Nov 18, 2024
    Configuration menu
    Copy the full SHA
    641681a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f8e720a View commit details
    Browse the repository at this point in the history

Commits on Nov 19, 2024

  1. bug fix

    Ruihan-Yin committed Nov 19, 2024
    Configuration menu
    Copy the full SHA
    866253d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ae5e3ab View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b739ebe View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    bd1784d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    703e9ac View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    662de71 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    acd912c View commit details
    Browse the repository at this point in the history
  8. Fix formatting

    DeepakRajendrakumaran committed Nov 19, 2024
    Configuration menu
    Copy the full SHA
    d50aa94 View commit details
    Browse the repository at this point in the history

Commits on Nov 20, 2024

  1. Fixing type.

    DeepakRajendrakumaran committed Nov 20, 2024
    Configuration menu
    Copy the full SHA
    6bbccb4 View commit details
    Browse the repository at this point in the history