diff --git a/src/libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/BlobBuilder.cs b/src/libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/BlobBuilder.cs index 9804b82cd45c7d..102258b6c61eed 100644 --- a/src/libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/BlobBuilder.cs +++ b/src/libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/BlobBuilder.cs @@ -788,7 +788,7 @@ public void WriteBytes(byte[] buffer, int start, int byteCount) WriteBytes(buffer.AsSpan(start, byteCount)); } - private void WriteBytes(ReadOnlySpan buffer) + internal void WriteBytes(ReadOnlySpan buffer) { if (!IsHead) { diff --git a/src/libraries/System.Reflection.Metadata/src/System/Reflection/PortableExecutable/ManagedTextSection.cs b/src/libraries/System.Reflection.Metadata/src/System/Reflection/PortableExecutable/ManagedTextSection.cs index 1762b12d928ba0..6714a70d428b2d 100644 --- a/src/libraries/System.Reflection.Metadata/src/System/Reflection/PortableExecutable/ManagedTextSection.cs +++ b/src/libraries/System.Reflection.Metadata/src/System/Reflection/PortableExecutable/ManagedTextSection.cs @@ -96,8 +96,8 @@ public ManagedTextSection( public const int ManagedResourcesDataAlignment = 8; - private const string CorEntryPointDll = "mscoree.dll"; - private string CorEntryPointName => (ImageCharacteristics & Characteristics.Dll) != 0 ? "_CorDllMain" : "_CorExeMain"; + private static ReadOnlySpan CorEntryPointDll => "mscoree.dll"u8; + private ReadOnlySpan CorEntryPointName => (ImageCharacteristics & Characteristics.Dll) != 0 ? "_CorDllMain"u8 : "_CorExeMain"u8; private int SizeOfImportAddressTable => RequiresStartupStub ? (Is32Bit ? 2 * sizeof(uint) : 2 * sizeof(ulong)) : 0; @@ -365,11 +365,7 @@ private void WriteImportTable(BlobBuilder builder, int importTableRva, int impor // Hint table builder.WriteUInt16(0); // Hint 54|58 - foreach (char ch in CorEntryPointName) - { - builder.WriteByte((byte)ch); // 65|69 - } - + builder.WriteBytes(CorEntryPointName); // 65|69 builder.WriteByte(0); // 66|70 Debug.Assert(builder.Count - start == SizeOfImportTable); } @@ -378,11 +374,7 @@ private static void WriteNameTable(BlobBuilder builder) { int start = builder.Count; - foreach (char ch in CorEntryPointDll) - { - builder.WriteByte((byte)ch); - } - + builder.WriteBytes(CorEntryPointDll); builder.WriteByte(0); builder.WriteUInt16(0); Debug.Assert(builder.Count - start == SizeOfNameTable);