diff options
author | Michal Strehovský <MichalStrehovsky@users.noreply.github.com> | 2017-07-01 05:10:29 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-01 05:10:29 +0300 |
commit | 3353bafd4814af88b67b438e8850aaa6e042b4d2 (patch) | |
tree | 67d934834bef130f938653f829184cf6e445f47f /Documentation | |
parent | db7a7cb1c8acfb9c29a3e1e3400ac5394efefefb (diff) |
Add a doc on updating the RyuJIT package (#4048)
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/engineering/updating-ryujit.md | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Documentation/engineering/updating-ryujit.md b/Documentation/engineering/updating-ryujit.md new file mode 100644 index 000000000..67664b049 --- /dev/null +++ b/Documentation/engineering/updating-ryujit.md @@ -0,0 +1,12 @@ +# Updating RyuJIT + +Following steps are necessary to pick up a new version of RyuJIT code generation backend from CoreCLR: + +1. From the master branch of the CoreCLR repo, copy header files that are part of the contract with RyuJIT from `src\inc` on the CoreCLR side, to `src\JitInterface\src\ThunkGenerator` on the CoreRT side. +2. Inspect the diffs + 1. If an enum was modified, port the change to the managed version of the enum manually. + 2. If a JitInterface method was added or changed, update `src\JitInterface\src\ThunkGenerator\ThunkInput.txt` and run the generation script next to the file to regenerate `CorInfoBase.cs` and `jitinterface.h`. Update the managed implementation of the method in `CorInfoImpl.cs` manually. + 3. If the JitInterface GUID was updated, update it in `src\Native\jitinterface\jitwrapper.cpp` +3. Go to https://dotnet.myget.org/feed/dotnet-core/package/nuget/Microsoft.NETCore.Jit and find the latest version of the RyuJIT package. Update the version number in dependencies.props at the root of the repo. +4. Rebuild everything and run tests to validate the change. +5. Create a pull request with title "Update RyuJIT". |