The CLR does inline, but it has restrictions that you're probably hitting. But it doesn't do processor specific opts. That does suck.
Then there are the kind of performance guided global optimizations that you could do with a language like C#, using data-driven compilers, or manual-driven attributes.
The CLR does have a profile based optimization system, but according to this article, it is internal-only. http://msdn.microsoft.com/en-us/magazine/dd569747.aspx Oh well.