If the C/C++ code doesn’t use these instructions explicitly, then it really is just a compiler flag (e.g. -msse2). The compiler generates actual CPU instructions from the high-level code - that’s kind of the whole point behind a compiler.
Even if the code makes use of SSE instructions explicitly (which is usually needed for best performance), it’s common to provide a fallback and segregate that code out using preprocessor directives (#ifdef).
Either cases are going to be configured by the build system (CMAKE).
Now that I think of it, somebody on these forums has been able to compile both Blender and Cycles successfully for a Raspberry PI (ARM architecture) which obviously doesn’t have SSE (though it has similar thing called NEON). I’d guess it must be possible to compile without SSE just by changing the build config.
My personal situation leading me to run Blender on ancient hardware is a preference option, I personally enjoy using older systems and the idea of having a workstation from the 90’s and using it natively over 20 years later is such a neat idea for me.
That’s a fairly odd hobby to have. However, if you’re really going down that rabbit hole, maybe you could become a maintainer for legacy systems, which I’d assume are still in use in some parts of the world.
I can gather that the 2.6x version of Blender would run fantastic on the Pentium iii family, and likewise on the Pentium ii and 1.
I wouldn’t necessarily push it that far. You’ll likely run out of memory, at which point nothing will run.
The fastest Pentium ii’s probably showing identical performance to the slowest Willamette Pentium 4’s or Willamette Celerons. Though this is just my speculation, since I’m in belief that Blender 2.6x+ versions were designed specifically around SSE2 instructions, though I could be wrong and like you said it could simply be a compiler flag which would be a life saver.
I doubt Blender uses SSE explicitly in many places. SSE/SIMD code is a pain to write and to maintain. It’s definitely not “designed around SSE2”.
Though the question comes up if I should simply make my own in house development software both for my game and as an animation software, but that’s a much, much bigger and more time consuming goal then just simply porting Blender to more basic instruction sets.
I’d say that would be much more pleasant and rewarding.
Going forward, Blender will raise the requirements even further, especially in the GPU area. Having said that, I’m sure a legacy maintainer (really any sort of maintainer) would be very welcome to the project.