[Mono-bugs] [Bug 705186] New: soft-float decompose causes segfaults under some circumstances
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Tue Jul 12 10:42:44 EDT 2011
https://bugzilla.novell.com/show_bug.cgi?id=705186
https://bugzilla.novell.com/show_bug.cgi?id=705186#c0
Summary: soft-float decompose causes segfaults under some
circumstances
Classification: Mono
Product: Mono: Runtime
Version: 2.10.x
Platform: Other
OS/Version: Linux
Status: NEW
Severity: Normal
Priority: P5 - None
Component: JIT
AssignedTo: mono-bugs at lists.ximian.com
ReportedBy: mirko.wischer at sma.de
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Blocker: ---
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.2.18)
Gecko/20110614 Firefox/3.6.18 ( .NET CLR 3.5.30729; .NET4.0E)
It seems that branch-opts optimizes a branch away so that you can have a
situation like this:
...
fcompare RXX RYY
nop
Now the ARM specific soft-float decompose in mono/mini/decompose.c tries
to replace OP_FCOMPARE + next instruction with some soft-float ARM code.
But the next instruction pointer is null so line 1588 in decompose.c segfaults.
Reproducible: Always
Steps to Reproduce:
1. Compile attached example code
2. Run on x86
3. Run on ARM with soft-float
Actual Results:
Output is like this on ARM:
===========================
This makes the JIT work
Stacktrace:
at foo.bar.Main () <IL 0x00006, 0x0000f>
at (wrapper runtime-invoke) object.runtime_invoke_void
(object,intptr,intptr,intptr) <IL 0x0004c, 0xffffffff>
Aborted
Expected Results:
No stacktrace
--
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