[llvm-commits] [PATCH] Execution domain support for VMOV and VLDR

Jakob Stoklund Olesen stoklund at 2pi.dk
Tue Aug 28 10:27:48 PDT 2012


On Aug 28, 2012, at 9:56 AM, Anton Korobeynikov <anton at korobeynikov.info> wrote:

>>> It should be generic enough to avoid the fragility Anton's worried
>>> about, and it would leave ExeDeps unaltered.
>> I am not sure what Anton was referring to, but I don't think stripping an existing instruction of its operands is any more or less fragile than building a new one.
> Well, I was worried about manual add-remove operands code for every
> new instruction we handle. In the ideal world we'd need just to say
> "change instruction A to instruction B" and everything else will be
> automatic. Surely it's not possible in all cased, however Thumb2 size
> reduction pass might be some motivating example.

Yes, we should exploit redundancy as much as possible. Some of the transformations are quite subtle, though. Like changing an S-register to a lane in a D-register, and getting the <undef> flags right.

If it's possible to classify the transformations, a table would be a good idea. If each transformation class only has one instance, it's not a big help, of course.

/jakob




More information about the llvm-commits mailing list