[release/6.0] Fix crossgen2 calli GC hole by unifying MethodDesc/MethodSignature IsMarshallingRequired logic (#58609)
* Unify MethodDesc/MethodSignature IsMarshallingRequired logic
For unmanaged calli crossgen2 was not properly checking all necessary
conditions for a pinvoke being required. In particular it did not check
for managed byrefs. Unify the MethodDesc/MethodSignature logic to get
all the checks.
Fix #58259
* Add a simple regression test
* Fix test build
Co-authored-by: Jakob Botsch Nielsen <jakob.botsch.nielsen@gmail.com>