Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
d865766
[marshal methods] Move marshal method classification and rewriting to…
sbomer Apr 3, 2026
096e4ae
[marshal methods] Consolidate .ll generation into the inner build
sbomer Apr 3, 2026
e92f56e
[marshal methods] Write rewritten assemblies to separate output direc…
sbomer Apr 9, 2026
8857691
[marshal methods] Skip NativeAOT builds and fix PDB output items
sbomer Apr 13, 2026
853fdaf
Fix resource leak and missing lookup info in RewriteMarshalMethods
sbomer Apr 14, 2026
5c4ad1f
Generate ApplicationRegistration.java in inner build when marshal met…
sbomer Apr 14, 2026
28ebcaf
Retry CI
sbomer Apr 15, 2026
5f0e4cb
Merge branch 'main' into dev/sbomer/rewrite-marshal-methods-v2
sbomer Apr 16, 2026
5a116d4
Fix test failures for per-RID marshal method rewriting
sbomer Apr 16, 2026
2dd29df
Merge branch 'main' into dev/sbomer/rewrite-marshal-methods-v2
sbomer Apr 22, 2026
55ba3a2
Merge branch 'main' into dev/sbomer/rewrite-marshal-methods-v2
sbomer Apr 27, 2026
b2d1bde
Remove marshal method classification from outer build
sbomer Apr 27, 2026
3f278de
Move _RewriteMarshalMethodsInner to Common.targets for all typemap paths
sbomer Apr 28, 2026
be65be9
Merge remote-tracking branch 'origin/main' into marshal-methods-v2
sbomer Apr 29, 2026
469456f
Remove test scripts and pr-message from tracked files
sbomer Apr 29, 2026
e5d6f9b
Merge remote-tracking branch 'origin/main' into marshal-methods-v2
sbomer May 7, 2026
b54a50f
Merge remote-tracking branch 'origin/main' into marshal-methods-v2
sbomer May 12, 2026
087190e
Merge remote-tracking branch 'origin/main' into marshal-methods-v2
sbomer May 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Remove marshal method classification from outer build
Classification is now done entirely in the inner build's
RewriteMarshalMethods task. The outer build's FindJavaObjectsStep
no longer creates a MarshalMethodsClassifier, which was producing
spurious warnings when scanning already-rewritten assemblies
(byte/bool mismatch in _mm_wrapper methods, missing connectors).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
  • Loading branch information
sbomer and Copilot committed Apr 27, 2026
commit b2d1bde380d04e333156d0e038567fa0eac04d18
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,6 @@ public class FindJavaObjectsStep : BaseStep, IAssemblyModifierPipelineStep

public bool ErrorOnCustomJavaObject { get; set; }

public bool UseMarshalMethods { get; set; }

public TaskLoggingHelper Log { get; set; }

public FindJavaObjectsStep (TaskLoggingHelper log) => Log = log;
Expand Down Expand Up @@ -114,11 +112,6 @@ List<CallableWrapperType> ConvertToCallableWrappers (List<TypeDefinition> types)
DefaultMonoRuntimeInitialization = "mono.MonoPackageManager.LoadApplication (context);",
};

if (UseMarshalMethods) {
var classifier = new MarshalMethodsClassifier (Context, Context.Resolver, Log);
reader_options.MethodClassifier = new MarshalMethodsCollection (classifier);
}

foreach (var type in types) {
var wrapper = CecilImporter.CreateType (type, Context, reader_options);
wrappers.Add (wrapper);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,6 @@ protected virtual void BuildPipeline (AssemblyPipeline pipeline, MSBuildLinkCont
var findJavaObjectsStep = new FindJavaObjectsStep (Log) {
ApplicationJavaClass = ApplicationJavaClass,
ErrorOnCustomJavaObject = ErrorOnCustomJavaObject,
UseMarshalMethods = EnableMarshalMethods,
};

findJavaObjectsStep.Initialize (context);
Expand Down