Bug 115397

Summary: [ARM] REGRESSION(r149349): It broke Octane/Crypto
Product: WebKit Reporter: Cosmin Truta <ctruta>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WONTFIX    
Severity: Major CC: benjamin, commit-queue, fpizlo
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Other   
OS: Other   
Attachments:
Description Flags
Patch
none
Patch fpizlo: review-, fpizlo: commit-queue-

Cosmin Truta
Reported 2013-04-30 00:42:27 PDT
While preparing my previous patch, I concentrated on running the tests with the software-emulated IDIV enabled. Otherwise, I only run SunSpider and not many other tests, and relied on previous test runs from previous/interim good patches. So after giving it yet another look, I realized that, by using GPRResult in the hardware modulo operation, things broke (although I can't really explain to myself why...) A fix will follow.
Attachments
Patch (1.26 KB, patch)
2013-04-30 00:52 PDT, Cosmin Truta
no flags
Patch (1.26 KB, patch)
2013-04-30 00:57 PDT, Cosmin Truta
fpizlo: review-
fpizlo: commit-queue-
Cosmin Truta
Comment 1 2013-04-30 00:52:56 PDT
Cosmin Truta
Comment 2 2013-04-30 00:55:54 PDT
It broke Octane/Crypto, not Octane/Splay (sorry, it's almost 4am EDT).
Cosmin Truta
Comment 3 2013-04-30 00:57:59 PDT
Created attachment 200089 [details] Patch Updating bug title in the ChangeLog.
Filip Pizlo
Comment 4 2013-04-30 12:52:15 PDT
Comment on attachment 200089 [details] Patch Yeah, I think this is still wrong. GPRResult is for forcing the return register to be live across a call to flushRegisters(), when you're making an unconditional call that clobbers all registers. It looks like you're doing an unconditional register-clobbering call if !supportsIntegerDiv(). So, this will still break things. I think you need to use GPRResult if !supportsIntegerDiv() and GPRTemporary otherwise.
Cosmin Truta
Comment 5 2013-04-30 13:47:13 PDT
Closing bug as RESOLVED WONTFIX. Bug 115138 is now reopened, and the full fix will be in there instead.
Note You need to log in before you can comment on or make changes to this bug.