Bug 88044

Summary: [Platform][Decimal] UInt128::operator/= calls makeUInt128 with wrong argument order.
Product: WebKit Reporter: yosin
Component: FormsAssignee: yosin
Status: RESOLVED FIXED    
Severity: Normal CC: tkent, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 80009    
Attachments:
Description Flags
Patch 1 none

Description yosin 2012-05-31 21:35:09 PDT
There is code cleanup failure:

UInt128& UInt128::operator /=(const uint32_t divisor)
{
...
ORIGINAL: const uint64_t work = (uint64_t(remainder) << 32) | dividend[i];
CLEANUP: const uint64_t work = makeUInt64(remainder, dividend[i]);

However, signature of makeUInt64 is
static uint64_t makeUInt64(uint32_t low, uint32_t high)
Comment 1 yosin 2012-05-31 21:52:59 PDT
This bug affects only multiplication.
Comment 2 yosin 2012-06-01 00:18:57 PDT
Created attachment 145223 [details]
Patch 1
Comment 3 yosin 2012-06-01 00:20:07 PDT
Comment on attachment 145223 [details]
Patch 1

I made mistake for rewriting to makeUInt128.

Could you review this patch?
Thanks in advance.
Comment 4 Kent Tamura 2012-06-01 00:24:05 PDT
Comment on attachment 145223 [details]
Patch 1

ok
Comment 5 WebKit Review Bot 2012-06-01 02:41:00 PDT
Comment on attachment 145223 [details]
Patch 1

Clearing flags on attachment: 145223

Committed r119205: <http://trac.webkit.org/changeset/119205>
Comment 6 WebKit Review Bot 2012-06-01 02:41:14 PDT
All reviewed patches have been landed.  Closing bug.