https://bugzilla.novell.com/show_bug.cgi?id=703317

https://bugzilla.novell.com/show_bug.cgi?id=703317#c0


           Summary: class initialization problems with AOT
    Classification: Mono
           Product: Mono: Runtime
           Version: SVN
          Platform: x86-64
        OS/Version: Linux
            Status: NEW
          Severity: Normal
          Priority: P5 - None
         Component: JIT
        AssignedTo: mono-bugs@lists.ximian.com
        ReportedBy: var...@gmail.com
         QAContact: mono-bugs@lists.ximian.com
          Found By: ---
           Blocker: ---


The  test_0_multiple_cctor_calls_regress_679467 () testcase in objects.cs
exposes some problems with class initialization in AOT, we pass run_cctors=TRUE
to 
mono_resolve_patch_target () from aot-runtime.c, causing some cctors to run too
early. Simply passing FALSE doesn't work since 
mini_field_access_needs_cctor_run () returns FALSE for classes with the
beforefieldinit flag set. Changing that to do:

    if (vtable->klass->flags & TYPE_ATTRIBUTE_BEFORE_FIELD_INIT &&
!cfg->compile_aot)
        return FALSE;

works, but leads to huge code growth in AOT images (+30k on mscorlib).

-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
_______________________________________________
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs

Reply via email to