Skip to content

Commit 56f8c76

Browse files
committed
Merge pull request microsoft#224 from BruceForstall/UpdateRyuJITInstructions
Update RyuJIT CTP information
2 parents 68f1d71 + 1a839bf commit 56f8c76

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

docs/testing-with-ryujit.md

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,28 @@ Note that when you run your application under the Visual Studio debugger, it mig
203203
.NET Framework 4.6 and RyuJIT CTP releases
204204
==========================================
205205

206-
Before .NET Framework 4.6 was released with RyuJIT as the default .NET JIT for the x64 architecture, RyuJIT was shipped several times as a CTP ("Community Technology Preview") release. If you previously installed a RyuJIT CTP, you must remove any manually created configuration related to using the RyuJIT CTP, before upgrading to .NET Framework 4.6. You can read more details [here](https://support.microsoft.com/en-us/kb/3065367).
206+
Before .NET Framework 4.6 was released with RyuJIT as the default .NET JIT for the x64 architecture, RyuJIT was shipped several times as a CTP ("Community Technology Preview") release. For example, see the RyuJIT CTP5 release announcement [here](http://blogs.msdn.com/b/clrcodegeneration/archive/2014/10/31/ryujit-ctp5-getting-closer-to-shipping-and-with-better-simd-support.aspx).
207+
208+
If you previously installed a RyuJIT CTP, you must remove any manually created configuration related to using the RyuJIT CTP, before upgrading to .NET Framework 4.6. If you don't, all managed applications will immediately crash on startup.
209+
210+
To fix this issue, delete the following registry value (if it exists):
211+
212+
key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
213+
value name: AltJit
214+
215+
You can do this with Registry Editor (regedit.exe) or the command-line REG.EXE tool, as follows:
216+
217+
reg delete HKLM\SOFTWARE\Microsoft\.NETFramework /v AltJit
218+
219+
Secondly, ensure that the following environment variable is not set:
220+
221+
COMPLUS_AltJit
222+
223+
## More information
224+
225+
In order to enable the JIT shipped with a RyuJIT CTP, you had to manually create the registry value or set the environment variable that is indicated above. If this registry value or environment variable exists after you install .NET Framework 4.6, the system looks for a CTP version of the JIT compiler instead of the newly installed version. Because the RyuJIT CTP releases are incompatible with .NET Framework 4.6, this causes managed applications to crash.
226+
227+
Note that the .NET Framework 4.6 installer does not change or delete these manually created configuration settings. Similarly, uninstalling the RyuJIT CTP also does not change these configuration settings.
207228

208229
Additional Notes
209230
================

0 commit comments

Comments
 (0)