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

Local heap optimizations on Arm64 #64481

Merged
merged 5 commits into from
Feb 8, 2022

Commits on Jan 28, 2022

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

Commits on Jan 29, 2022

  1. Couple small optimizations for genLclHeap:

    1. When not required to zero the allocated space for local heap (for sizes up to 64 bytes) do not zero.
    
    2. For sizes less than one PAGE_SIZE and when the size is an encodable offset
       use ldp tmpReg, xzr, [sp], #-amount that does probing at [sp] and allocates the space at the same time.
    
    3. Allow non-loop zeroing (i.e. unrolled sequence) for sizes up to 128 bytes (i.e. up to LCLHEAP_UNROLL_LIMIT)
    
    4. Do such zeroing in ascending order of effective address.
    echesakov committed Jan 29, 2022
    Configuration menu
    Copy the full SHA
    b4ce794 View commit details
    Browse the repository at this point in the history

Commits on Feb 6, 2022

  1. Implement optimization for lclHeap sizes that fit into ldr (immediate…

    …) post-index range and fix an error in src/coreclr/jit/codegenarm64.cpp
    echesakov committed Feb 6, 2022
    Configuration menu
    Copy the full SHA
    36e1fe5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c84bcfb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6be9207 View commit details
    Browse the repository at this point in the history