Displaying 2 results from an estimated 2 matches for "twoaddressinctructionpass".
2011 May 09
0
[LLVMdev] wide memory accesses
...alue ?? Any ideas?
If you are doing this before the register allocator passes, you must make sure that the code preserves SSA form. That can be difficult to do when dealing with sub-registers. Other targets just emit EXTRACT_SUBREG / INSERT_SUBREG and let the coalescer deal with it.
It looks like TwoAddressInctructionPass is not ready to deal with subreg indexes either, it is creating wrong code in your example.
I recommend:
> 2. Insert COPY's, but these would not get coalesced away, so instead of saving instructions I ended up with one load and two moves...:-( How could I get the wide load to simply be use...
2011 May 09
2
[LLVMdev] wide memory accesses
Hi,
I am trying to take 16 bit memory reads and combine them to a single 32 bit read. I am having trouble to make the code simply read 32 bytes and the use the subregisters accordingly, without unnecessary copying.
I have tried two techniques, in the MachineFunction:
1. replace the MachineOperands in the users of the data with the new register/subregister index. This yields an assert failure