Bug 158349

Summary: ARMv7 vstm and vldm instructions can only operate on a maximum of 16 registers.
Product: WebKit Reporter: Mark Lam <mark.lam>
Component: JavaScriptCoreAssignee: Mark Lam <mark.lam>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, keith_miller, msaboff, saam
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
proposed patch. fpizlo: review+

Mark Lam
Reported 2016-06-03 11:02:17 PDT
According to the ARM Assembler Reference, the vstm and vldm instructions can only operate on a maximum of 16 registers. See http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dht0002a/ch01s03s02.html and http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dht0002a/ch01s03s02.html. The ARMv7 probe code was wrongly using these instructions to store and load all 32 'd' registers.
Attachments
proposed patch. (2.15 KB, patch)
2016-06-03 11:35 PDT, Mark Lam
fpizlo: review+
Mark Lam
Comment 1 2016-06-03 11:35:36 PDT
Created attachment 280448 [details] proposed patch.
Mark Lam
Comment 2 2016-06-03 11:41:28 PDT
Thanks for the review. Landed in r201651: <http://trac.webkit.org/r201651>.
Note You need to log in before you can comment on or make changes to this bug.