History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: RVM-169
Type: New Feature New Feature
Status: Open Open
Priority: Major Major
Assignee: Ian Rogers
Reporter: Ian Rogers
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
RVM

Initial X86 64 support

Created: 31/Jul/07 05:10 PM   Updated: 11/Apr/08 09:24 AM
Component/s: Compiler: Baseline, Instruction Architecture: Intel
Affects Version/s: None
Fix Version/s: 1000

Time Tracking:
Original Estimate: 1 day
Original Estimate - 1 day
Remaining Estimate: 1 day
Remaining Estimate - 1 day
Time Spent: Not Specified
Remaining Estimate - 1 day


 Description  « Hide
We have a tar ball in the research archive:
http://sourceforge.net/tracker/index.php?func=detail&aid=1590217&group_id=128805&atid=723235
which would add baseline compiler support for the Jikes RVM on x86 64. The patch is quite straight forward. Firstly it extends the assembler to generate the REX prefix byte. The REX prefix occupies 16opcode locations that on IA32 encode the now deprecated inc and dec a register single byte opcodes. The prefix uses 1bit as a possible size override, and then either 2bits to either extend the source and destination register to be one of 16registers, or 3 bits to extend the base, index and source/destination register. The changes to the baseline compiler are minor in the patch. Importantly it doesn't modify the behaviour of dup and other bytecodes that assume an object reference will fit into a single stack slot. Therefore the patch is only safe if all references are in the bottom 4GB of memory, but this should be straightforward to enforce until we can handle dup and similar bytecodes properly by redesigning the baseline compiler.

I'd like to merge this work as a step toward getting x86 64 support going. We need contribution statements from Frederik De Schrijver (the University of Ghent), Arun Thomas and Dan Williams (the University of Virginia).



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
There are no comments yet on this issue.