aligned32Copy can copy 8 bytes when number of bytes to copy is 0

Description

when BYTES_IN_COPY == 8 then aligned32Copy in org.jikesrvm.runtime.Memory can incorrectly copy 8 bytes (4bytes + 4 bytes) when src is 4 byte aligned. The attached patch adds a series of assertions that verify the assumptions described in the Javadoc and an explicit check for if numBytes == 0

Environment

ia32 with SSE2 enabled

Activity

Show:
Laurence Hellyer
October 12, 2010, 9:09 PM

As noted by Daniel there is a commented out call to aligned32Copy at line 319 in Memory.java, uncommenting this call and removing the rest of this method passes the pre-commit tests but more validation (and probably an entire regression run) is needed.

Daniel Frampton
October 14, 2010, 5:47 AM

Commited fix in r16017.

DaveG
February 9, 2013, 10:50 PM

bulk close of all resolved issues in preparation for 3.1.3 release.

Assignee

Daniel Frampton

Reporter

Laurence Hellyer

Labels

None

Components

Fix versions

Affects versions

Priority

Medium
Configure