C#是否存在和java类似的重排序机制?

最近学习了java的重排序。java有三种重排序,分别是编译器优化重排序,指令集并行重排序,内存系统重排序。就比较好奇C#中有没有类似的重排序。
在研究了C#的volatile关键字后可以确定C#中有内存系统的重排序,和java的JMM非常相似。
volatile - C# 参考 | Microsoft Docs volatile - C# 参考 https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/keywords/volatile
现在一直没有办法确定C#是否存在指令级并行重排序,不知道有没有办法可以确定这一点?