Skip to content

Commit 69062fd

Browse files
clamp03am11jkotas
authored
Update Architecture to unknown machine (#101038)
* Update Architecture to unknown machine * Update src/tools/illink/src/linker/Linker.Steps/OutputStep.cs Suggested by @am11. Thank you. Co-authored-by: Adeel Mujahid <[email protected]> --------- Co-authored-by: Adeel Mujahid <[email protected]> Co-authored-by: Jan Kotas <[email protected]>
1 parent 64a937c commit 69062fd

File tree

1 file changed

+1
-31
lines changed

1 file changed

+1
-31
lines changed

src/tools/illink/src/linker/Linker.Steps/OutputStep.cs

Lines changed: 1 addition & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -42,43 +42,13 @@ namespace Mono.Linker.Steps
4242

4343
public class OutputStep : BaseStep
4444
{
45-
private Dictionary<ushort, TargetArchitecture>? architectureMap;
46-
47-
private enum NativeOSOverride
48-
{
49-
Apple = 0x4644,
50-
FreeBSD = 0xadc4,
51-
Linux = 0x7b79,
52-
NetBSD = 0x1993,
53-
Default = 0
54-
}
55-
5645
readonly List<string> assembliesWritten;
5746

5847
public OutputStep ()
5948
{
6049
assembliesWritten = new List<string> ();
6150
}
6251

63-
TargetArchitecture CalculateArchitecture (TargetArchitecture readyToRunArch)
64-
{
65-
if (architectureMap == null) {
66-
architectureMap = new Dictionary<ushort, TargetArchitecture> ();
67-
foreach (var os in Enum.GetValues (typeof (NativeOSOverride))) {
68-
ushort osVal = (ushort) (NativeOSOverride) os;
69-
foreach (var arch in Enum.GetValues (typeof (TargetArchitecture))) {
70-
ushort archVal = (ushort) (TargetArchitecture) arch;
71-
architectureMap.Add ((ushort) (archVal ^ osVal), (TargetArchitecture) arch);
72-
}
73-
}
74-
}
75-
76-
if (architectureMap.TryGetValue ((ushort) readyToRunArch, out TargetArchitecture pureILArch)) {
77-
return pureILArch;
78-
}
79-
throw new BadImageFormatException ("unrecognized module attributes");
80-
}
81-
8252
protected override bool ConditionToProcess ()
8353
{
8454
return Context.ErrorsCount == 0;
@@ -125,7 +95,7 @@ protected virtual void WriteAssembly (AssemblyDefinition assembly, string direct
12595
if (module.IsCrossgened ()) {
12696
module.Attributes |= ModuleAttributes.ILOnly;
12797
module.Attributes ^= ModuleAttributes.ILLibrary;
128-
module.Architecture = CalculateArchitecture (module.Architecture);
98+
module.Architecture = TargetArchitecture.I386; // I386+ILOnly which ultimately translates to AnyCPU
12999
}
130100
}
131101

0 commit comments

Comments
 (0)