Ryujit will will support SSE instructions, however Ryujit is only for 64bit.
Most of customer stick to Windows 32 bit OS because of company policy and budget (due to testing cost).
My understanding is Ryujit is new "JIT scheme optimized for 64bit".
However, as you know, SSE instructions set exits on 32 bit and 64 bit.
Mono.Simd works x86 or Arm 32 bit processor.
(Java SIMD call seems to work on x86 and 64bit).
Our project is for any CPU, so it is very difficult for me to tell customer that "Please use Mono, because they have SSE support, or change CPU and OS."
Why MS .NET Framework for x86 does not provide with SSE command support while Ryujit can?
(I am not CPU specialist, but I hope if .NET have an options to choose "force SSE on this command(if possible)")
By thinking about it, for me the reason are:
A) Ryujit is a new JIT compiler, built from scratch, so it can do new and wonderful things. They probably restricted it to 64 bits to make it easier to build it, and because the "current" JIT on 64 bits sometimes was slower than the 32 bits version, so it was "more necessary" on 64 bits
B) Being new and shiny, it is easier to include new functions/extension points (SIMD functions for example)
C) Microsoft doesn't seem want to thinker too with the "old" .NET compiler (I don't consider what they did in .NET 4.5, where they moved some work to a background thread, to be "thinker too much"). If you look closely, you'll see they haven't ever added new OpCodes to the CIL (Common Intermediate Language), the assembly language of .NET (they did changes to the GC and to the .NET libraries, but these are different "things"), and clearly to add SIMD functions they would need to do changes
D) The Mono JIT is "newer" than the .NET JIT "current" compiler (because Mono was "born" later). This can justify why it does support SIMD.