Support !JitDoOldStructRetyping on other platforms. (#35943)
* Add more test cases. * Initialize `ReturnTypeDesc` when we keep struct types. * Add a few const modifiers. * Additional checks in `LowerRet` * Support `return double(cnst int)`. * Optimize `LowerRetStruct`: no need for bitcast when read from memory. * Prepare `LowerNode` for store local and local field to multireg. * Compile the new methods with FEATURE_MULTIREG_RET. * Improve `LowerRetStructLclVar`. Don't use bitcast if the source is in memory or has the same type. * Extract `LowerStoreLocCommon`. * Support 3, 5. 6, 7 bytes structs in `LowerCallStruct`. Move call handling to the users. * Disable `JitDoOldStructRetyping` for x86 and x64. Windows x64 was supported in a previous PR, this adds x86 (Windows and Linux) and x64 Unix. * Fix suggestions. * Disable by default for the merge.
Showing
想要评论请 注册 或 登录