You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are multiple bugs in ObjWriter emission of COMDAT sections:
For COFF there's always one .debug$S section which is incorrect. For methods emitted in COMDAT sections there should a new associated COMDAT .debug$S section for each (eg. EmitCVDebugFunctionInfo should have similar section handling code to EmitWinFrameInfo).
For COFF the xdata section with UNWIND_INFO structures is not emitted as associated COMDAT. This mostly works due to unique symbol prefixes but it's not ideal.
For ELF incorrect relocation types are produced between sections (RELPTR32 is not expressed as PLT relocation). This results in error in ObjWriter if one tries to use ILCompiler with --multifile switch.
For MachO the support is completely missing. It can likely be implemented with the S_COALESCE feature which serves the same purpose.
There are multiple bugs in ObjWriter emission of COMDAT sections:
.debug$Ssection which is incorrect. For methods emitted in COMDAT sections there should a new associated COMDAT.debug$Ssection for each (eg.EmitCVDebugFunctionInfoshould have similar section handling code toEmitWinFrameInfo).xdatasection withUNWIND_INFOstructures is not emitted as associated COMDAT. This mostly works due to unique symbol prefixes but it's not ideal.RELPTR32is not expressed as PLT relocation). This results in error in ObjWriter if one tries to use ILCompiler with--multifileswitch.S_COALESCEfeature which serves the same purpose.