Allow mutable-for-identity-only types to be inlined into IR (#54034)
This extends the value-inability predicate to allow mutable structs that
do not have any mutable fields. The motivating example for this is
ScopedValue, which is mutable only for identity. By allowing it in this
predicate, more of the ScopedValue support code becomes concrete-eval
eligible, rather than attempting to constprop for every single
ScopedValue, saving compilation time.
---------
Co-authored-by: Shuhei Kadowaki <aviatesk@gmail.com>