Bug 60255 - Wrong exception in emulated opcodes
Summary: Wrong exception in emulated opcodes
Status: RESOLVED FIXED
Alias: None
Product: Runtime
Classification: Mono
Component: JIT (show other bugs)
Version: unspecified
Hardware: PC Mac OS
: --- normal
Target Milestone: ---
Assignee: Bugzilla
URL:
Depends on:
Blocks:
 
Reported: 2017-10-18 14:48 UTC by Marek Safar
Modified: 2017-10-27 03:28 UTC (History)
3 users (show)

See Also:
Tags:
Is this bug a regression?: ---
Last known good build:


Attachments

Description Marek Safar 2017-10-18 14:48:10 UTC
emul_ldiv and emul_lrem throws the wrong overflow exception

32bit machine

csharp> var c = long.MinValue;
csharp> var d = -1L;
csharp> c / d;
System.ArithmeticException: Overflow or underflow in the arithmetic operation.


64bit machine

csharp> var c = long.MinValue;
csharp> var d = -1L;
csharp> c / d;
System.OverflowException: Arithmetic operation resulted in an overflow.


Expected: Same Overflow exception is thrown
Comment 1 Zoltan Varga 2017-10-26 14:20:55 UTC
https://github.com/mono/mono/pull/5874
Comment 2 Zoltan Varga 2017-10-27 03:28:10 UTC
Fixed in mono master eb9238c05e1b5959993be42cb788480f030b3b34.

Note You need to log in before you can comment on or make changes to this bug.