Skip to content
This repository has been archived by the owner on Jan 23, 2023. It is now read-only.

Enable R2R compilation/inlining of PInvoke stubs where no marshalling is required #22560

Merged
merged 10 commits into from Apr 1, 2019

Commits on Apr 1, 2019

  1. These changes enable the inlining of some PInvokes that do not requir…

    …e any marshalling. With inlined pinvokes, R2R performance should become slightly better, since we'll avoid jitting some of the pinvoke IL stubs that we jit today for S.P.CoreLib. Performance gains not yet measured.
    
    Added JIT_PInvokeBegin/End helpers for all architectures. Linux stubs not yet implemented
    Add INLINE_GETTHREAD for arm/arm64
    Set CORJIT_FLAG_USE_PINVOKE_HELPERS jit flag for ReadyToRun compilations
    fadimounir committed Apr 1, 2019
    Copy the full SHA
    c826ed5 View commit details
    Browse the repository at this point in the history
  2. Optimize performance of common path for JIT pinvoke helpers.

    Increase size reserve for InlineCallFrame
    fadimounir committed Apr 1, 2019
    Copy the full SHA
    5cceac9 View commit details
    Browse the repository at this point in the history
  3. Using existing JIT_RareDisableHelper helper for the rare path.

    Small adjustment to the arm/arm64 INLINE_GET_THREAD macros
    fadimounir committed Apr 1, 2019
    Copy the full SHA
    bc8b5a2 View commit details
    Browse the repository at this point in the history
  4. Remove unnecessary helper

    fadimounir committed Apr 1, 2019
    Copy the full SHA
    2600f37 View commit details
    Browse the repository at this point in the history
  5. Rename macro

    fadimounir committed Apr 1, 2019
    Copy the full SHA
    48856d8 View commit details
    Browse the repository at this point in the history
  6. Updating R2RDump tool to handle pinvokes

    fadimounir committed Apr 1, 2019
    Copy the full SHA
    98b953b View commit details
    Browse the repository at this point in the history
  7. Fixing value of R2R fixup type

    fadimounir committed Apr 1, 2019
    Copy the full SHA
    9e19cd1 View commit details
    Browse the repository at this point in the history
  8. Copy the full SHA
    0eaa871 View commit details
    Browse the repository at this point in the history
  9. Simplify PInvokeEnd asm stubs

    fadimounir committed Apr 1, 2019
    Copy the full SHA
    cea86af View commit details
    Browse the repository at this point in the history
  10. Remove unnecessary null assignment.

    fadimounir committed Apr 1, 2019
    Copy the full SHA
    b62dcbe View commit details
    Browse the repository at this point in the history