Bugzilla – Bug 315989
[PATCH] ldelema <ref> buggy with AOT
Last modified: 2007-09-15 21:24:46 UTC
---- Reported by miguel@ximian.com 2004-09-09 18:25:04 MST ---- Ahead-of-Time compiling mcs.exe will produce an mcs that crashes: (tried both with -O=all and without it): mono$ mono --aot mcs.exe Mono Ahead of Time compiler - compiling assembly /cvs/mcs/mcs/mcs.exe Executing the native assembler: as /tmp/mono_aot_jXFh5p -o /tmp/mono_aot_jXFh5p.o Executing the native linker: ld -shared -o /cvs/mcs/mcs/mcs.exe.so /tmp/mono_aot_jXFh5p.o Compiled 2283 out of 2509 methods (90%) 0 methods contain absolute addresses (0%) 226 methods contain wrapper references (9%) 0 methods contain lmf pointers (0%) 0 methods have other problems (0%) AOT RESULT 0 mono$ time mono mcs.exe -d:NET_1_1 -d:ONLY_1_1 /target:exe /out:mcs2.exe cs-parser.cs @mcs.exe.sources UNHANDLED IN 416e8b30 Unhandled Exception: System.ArrayTypeMismatchException: Source array type cannot be assigned to destination array type. in <0x001f5> Mono.CSharp.Invocation:OverloadResolve (Mono.CSharp.EmitContext,Mono.CSharp.MethodGroupExpr,System.Collections.ArrayList,bool,Mono.CSharp.Location) in <0x00ceb> Mono.CSharp.Attribute:Resolve (Mono.CSharp.EmitContext) in <0x0003f> Mono.CSharp.Attribute:Emit (Mono.CSharp.EmitContext,Mono.CSharp.Attributable,System.Collections.Specialized.ListDictionary)in <0x000c9> Mono.CSharp.Attributes:Emit (Mono.CSharp.EmitContext,Mono.CSharp.Attributable) in <0x00078> Mono.CSharp.CommonAssemblyModulClass:Emit (Mono.CSharp.TypeContainer) in <0x00248> Mono.CSharp.RootContext:EmitCode () in <0x00cfd> Mono.CSharp.Driver:MainDriver (string[]) in <0x0000f> Mono.CSharp.Driver:Main (string[]) ---- Additional Comments From bmaurer@users.sf.net 2004-09-09 22:39:33 MST ---- Simpler: class A { static void Main () { string [] x = new string [5]; X (ref x [0]); } static void X (ref string x) {} } [benm@Ben benm]$ mcs t.cs Compilation succeeded [benm@Ben benm]$ mono t.exe [benm@Ben benm]$ mono --aot t.exe Mono Ahead of Time compiler - compiling assembly /home/benm/t.exe Executing the native assembler: as /tmp/mono_aot_pNcFlA -o /tmp/mono_aot_pNcFlA. o Executing the native linker: ld -shared -o /home/benm/t.exe.so /tmp/mono_aot_pNc FlA.o Compiled 3 out of 3 methods (100%) 0 methods contain absolute addresses (0%) 0 methods contain wrapper references (0%) 0 methods contain lmf pointers (0%) 0 methods have other problems (0%) AOT RESULT 0 [benm@Ben benm]$ mono t.exe Unhandled Exception: System.ArrayTypeMismatchException: Source array type cannot be assigned to destination array type. in <0x0002d> A:Main () ---- Additional Comments From bmaurer@users.sf.net 2004-09-09 23:09:26 MST ---- Created an attachment (id=166752) patch ---- Additional Comments From bmaurer@users.sf.net 2004-09-09 23:09:58 MST ---- Just needs some aot friendlyfication ---- Additional Comments From vargaz@freemail.hu 2004-09-10 10:22:04 MST ---- The inssel.brg part of the patch is ok to check in. ---- Additional Comments From bmaurer@users.sf.net 2004-09-10 12:41:14 MST ---- oops, sorry about that. will check in the right part, when i get home ;-). ---- Additional Comments From bmaurer@users.sf.net 2004-09-11 11:30:49 MST ---- fixed in both branches Imported an attachment (id=166752) Unknown operating system unknown. Setting to default OS "Other".