[Mono-bugs] [Bug 703317] New: class initialization problems with AOT

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Thu Jun 30 16:28:21 EDT 2011


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 at lists.ximian.com
        ReportedBy: vargaz at gmail.com
         QAContact: mono-bugs at 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.


More information about the mono-bugs mailing list